nulstein v2 plog - now is multicore

By Jérôme Muffat-Méridol (Intel) (21 posts) on August 23, 2010 at 5:16 am

nulstein v2 - slide 02

(note: this is slide 2 of the nulstein plog)

You've been hearing us (at Intel and elsewhere) say "the future is multicore" for a few years already, and what this excerpt from the Steam Hardware Survey tells us is that the present is multicore too. It's always difficult to pick a stat that everybody will agree on, but I think this one is particularly fitting: why would you install Steam if you're not (at least) contemplating the purchase of a game? So, this doesn't just focus on machines used to play games, it also focuses on people who actually are willing to pay for them. I believe this makes the stat interesting, even if it represents only a subset of the population we're interested in (my assumption being that it is a representative subset).

It says that a game bought today is 55% likely to be played on a dual core processor, 27% on a quad-core and 15% on single core (I believe hyperthreading is not taken into account as my Core i7-980Xgets reported as having 6 physical processors).This survey also shows that the quad-cores have taken second place and overtaken single-core systems around the end of 2009, so really there is no question that you can count on a significant installed base of machines able to run 4+ threads simultaneously, today. And it will just go on from there and keep growing.

So, if the future is already there, what's the next future, then?

On the one hand, we'll have more of what we've always seen: things grow smaller. And smaller again. What we're seeing with Atom(tm), the success of slim netbooks with 10+ hours of everyday-stuff computing power, is a clear indicator that not only is the technology here but that it's also something a great deal of people want. Moore's law is at work here, again, and these chips will keep shrinking while becoming more powerful. One obvious reason why multicore is a key way to make these more powerful is that when they're not doing much, we can start shutting down cores, saving precious energy very effectively. The future of small is definitely multicore.

On the other hand of the spectrum you have initiatives like Intel® Many Integrated Core (MIC) architecture, where hundreds of physical threads run simultaneously and still manage to retain a shared-memory architecture. Absolutely no surprise here: whether it is handfuls of threads in the main processor or scores of them on a coprocessor-style card, the future of big is multicore or, rather, manycore.

I think that summarizes where we are on the hardware side of parallelism and there should be no doubt that, wherever you're looking at, the best way to take maximum advantage of the CPU is parallel code.

Next time we look at the software side of things
Spoiler (slides+source code): here

Categories: Game Development, Parallel Programming
Tags:

For more complete information about compiler optimizations, see our Optimization Notice.

Comments (4)

April 13, 2011 10:34 AM PDT


Frank Arnold
Hi,
I have downloaded the nulstein 2.0 source code and I want to compile the project in x64 release mode with VC++, but I get the message that there ist a missing header file "gmdls.h". I have searched the project, my computer and the internet with some ftp search engines, but this file is not available. Can you help me where I can get it ?

Regards,
Frank
April 17, 2011 8:04 AM PDT

Jérôme Muffat-Méridol (Intel)
Jérôme Muffat-Méridol (Intel)Total Points:
2,199
Brown Belt
Hi Frank,

Sorry for the late reply, I was on vacation (French people almost always are :) )

Ok, so gmdls.h is built by the DumpGeneralMidiDLS.bat file under the nulstein project.
This depends on the dlsdump project building correctly (it lives under the "Utils" group of projects).
The dlsdump project is a dependency of the nulstein project, and should build automatically when you build the solution.

Once built, the file ends up in the intermediate directory ie: $(SolutionDir)..objnulsteinx64.DX11.Release

I can see a few possibilities why it might not build:
- you try to only build the nulstein project (you need to build the whole solution)
- the dlsdump project doesn't build correctly (unlikely, as this is all very simple code)
- you have a version of windows that does not have a gm.dls file. Now, that would be new, as the presence of this file as been attested in all Windows version for a very long time.

Please let us know how it goes.
Thanks
J.
April 25, 2011 6:14 PM PDT

tandidineshymail.com
tandidineshymail.com
thanks for your comments i m happy to see you otherwise my graphic values not work properly in game please help me and again thanks thanks
April 25, 2011 6:14 PM PDT

tandidineshymail.com
tandidineshymail.com
thanks for your comments i m happy to see you otherwise my graphic values not work properly in game please help me and again thanks thanks

Trackbacks (3)


Leave a comment  

To obtain technical support, please go to Software Support.
Name (required)*

Email (required; will not be displayed on this page)*

Your URL (optional)


Comment*