Official Fulqrum Publishing forum

Official Fulqrum Publishing forum (http://forum.fulqrumpublishing.com/index.php)
-   IL-2 Sturmovik: Cliffs of Dover (http://forum.fulqrumpublishing.com/forumdisplay.php?f=189)
-   -   Multi core processor support in CoD (http://forum.fulqrumpublishing.com/showthread.php?t=18379)

mazex 01-28-2011 07:06 AM

Quote:

Originally Posted by Jones (Post 217647)
Bravo, mazex! I applaud your patience and the clarity of your explanation!

Thanks! :)

mazex 01-28-2011 07:38 AM

Quote:

Originally Posted by Heliocon (Post 217691)
Thank you for the responses Maze, I know my tone can be abrasive but I am not looking around to pick a fight here. The issue with the ram was I thought you were talking about the CPU cache (for example i7 uses two 4mb cache's, 4mb for 2 cores/4 threads). This is what I was trying to get at originaly, the conversation then nosedived, so from my view I was arguing about hardware allocation. But yes again I never said multi threaded programming was easy, just that it was necessary since clock speeds are not increasing like they used to.
o

OK - I understand. If you now get the concept I described that the programmer has to create threads himself or everything runs in one thread etc, then read the wikipedia article about Hyper-threading which I think is what confused you (and many else!):

http://en.wikipedia.org/wiki/Hyper-threading

So in a hyperthreaded CPU the OS thinks it has two CPU:s (or cores - whatever). It can then run the main game loop thread on the first one and the AI thread on the other (from the previous example). The problem (or finesse) is then that the CPU uses it's registers and fat cache to internally switch between the threads without the OS having to care or do that as the CPU has better and faster knowledge about when there is a "slot" of idle time in the game loop so the AI thread can get access to the actual CPU (which is only one). This does not fix the problem of knowing if that 109 is dead or alive though as the two threads running on what both the OS and your code thinks is two really CPU:s don't get any help from this - and they have to be written just like a normal multithreaded application... And if one of the threads constantly uses the single CPU that other thread will not get any cycles to the CPU has to force it into wait and give some CPU time to the AI thread... Therefore HT can be good in some cases but as it's really a smart way to fill available slots of excecution time - but there is really only one "brain"... :)

addman 01-28-2011 10:54 AM

Let this thread be a sticky on how you can resolve arguments without flinging crap at each other. Very well done gentlemen! I also applaud you :grin:

Heliocon 01-28-2011 11:03 AM

Quote:

Originally Posted by mazex (Post 217775)
OK - I understand. If you now get the concept I described that the programmer has to create threads himself or everything runs in one thread etc, then read the wikipedia article about Hyper-threading which I think is what confused you (and many else!):

http://en.wikipedia.org/wiki/Hyper-threading

So in a hyperthreaded CPU the OS thinks it has two CPU:s (or cores - whatever). It can then run the main game loop thread on the first one and the AI thread on the other (from the previous example). The problem (or finesse) is then that the CPU uses it's registers and fat cache to internally switch between the threads without the OS having to care or do that as the CPU has better and faster knowledge about when there is a "slot" of idle time in the game loop so the AI thread can get access to the actual CPU (which is only one). This does not fix the problem of knowing if that 109 is dead or alive though as the two threads running on what both the OS and your code thinks is two really CPU:s don't get any help from this - and they have to be written just like a normal multithreaded application... And if one of the threads constantly uses the single CPU that other thread will not get any cycles to the CPU has to force it into wait and give some CPU time to the AI thread... Therefore HT can be good in some cases but as it's really a smart way to fill available slots of excecution time - but there is really only one "brain"... :)

I know about hyperthreading (cores vs threads etc).
I wonder how different bulldozer will be interms of programming for it. Havent heard a huge amount on it tbh.

OldBuzzard 01-28-2011 05:13 PM

So far I've seen an argument or two, some speculation, but nothing from anyone that counts.

I like to see an official statement as to whether or not multi-core processing is supported.

Just a simple yes or no.

Is that too much to ask?

mazex 01-28-2011 06:29 PM

Quote:

Originally Posted by OldBuzzard (Post 218082)
So far I've seen an argument or two, some speculation, but nothing from anyone that counts.

I like to see an official statement as to whether or not multi-core processing is supported.

Just a simple yes or no.

Is that too much to ask?

Oleg has previously said that the code would be multi threaded, but to what extent is unknown to me at least...

Skinny 01-29-2011 09:03 AM

Quote:

Originally Posted by OldBuzzard (Post 218082)
So far I've seen an argument or two, some speculation, but nothing from anyone that counts.

I like to see an official statement as to whether or not multi-core processing is supported.

Just a simple yes or no.

Is that too much to ask?

Given that dual core chips are minimum requirement and quad core recommended, it safe to assume it makes use of (3 or) 4 threads.

tintifaxl 01-31-2011 10:54 AM

Quote:

Originally Posted by Heliocon (Post 217478)
I quoted the wiki there about its native abilities but more to outline the point about the 20 yrs. I called BS on your claim of experience due to the length of time and other things you have said.

I coded multithreaded apps for macos in 1989. In my perception no grafical user interface can exist without multithreading. Ever tried to programm a progress bar without it?

Tiger27 02-02-2011 04:14 AM

I'm glad you all sorted out your problems, I was just about to get the wifey to kick the stool out from under me and end it all, I just hope the game works without stutters, I will leave the reasons as to why it runs smoothly for you guys to explain. :rolleyes:

Oh by the way I'm huge and muscular and will be kicking all your arses if you start any more mind numbing posts on multi threading etc.;)

ATAG_Doc 02-02-2011 05:07 AM

I say settle it over the English Channel like real men!


All times are GMT. The time now is 08:38 PM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.