"System Idle Process" Explained

perris said:
the system idle process couldn't be at 99% when the cpu is representing 100%

the system idle would be at 0 when the cpu is at 100

what is that first process that's using all that cpu time by the way?
My PC has 50% CPU usage, but system idle is 99%. and this is pretty common for users of Asus A8N SLI users. By the theory, I am your super fan, and love reading your post, but the reality just can't explain itself.

Here are my screenprint,




http://forums.amd.com/index.php?showtopic=63318&st=35&p=571909&#entry571909
 

Attachments

  • process.JPG
    process.JPG
    65.1 KB · Views: 1,072
  • CPU.JPG
    CPU.JPG
    61.9 KB · Views: 1,080
Last edited:
Jason_shanghai said:
My PC has 50% CPU usage, but system idle is 99%. and this is pretty common for users of Asus A8N SLI users. By the theory, I am your super fan, and love reading your post, but the reality just can't explain itself.

Here are my screenprint,




http://forums.amd.com/index.php?showtopic=63318&st=35&p=571909&#entry571909
they are two completely differant time frames

task manager is close to real time, something happend in the period of time that you switched view, you are never going to be able to switch view and have an identicle scenario...even a key stroke changes the cpu's profile

for instance, look at the processes, the first shows 22, the second shows 23
 
Last edited:
chuckles said:
okay still confused and have a pic.

cpu usage is 32% but system idle process is 71, where and how does cpu usage fit in. Is wmplayer.exe using 16% of 32%? and why doesn't it add up to 100, 71+16+3+3+3+3=99. they are orded by the cpu column.
your screen shot isn't complete, there are processes hidden at the bottom

in addition, the delta's of values isn't exactly real time, there are cycles that have to be realized when taskmanager reports from one process to the next

it can only do one thing at a time

the very use of taskmanager changes the cpu profile, so even viewing the internals renders the information differant then if taskmanager weren't open
 
Last edited:
Jason_shanghai said:
My PC has 50% CPU usage, but system idle is 99%. and this is pretty common for users of Asus A8N SLI users. By the theory, I am your super fan, and love reading your post, but the reality just can't explain itself.

Here are my screenprint,




http://forums.amd.com/index.php?showtopic=63318&st=35&p=571909&#entry571909
I see what you mean. system idle is reporting something completely differant then the info bar at the bottom of taskmanager

I have never seen that, I could only think of a virus or a hack messing with the report at the bottom of taskmanager as I would tend to believe system idle process of the info bar

maybe someone else has seen something like this before, I have not
 
Hi. System Idle Process may not be a process in the way we usually think of a process. Much of the discussion here makes it sound like the System Idle Process is using up cycles when no other process is executing. Actually, when your computer processor has absolutely nothing to do the code ends up here:

hal!HalProcessorIdle:
80a7eeb0 fb sti
80a7eeb1 f4 hlt
80a7eeb2 c3 ret

Assuming you are running on an Intel microprocessor. The STI instruction sets the interrupt flag. Interrupts are enabled at the end of the next instruction. The next instuction HLT stops instruction execution and places the processor in a HALT state. An enabled interrupt, NMI or reset will resume execution. One common interrupt that will resume execution is the system timer. So from time to time the system will "wake up" and see if there is any work to do. If there is not, it will just halt again. The keyboard, mouse, network card, etc are devices that will also cause interrupts. The percentage of time indicated by the System Idle Process is just the time that is not spent in any of the other listed processes. So the System Idle Process is just the percentage of time your system is waiting to do something.
 
A BIOS update? as per the members of AMD's forums didn't help?
 
Steevo said:
A BIOS update? as per the members of AMD's forums didn't help?

Unfortunately not, actually I've tried more than that, see my log:

