Quantcast

Don't have an account? Register Now! Forgot password?

Maximum IT
News

Intel's Crystal Ball Calls for More Cores in Future Processors, Tells Developers to Get Ready

comment Commentsprint Printemail EmailDeliciousDiggStumbleUponRedditFacebookSlashdot

Let's set aside Crysis, heavy encoding, and the few other specialized tasks capable of making a high end rig writher in agony. For everything else, we're at a point where the software needs to catch up with the hardware, and that hasn't always been the case. Remember when your anti-virus program would kick in, preventing you from being able to open a Word document or perform other mundane tasks with any sense of urgency? Neither Intel's brute-force, gazillion stage pipeline nor AMD's Rainman approach to efficiency were enough to get over the performance hump, and it took the advent of mulitple core processors to blow the doors open to multitasking.

Now that dual- and quad-core processors are mainstream parts, the roles have been reversed. There exists only a handful of programs developed to intelligently utilize additional cores, and even less that take advantage of the additional computing power effectively. Toss benchmarking by the wayside and you probably won't be able to discern between a dual-core E8200 (2.66GHz) system and one equipped with a quad-core Q9450 (2.66GHz). For that to change, developers must learn how to program for not only today's hardware. but tomorrow's too.

Lest there be any doubt what the future will bring, Intel is warning developers that they need to "start thinking about tens, hundreds, and thousands of cores now in their algorithmic development and deployment pipeline." In other words, multiple cores are the wave of the future and the company has no plans of changing direction after Dunnington, its upcoming 6-core processor.

Image Credit: TechReport

COMMENTS:9
COMMENTS
avatarbut seriously ...

"What we have here is a failure to allocate."A core is a core is a core at this point. It’s not like my quad core has a GPU core a CPU core a Cell Processor and an Encryption accelerator. As awesome as that would be it just doesn’t exist.Back in the stoned age when new processors had new commands every generation programs relied on something to translate for them it was a little thing we called an Operating System. The initial function of an operating system was to allow communication between programs and hardware. Somewhere along the line OS’s Evolved into massive slow moving monsters that got in the way and people started programming around them.I think that the multi-core processor needs to get off its high horse and realize it’s just a piece of hardware. The OS should determine number of cores, track usage, and allocate threads to the least used core. Last I looked my windows not only recognizes how many cores the computer has but tracks usage as well. Several interfaces to manually assign affinity already exist. There’s not really any reason a piece of middleware or eventually the OS itself cant automate this process.

Programmers should have seen this one coming and realized when processor went to 2 and then 4 cores that manually coding for multi-cores was going to be an issue and they were going to have to adapt and find a way to identify number of cores and allocate accordingly. Much like any other advance… Lead, Follow or Get out of the way.           

if all else fails...

Login or register to post comments
avatarhmmmm...

I'm not a programmer or an EE, so maybe I'm just dreaming here...

Wouldn't it be cool though, to have some magical (and highly complex) piece of software, which alots CPU cycles + RAM + hard drive access??

I mean in a way that you could tell your computer to use 1 or 2 cores (and maybe which specific ones) for your music program and IM/chat, the other 498 for Crysis, and prevent the Crysis processes from being inhibited by extra load(s) in the other two? Maybe if you're 10 years from now, you can also run Folding or something on another 300 cores.

I don't know that I'm talking about any software that's currently available. It just seems like someone should be thinking that way, eventually. To me, that's the point of the last paragraph.

 

Login or register to post comments
avatarYou've had the power to do that all along....

 If you have 4 cores (or 40) you can set the affinity of each app (proccess) to run on a dif. core.  Enjoy.

***********

Every morning is the dawn of a new error.

Login or register to post comments
avatarYou know if they were

You know if Intel/AMD were smart enough, they'd remove such a requirement to utilize multiple cores. Expecting developers to yield to Intel's whims is never going to work out. Proc makers should find a way to remove this limitation.

Login or register to post comments
avatarI can't see how for realtime

I can't see how for realtime processing (games) this can be efficient. valve has already stated that it is inefficent to write code for more than 3 cores, and even with 3 cores you end up with 2 cores @ 100% and 1 @ 20%. however, for nonrealtime this could be amazing, imagine rendering in adobe primier or  maya, encoding video and music. and if I'm not mistaken, don't GPUs have roughly a couple hundred "cores"?

Login or register to post comments
avatarI know the Folding crowd

I know the Folding crowd would love a 500 core CPU. Farm in a box anyone? :)

Login or register to post comments
avatarI, for one, look forward to

I, for one, look forward to the five-hundred-core Dream Machine.  I plan to play 30 games at once.

Login or register to post comments
avatarmaybe then you'll be fine

maybe then you'll be fine with two 30" monitors

-- Norm

Login or register to post comments
avatarSounds dreamy! And think of

Sounds dreamy! And think of all the lolcats a five-hundred-core rig could process.

Login or register to post comments

This Month's Issue
FEATURE How to Get FREE Programs, Services, Software & MoreFEATURE Digital Photo Printer RoundupHOW TOBuild a 3D CameraFEATUREDIY Arcade PCWHITE PAPERHow TRIM Works