Rove 2013 年 5 月 27 日 上午 6:29
Multithreading common in games?
I say multithreading is common in games with all my games using over 20 threads.

Even a old 2002 game like Morrowind is running 22 threads on the newgame/load game startup screen.

Someone has been debating this with me in another thread and also AMD vs i5/i7 3rd gen.

I've decided to try and lure him to a new thread to debate it because I thought it was sort of derailing the post and a bit of a new topic. Here's where we left off:

引用自 _I_
引用自 Rove

Wanna start a new thread with me? I think we are kinda derailing this one...

Use your task manager to test thread count for a game. Do you need a guide how-to?

simple test

run prime95
set it to use 1 threatd

watch task manaer

how many cores get aativity, and whats the overall cpu usage?
最後修改者:Rove; 2013 年 5 月 27 日 上午 9:59
< >
目前顯示第 1-15 則留言,共 17
_I_ 2013 年 5 月 27 日 上午 6:47 
thread count =/= core usage

just because marrowwind uses 20 threads doesnt mean it will run all at the same time
many are idle, and most will run 1 at a time

watch your task manager and see if it goes over 23% usage for the game (if your cpu has 8 cores)

and windows doesnt always assign a single core each specific thread, ex. running prime95 with 1 worker thread, you will get activity on all cores, but not more than the 23% total cpu usage (with 8 cores)
Rove 2013 年 5 月 27 日 上午 6:53 
I really don't think you are making much sense.

引用自 _I_
windows doesnt always assign a single core each specific thread, ex. running prime95 with 1 worker thread, you will get activity on all cores, but not more than the 23% total cpu usage (with 8 cores)

Look what you just said.

Prime 95 single threaded setting should max out 1 core 100% shouldn't it? Not what you said about maximum 23% CPU usage on 1 core but activity on multiple cores?

But games are not set to run 1 thread.

Set Prime95 to 8 threads, watch carefully and you will see that all 8 cores get 100% load, what you don't see is 1 core at 800% load :) or worse it lagging and switching threads around on 1 core but only using the one core 100%.
_I_ 2013 年 5 月 27 日 上午 6:59 
you are not understanding

100% / 8 = 22.5%

if one thread is using 100% of one core, the cpu with 8 cores has a 22.5% load
Rove 2013 年 5 月 27 日 上午 7:09 
Your math is wrong. 100% / 8 = 12.5%, not 22.5%

Anyways, okay right but I can watch the individual cores usage when running a game, not just the overall CPU usage. I can open resource monitor or another program and watch all 8 cores individually monitored.

I'm telling you that none of the cores as minitored individually get near 100% in any game and that it does actually spread out over all 8 cores. This means if total CPU usage is 25% then average per-core usage is 25%, sure so may be 10%, some may be 35% and it always fluctuates, but it does it's best to balance it and switch it arround for balance in real time. The average per-core will still be 25% even though in real time it changes. Nothing goes near 100%, even though by your math I should be using 2 cores 100% to get 25% usage?

If I get 50% usage the average is 50% and though it may go higher and lower it does actively work to balance the average per-core usage to be similar to the total CPU usage.

It doesn't seem to be absolutely perfect at balancing workloads but it is good and quick at it.

My CPU has 8 cores, it actively and agressively finds ways to use all of them at once for any modern task at hand.
最後修改者:Rove; 2013 年 5 月 27 日 上午 7:39
_I_ 2013 年 5 月 27 日 上午 7:12 
oops
im used to working with degrees (22.5º is half of 45º)


but in marrowwind does your cpu usage go above 13% (task manager rounds to the nearest 1%) for the game?
if no, then it does not use more than 1 core
最後修改者:_I_; 2013 年 5 月 27 日 上午 7:18
Rove 2013 年 5 月 27 日 上午 7:48 
OKay so morrowind according to "Resource Monitor" uses 12-13% of CPU, I think but meanwhile according to Task Manager it uses 16~% of CPU so maybe resource monitor's "CPU" column is not usage % but something else?

Anways, either way, it is not using 100% of any one core. It splits itself over multiple cores to allow it safe headroom and ability to run better without "hitting the ceiling" on any one core.

Yes using 1 core 100% would = 12.5% usage, no getting 1 program to use 12.5% of my CPU is meanwhile NOT using 1 core 100%, it's split across multiple cores.

The more demanding the program(s) is or are the more they split across cores.

It's not actually perfect, like splitting 13% across all cores but it doesn't need to be. It splits as much as it needs to to insure that it has plenty "core headroom" to use without having to offload to another core before completing a opperation.

If I put the CPU under serious load with multithreaded applications then it would split further to try and maintain headroom in each core in case usage on that thread/process got more intense and cause it's faster to finish the unit of work on the core before starting a new unit on a different core instead of having to offload before it can finish if the core is maxed out.

So yes, 1/8 usage, no there is not 1 core being 100% used.

I understand what you are saying now but please understand that it splits.

With Morrwind running, even alt+tab minimized, the top 4 cores, core 0, core 1, core 2 and core 3 are all turbo-cored up to 4.2Ghz while the bottom 4 cores, core 4, core 5, core 6 and core 7, are all Turbo-core up to 3.9Ghz.