-Mobo chip drievers upgraded to V666 (latest)
-BIOS tried 1009, 1011(latest)
-Drivers have been unloaded/reloaded
-Unplugged, switched RAM, unplugged all unnecessary cables
-tried another Athlon 3000+ CPU
-reformat and reinstall, tried another 32bit OS
-adjusted BIOS setting by different combination

The result is all the same except:
-32 Edition OS make it worse, CPU usage is nearly 60%
-I used to adjust CPU freqency to 260(default is 200), CPU multiplier AUTO, the CPU usage down to 20-30% for a little while. CPU-Z shows the multipier adjusted to 5(default is 9) by system, so the actual CPU is 1.3G

This is another post, many people has the same problem
http://forums.amd.com/index.php?showtopic=...09&#entry571909
 
Kabir said:
Hi. System Idle Process may not be a process in the way we usually think of a process. Much of the discussion here makes it sound like the System Idle Process is using up cycles when no other process is executing. Actually, when your computer processor has absolutely nothing to do the code ends up here:

hal!HalProcessorIdle:
80a7eeb0 fb sti
80a7eeb1 f4 hlt
80a7eeb2 c3 ret

Assuming you are running on an Intel microprocessor. The STI instruction sets the interrupt flag. Interrupts are enabled at the end of the next instruction. The next instuction HLT stops instruction execution and places the processor in a HALT state. An enabled interrupt, NMI or reset will resume execution. One common interrupt that will resume execution is the system timer. So from time to time the system will "wake up" and see if there is any work to do. If there is not, it will just halt again. The keyboard, mouse, network card, etc are devices that will also cause interrupts. The percentage of time indicated by the System Idle Process is just the time that is not spent in any of the other listed processes. So the System Idle Process is just the percentage of time your system is waiting to do something.
I think you missed the issue

his system idle is reporting no processor use

the information bar at the bottom of his taskmanager is reporting 50% processor use

one of these is wrong or both are wrong, but both aren't correct
 
System Process taking much of CPU:
I have been having the problem of system process taking as much as 90% of CPU. This happens as a spike. I have to reboot the windows 2000 every time it happens. When windows is started, the system process has 34 threads. At that time Idle Process gets enough CPU time allocated. However, after about couple of hours since booting, the system process thread counts comes up to 48 and that is when trouble starts. The system process takes about 80% CPU time and response to mouse clicks/ keyboard gets slower. The CPU usage is like a sine curve.

Can some one help me how I can control the CPU hogging by system process? I have checked for virus and there are none detected.
 
system idle process high means the processor isn't working.

if the system idle is 99%, the processor is working 1%

it's an inverse indicator
 
Perris, Yes, that is my understanding too. The problem with my PC is that system process (those additional 14 threads) take too much of CPU time.
 
Hi I am new here but came looking for why my "system idle resource" was keeping my computer from reacting to my keystrokes. I have read all the math/percentage comments and all I know is that process seems to be the only one using resource when this happens and the hard drive makes the overworked sound they do when alot is going on. When it is not doing this my system is quick and responsive but then there are times I have to wait and wait just for the right click menu to pop up (slowly appear is more like it) I finally could not take it and bought a second unit for when this occurs and now that one is doing it once in awhile also.My system at work doesn't ever do it and I use it all day long w/XP. I have learned to live with it but not like it.

Sorry, I know this was not a quick reply but it's my first. Thanks
 
Ok so if the system idle process is taking say 50% of resources, how would i change that to 0% constantly as so that my other apps have alot more resources, such as background programs and mouse click etc. Im doing barely anything such as chatting on MSN and yet at times i get no resources to my typing so im typing but it's not immediatly coming up on the screen however messenger isnt getting enough resources as such but system idle process is getting alot.

My understanding of this process is now alot better however can i change it to minus priority?
 
when systtem idle is telling you how much of your processor is idle...the higher system idle reports the less the cpu is being used
 
