How do I simulate 100% CPU usage?

≡放荡痞女 提交于 2019-12-08 02:36:15

问题


To simulate 100% CPU usage, I placed an infinite while loop in my code ( while (true) { } ) . This seemed to spike the CPU usage up to 30% (ordinarily it is 2% for the same program that I run without the while loop). Why does it not go above 30%? This is a dual core Intel i7 processor. The app is a simple console app running c# code on .net 4.0

 private static void SimulateCPUSpike()
 { 
       while(true) { }
 }

回答1:


CPU usage is a percentage of all CPU cores.
If your code is only running a single thread, it cannot occupy more than one core.

You need to make a separate thread for each core. (Environment.ProcessorCount)




回答2:


Dual core cpu, 2 hyperthreads per core. So you might expect 1 thread at 100% usage to take 25% of the total. The other 5% is everything else that the system is doing.

Even with 4 threads, you may not get 100% usage, due to scheduling.

The real question is, why do you want 100% usage...are you trying to cook a steak on the CPU?



来源:https://stackoverflow.com/questions/19549399/how-do-i-simulate-100-cpu-usage

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!