> The bottleneck is not where you expect it to be.

        A lot of the bottleneck is in the scheduler, suprisingly enough,
especially the parts where it checks for interrupts and/or if the current
time slice has expired.  (Does everyone remember why polled I/O is bad?)
The easiest fix for now, I think, is to adjust the number of java
ops executed between interrupt polls, and to inline some of the scheduling
functions.  (i.e. in scheduler::start(), loop over runOpcode() a few times
before re-starting the main scheduling loop; make this settable somewhere
else in the code for tuning.  A small optimization might be to make the
myTimeSlice multiplier a #define instead of variable, just to really get
the point across to the compiler that it's a constant...)

-_Quinn



_______________________________________________
Kernel maillist  -  [EMAIL PROTECTED]
http://jos.org/mailman/listinfo/kernel

Reply via email to