I've done a lot of looking around on the subject of System Idle Process.
What does it really do?
A few variations have come up.
Some say the SIP is a 16K byte loop.
Some say the SIP is a HLT instruction.
Both might be right.
Some say on Windows NT, SIT does HLT -- on the Uniprocessor HAL [only].
On later versions of Windows, one rare post says the ACPI Multiprocessor HAL does HLT, but the MPS Multiprocessor HAL does not.
This question of HLT or not comes up in discussions about software CPU cooling. If your SIP uses HLT, then your CPU is already running cool, and you don't need any CPU cooling software. If you have the unlucky HAL, then your SIP does not do HLT -- so changing your HAL or adding CPU cooling software should help.
I have been exploring the software CPU coolers only because i know they provide HLT instructions.
And the HLT instructions of the CPU cooling software are of interest for a whole different reason: fixing a performance problem with HyperThreading.

In a CPU with Hyper-Threading, when one hardware thread is halted, the other hardware thread gets all of the throughput -- it reverts to being one processor running at full speed.
BUT, if the SIP does not actually HALT idle the processor(s), then there will be a slowdown whenever the computer has only one thread to execute.
The active thread will be running on one virtual processor, and the system idle task will be running on the other virtual processor, competing and slowing down the useful thread.
All this goes to explain some measurements i made 19 months ago.
I made a simple compute-intensive task and timed its operation.
With HyperThreading disabled, i could run two instances of the task concurrently, or i could run two instances consecutively, and the two runs together would take the same amount of elapsed time.
With Hyperthreading enabled, the behavior was different. If i ran two instances concurrently, the total time reduced to about 89% of the time they took without hyperthreading, as expected. The tasks interleaved a little bit. But when i ran the tasks consecutively, the total time actually increased to 150% of the time they took with hyperthreading disabled! I had no explanation for this other than apparent competition from the System Idle Process still running on the other virtual processor. I was very disappointed that HyperThreading was not working as advertised. Intel SAYS the operating system should issue a HLT instruction. Either Intel didn't implement correctly, or else Microsoft didn't do what Intel suggested.
I made these tests in September 2004, and i don't have the computer or task that i tested with. I wish i had noticed which HAL was on that computer. It was a Windows 2000 computer.
Microsoft advises that HyperThreading should be disabled on Windows 2000 computers. Apparently the penalty for not listening is reduced performance. (But using CPU cooling software might fix that.)
My notes say i repeated the same results on a Windows XP computer.
Maybe it was not Windows XP, or maybe we somehow had the wrong HAL loaded in that copy of XP.
I tested today with a newer computer running Windows XPsp1 (with the ACPI Multiprocessor HAL) and a different task. I discovered that hyperthreading neither sped up nor slowed down an all-integer task, but it actually doubled the speed of a mostly floating-point task.
Still, this is not consistent with obervations made on other computers. On another newer computer running Windows XP (with the ACPI Multiprocessor HAL), AutoCAD was taking 5 minutes to load up a large drawing. By DISabling Hyperthreading, we were able to reduce that to 2 minutes! Other tests with other number-crunching operations fared similarly. Compressing movie files went faster without HT. Rendering AutoCAD animations went faster without HT. All of these tasks were observed to be running single-threaded under HT. (by looking at the CPU utilization in Task Manager.)
 
whiner01 said:
I've done a lot of looking around on the subject of System Idle Process.
What does it really do?
A few variations have come up.
Some say the SIP is a 16K byte loop.
Some say the SIP is a HLT instruction.
Both might be right.
Some say on Windows NT, SIT does HLT -- on the Uniprocessor HAL [only].
On later versions of Windows, one rare post says the ACPI Multiprocessor HAL does HLT, but the MPS Multiprocessor HAL does not.
This question of HLT or not comes up in discussions about software CPU cooling. If your SIP uses HLT, then your CPU is already running cool, and you don't need any CPU cooling software. If you have the unlucky HAL, then your SIP does not do HLT -- so changing your HAL or adding CPU cooling software should help.
I have been exploring the software CPU coolers only because i know they provide HLT instructions.
And the HLT instructions of the CPU cooling software are of interest for a whole different reason: fixing a performance problem with HyperThreading.

