Re: VM tuning results and a question or two?
John M McIntosh <johnmci <at> smalltalkconsulting.com>
1999-11-17 09:29:16 GMT
> Andreas wrote
> Interesting results!
>> 5% increase for bytesCodes per second and an 8% increase in sends per
>> seconds on a PB 3400 PowerPC. This was perhaps the easy part.
> What did you change?! Just trying to give the compiler some more hints
> (e.g., by using 'const' and similar)?!
No it's related to global variables, I'll get you some source and details
later. For most routines the number of loads is reduced, and the number
registers required is also reduced. This is reflected in a smaller
instruction count per routine in general. I also sorted, by hand, the global
variables based on usage to give us better cache coherence (doesn't hurt,
but I'm not sure I could measure a difference for this).
>> (1) Should this magic number(interruptCheckCounter) be more
>> tied to a timer heuristic?
> I think the big problem is the timer accuracy which currently depends on the
> frequency of #checkForInterrupts. If you increase the #interruptCheckCounter
> your timer accuracy will decrease. Though, of course, one could adjust the
> interruptCheckCounter based on whether or not a timer is active (or even how
> far in the future the next timer tick is).
> Good question. For user interrupts, once or twice per second is possibly
> sufficient. For the timer it should be as accurate as possible. For external
> semaphores or finalization it should be as soon as these are signaled.