Jump to content
Sign in to follow this  
xman1

Monitoring CPU usage and it doesn't seem to be multi-threaded

Recommended Posts

It looks like it uses one core to its max, but almost ignores the other cores. Are others seeing this?

-X

Share this post


Link to post
Share on other sites

They use different cores for different things, like AI etc.

Still not a multithreaded game though.

Share this post


Link to post
Share on other sites
They use different cores for different things, like AI etc.

Still not a multithreaded game though.

Contradict yourself much? :D

Sure it's multithreaded. For example as you already pointed out, AI runs in its own thread, then there is the geometry and texture streaming which also runs in a separate thread. This is multithreading.

I guess what you were really saying is that the renderer isn't multithreaded, which is correct.

Share this post


Link to post
Share on other sites
Contradict yourself much? :D

Sure it's multithreaded. For example as you already pointed out, AI runs in its own thread, then there is the geometry and texture streaming which also runs in a separate thread. This is multithreading.

I guess what you were really saying is that the renderer isn't multithreaded, which is correct.

Lol, I stand corrected. :o

Share this post


Link to post
Share on other sites

To quote the lead engineer:

It is important not to lose the sights from the goal, which is the performance increase. All other things are secondary. One example of wrong metrics is a concurrency level. Concurrency level tells us how much are the additional cores used. This factor is very easy to measure (you can do it in default system task manager), and that is probably why many hard core end users and reviewers are interested about it. Often you can see phrases like "Game XXXX is using quad cores very well, because when you watch CPU usage in task manager, you see all cores are running 100 %". It is very easy to create a trivial program which will make "full use of all cores" - all you need to do it to spawn a few threads and make them spin in an infinite loop. Concurrency is not a goal, only a mean. It is required, but not sufficient. Real life scenarios are more intricated then idle loops, but the principle is the same: using CPU does not mean you get any benefit from using it. In many cases the overhead of going "threaded" is so high that even when two cores are running 100 %, the performance improvement is very small, say about 20 % from single core, and the difference between quad and dual is even smaller.

Source: Dev's Blog - Real Virtuality Going Multicore

---------- Post added at 03:19 PM ---------- Previous post was at 03:17 PM ----------

Contradict yourself much? :D

Sure it's multithreaded. For example as you already pointed out, AI runs in its own thread, then there is the geometry and texture streaming which also runs in a separate thread. This is multithreading.

I guess what you were really saying is that the renderer isn't multithreaded, which is correct.

The renderer is also multithreaded... So no, it is not correct.

Share this post


Link to post
Share on other sites
The renderer is also multithreaded... So no, it is not correct.

Oh... :D

Side note: has anyone else noticed that the easiest way to get info about a BIS game to simply make a statement about it, and then wait to see if one of the devs contradicts you? ;)

Edited by MadDogX

Share this post


Link to post
Share on other sites

this engine is able to make outstanding things: the more AI the lower the cpu-usage. Maybe its fixed maybe not :p

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×