In a CPU with Hyper-Threading, when one hardware thread is halted, the other hardware thread gets all of the throughput -- it reverts to being one processor running at full speed.
BUT, if the SIP does not actually HALT idle the processor(s), then there will be a slowdown whenever the computer has only one thread to execute.
The active thread will be running on one virtual processor, and the system idle task will be running on the other virtual processor, competing and slowing down the useful thread.
All this goes to explain some measurements i made 19 months ago.
I made a simple compute-intensive task and timed its operation.
With HyperThreading disabled, i could run two instances of the task concurrently, or i could run two instances consecutively, and the two runs together would take the same amount of elapsed time.
With Hyperthreading enabled, the behavior was different. If i ran two instances concurrently, the total time reduced to about 89% of the time they took without hyperthreading, as expected. The tasks interleaved a little bit. But when i ran the tasks consecutively, the total time actually increased to 150% of the time they took with hyperthreading disabled! I had no explanation for this other than apparent competition from the System Idle Process still running on the other virtual processor. I was very disappointed that HyperThreading was not working as advertised. Intel SAYS the operating system should issue a HLT instruction. Either Intel didn't implement correctly, or else Microsoft didn't do what Intel suggested.
I made these tests in September 2004, and i don't have the computer or task that i tested with. I wish i had noticed which HAL was on that computer. It was a Windows 2000 computer.
Microsoft advises that HyperThreading should be disabled on Windows 2000 computers. Apparently the penalty for not listening is reduced performance. (But using CPU cooling software might fix that.)
My notes say i repeated the same results on a Windows XP computer.
Maybe it was not Windows XP, or maybe we somehow had the wrong HAL loaded in that copy of XP.
I tested today with a newer computer running Windows XPsp1 (with the ACPI Multiprocessor HAL) and a different task. I discovered that hyperthreading neither sped up nor slowed down an all-integer task, but it actually doubled the speed of a mostly floating-point task.
Still, this is not consistent with obervations made on other computers. On another newer computer running Windows XP (with the ACPI Multiprocessor HAL), AutoCAD was taking 5 minutes to load up a large drawing. By DISabling Hyperthreading, we were able to reduce that to 2 minutes! Other tests with other number-crunching operations fared similarly. Compressing movie files went faster without HT. Rendering AutoCAD animations went faster without HT. All of these tasks were observed to be running single-threaded under HT. (by looking at the CPU utilization in Task Manager.)
welcome to the board whiner01

I'm out of town for a few days and will read your work here in the future.

thanx for the contribution, hopefully while I'm away netryder or the other experts will have a look at what you've written

thanx again and stick around
 
So what your saying is that having high (90-100%) "System Idle Process" is a good thing right?
 
I just have one question (found this thread on google :p ).
On some computers, identical even, SIP uses 16k memory, yet on some, it uses 28k memory. The computers are of same configuration. Is this regional?
 
my first guess is that's 64 vs 32 bit processors and hyperthreaded processors...not sure though
 
Last edited:

Members online

No members online now.

Latest profile posts

Also Hi EP and people. I found this place again while looking through a oooollllllldddd backup. I have filled over 10TB and was looking at my collection of antiques. Any bids on the 500Mhz Win 95 fix?
Any of the SP crew still out there?
Xie wrote on Electronic Punk's profile.
Impressed you have kept this alive this long EP! So many sites have come and gone. :(

Just did some crude math and I apparently joined almost 18yrs ago, how is that possible???
hello peeps... is been some time since i last came here.
Electronic Punk wrote on Sazar's profile.
Rest in peace my friend, been trying to find you and finally did in the worst way imaginable.

Forum statistics

Threads
62,015
Messages
673,494
Members
5,621
Latest member
naeemsafi
Back