For this reason (because the top 4 cores are faster right now) they are getting most of the love and most of the use, but still not usually going over 35% each.

My total CPU usage is only like 20~% but if I increased it alot then workload would spill down onto the bottom 4 cores at 3.9Ghz as well, even though they aren't boosted up as fast as the top 4 cores at 4.2Ghz.

No this is just really strange.

Task Manager is showing 16% usage by Morrowind, but meanwhile Resource Monitor is showing 12-13% and it IS %, I checked and it very definetly says that it is quoting % usage so something is messed up somehow. On the bright side the screwup is all Windows 8.

最後修改者:rotNdude; 2013 年 5 月 27 日 上午 9:24
Velmarshal 2013 年 5 月 27 日 上午 9:48 
This is getting pointless.
Why did anyone mention morrowind in a debate about quad and octa core CPUs. Morrowind is old and it will always use only one core, those 22 threads are irrelevant, the game uses 1 core and nothing you say, do, or install won't make it use more.

If you want to compare CPUs gaming wise, select a game that is actually CPU heavy, like Planetside 2 (that game is a wreck, but it strains even the most powerful CPUs).
Rove 2013 年 5 月 27 日 上午 9:57 
You miss the point. Morrowind uses multiple cores.

It doesn't use 1 core, it USES MULTIPLE CORES DOG TINMAD!
_I_ 2013 年 5 月 27 日 上午 10:07 
there is a tweak for oblivion to use 2 cores, but marrowwind will only max 1 core at a time, ie use 1 thread at a time

the graph shows some activity on all, because during that time frame x% of that core was used, and at 3ghz, the cpu can run 3,000,000,000 calcs per second per core
最後修改者:_I_; 2013 年 5 月 27 日 上午 10:22
Rove 2013 年 5 月 27 日 上午 10:31 
DOG TINMAD!
rotNdude 2013 年 5 月 27 日 上午 10:31 
I think we need to go back to basics here to understand what multithreading is all about and what differentiates multithreading from multitasking.

Each application is programmed to be executed in a certain way. If the application is coded in a way that makes better use of multiple threads, the developers will or should program it with that in mind. When that application is launched, it is registered as a process by the OS. If there are multiple threads in that process, the OS will schedule those threads in the most efficient manner to coincide with all of the other processes/threads that are also running on the system. The OS cannot magically create new threads if the applications/processes don't have those. All it can do is schedule them.

http://scalibq.wordpress.com/2012/06/01/multi-core-and-multi-threading/

Also, the original Morrowind was not multithreaded, so I'm guessing you are confusing the other processes/threads with them all being attributed to Morrowind. Here is a fairly recent thread about Morrowind.

http://steamcommunity.com/app/22320/discussions/0/864949037859046970/#p1

Note post #3.
Rove 2013 年 5 月 27 日 上午 10:33 
Okay all I know is that it uses 12-16 percent of my CPU total usage depending on the numbers you believe (from Task Manager or from Resource Monitor) but it NEVER NEVER NEVER uses 100% of one core.

You guys are basically trying to say my CPU is not good enough to run Morrowind. That's a joke, you don't even need to tell me that, but it's stale, old and pale now.

Also it only requires 500Mhz Pentium 3 so what's wrong with this buggy little resource hog Morrowind and why is it eating up 12-16% of my CPU at 4.2Ghz Turbo Core when it could be running it at 4% or less use at the 1400Mhz "idling" frequency that is the bottom base my FX 8150 drops to when not in use?
最後修改者:Rove; 2013 年 5 月 27 日 上午 10:39
rotNdude 2013 年 5 月 27 日 上午 10:53 
Nobody is saying your CPU is not good enough to run Morrowind. Actually, it's quite capable of running about 8 sessions of Morrowind from a CPU perspective.

You have to remember that the game was released in 2002 when there were no multicore CPUs and the CPUs did not have the processing power of CPUs today. If they would have released a game in 2002 that would have consumed 100% of one core of today's CPUs, the game simply would not have been able to run as a game. It would have been a slide show and a very very slow one at that.
Rove 2013 年 5 月 27 日 上午 10:58 
RIght I know, so why is it consuming so much system usage (12-16% as stated various places and causing Turbo Core to 4.2Ghz) when it should actually be consuming like 2% or less usage at 1400Mhz idle on the FX because Pentium 3 500Mhz was like 1/2 as good per Mhz as a FX core and that's IF it was running 100% on 500Mhz Pentium 3 which it wouldn't be.

Something is wrong with the numbers task manager and resource monitor are giving me.
最後修改者:Rove; 2013 年 5 月 27 日 上午 10:59
_I_ 2013 年 5 月 27 日 上午 11:13 
assign it to use 1 core, and it will use 100% of that core
from task manager, right click on marrowind.exe -> set affinity
untick 7 of the cpus
< >
目前顯示第 1-15 則留言,共 17
每頁顯示: 1530 50

張貼日期: 2013 年 5 月 27 日 上午 6:29
回覆: 17