>The claim US WEST is making, or made since I doubt they still believe it, is
>that the software itself, in the process of all those fun FFT calculations,
>was tying up the processor.  We all know it only takes idle time, but when
>you look at performance monitor in NT, all you see is that NTPRIME.EXE is
>taking between 90-98% processor time, so they assumed it was hogging the
>processor.  Needless to say, the US WEST folks don't quite understand that
>it doesn't take CPU time from other processes, only the idle process.  Oh
>well...sigh...

I would like to comment on that. I have been doing some experiments on this, using a 
program of my own (Neural network training of Backgammon) that I wanted to run on my 
PC at home at any time without interferring with my other tasks, just as Prime95. At 
home I run W98, and I have not tested this on NT, but my observation is, that when two 
or more "busy" programs run at various priorities ("busy" here meaning a program that 
can use all the CPU it can get), the lowest priority program _will_ be given a small 
amount of clock cycles, and thus in fact MORE than the available idle time. Given two 
programs, one running at normal priority, the other at the lowest possible priority 
(idle priority), the second program will get around 1-2% of the CPU, while the first 
will take up ninety-some %, giving away only the mandatory few % to other system 
tasks, the amount will rise as the priority rise. (Luckily this is NOT the case for 
the built-in idle thread!)

In the case of only one busy low priority program, like what is usually the case with 
Prime95, and no other programs wanting to hog the CPU, it is not easy to tell, whether 
these other programs actually are delayed because of the low priority program, but in 
this case, I claim that it simply doesn't matter, since the programs are not "busy" 
anyway. However, if the other programs have enough to do, they will still need to give 
away a little to the idle priority program. With the 1-2% as seems to be the case, it 
will appear to be a P98 instead of a P100, you're running...

I don't know, why Microsoft has chosen to implement their multitasking like this, but 
a fair guess would be that it is not desireable to prevent even low priority program 
from being totally halted, because it would prevent them even from being shut down 
gracefully, while other busy programs were running. Those of us being fortunate enough 
to have tried out the good ol' Commodore Amiga will remember that on those machines, a 
low priority task would indeed be halted until CPU was available. The housekeeping of 
cycles were much more strict. (Please do NOT send PC vs Amiga mails to the list now, 
let's keep it on topic.)

Like I said, these are observations on W98, someone else would perhaps do some 
experiments on NT?

Morten Due Jorgensen

Reply via email to