Messages in this thread | | | Date | Tue, 5 Aug 1997 11:42:20 -0600 (CST) | From | Adam McKee <> | Subject | Re: stress testing and loadavg |
| |
Hi all.
On Tue, 5 Aug 1997, Ingo Molnar wrote:
> > Well i just tested 2.0.30 with the QNX-style scheduler (1.05) and > > found it to handle 50 looping bash-scripts, 1 gnuchess and a simple > > X-Session (Server, xterm, fvwm2) and still reacting instantaneous to > > input on another virtual terminal. The load was >56. Not bad for a > > Pentium-100... I am now giving it a try on my old 4 MB 386 and my > > 233MHz Multia, to see how much load they can handle... This time i will > > use the program you posted. > > > > The adaptive scheduling of the new scheduler is really a neat feature. > > i dont think there is any justification to 'punish' a process, just > because it does no system calls ... it might be a database server.
It only matters if the system call causes the process to block. If a process uses all of its timeslice without blocking it may be moved down a run-queue. As soon as a process blocks its run-queue will be set equal to its minimum run-queue. I hope people would realize that putting in system calls just to get back to the minimum run-queue is a brain-damaged thing to do. Of course, I'm sure compiler writers realize that optimizing for specific benchmarks is a brain-damaged thing to do...
> if any heuristics are used, then it should be user-definable, just like > now. I dont think we want to end up with complaints like this: 'hey our > number-cruncher is getting so slow when the web server is running'. Or > solutions will show up that do a fake system call every now and then, to > 'pump up' the effective priority ... > > Every thread has it's right to it's full quantum, and the OS has to > provide this. So i think adaptive scheduling is nice, but should not be at > all the default scheduling policy.
As I point out in the README for the scheduler, you do need to rethink how to re-nice tasks. If a machine's primary role is web-serving, put the web-server on a lower-numbered run-queue... If you don't want your number-cruncher getting demoted, you can (well, root can...) use sys_setscheduler to get it to use the SCHED_RR policy instead of SCHED_ADAPTIVE. The adaptive scheduling is a nice idea which usually works well, but people should not get the idea that it takes away the need to manually re-nice tasks. In fact, there's even *more* need/benefit to manual re-nicing with this scheduler.
-- Adam
| |