Prepare your chess engines for Thousand Cores!!

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

jpqy
Posts: 550
Joined: Thu Apr 24, 2008 9:31 am
Location: Belgium

Prepare your chess engines for Thousand Cores!!

Post by jpqy »

Intel says to prepare for 'thousands of cores'

Intel is telling software developers to start thinking about not just tens but thousands of processing cores.

Intel currently offers quad-core processors and is expected to bring out a Nehalem processor in the fourth quarter that uses as many as eight cores.

But the chipmaker is now thinking well beyond the traditional processor in a PC or server. Jerry Bautista, the co-director of the Tera-scale Computing Research Program at Intel, recently said that in a graphics-intensive environment the more cores Intel can build the better. "The more cores we have the better. Provided that we can supply memory bandwidth to the device."

On Monday, an Intel engineer took this a step further. Writing in a blog, Anwar Ghuloum, a principal engineer with Intel's Microprocessor Technology Lab, said: "Ultimately, the advice I'll offer is that...developers should start thinking about tens, hundreds, and thousands of cores now."

He said that Intel faces a challenge in "explaining how to tap into this performance." He continues: "Sometimes, the developers are trying to do the minimal amount of work they need to do to tap dual- and quad-core performance...I suppose this was the branch most discussions took a couple of years ago."

Now, however, Intel is increasingly "discussing how to scale performance to core counts that we aren't yet shipping...Dozens, hundreds, and even thousands of cores are not unusual design points around which the conversations meander," he said.

He says that the more radical programming path to tap into many processing cores "presents the 'opportunity' for a major refactoring of their code base, including changes in languages, libraries, and engineering methodologies and conventions they've adhered to for (often) most of the their software's existence."

"Eventually, developers realize that the end point is on the other side of a mountain of silicon innovations...Program for as many cores as possible, even if it is more cores than are currently in shipping products."
wgarvin
Posts: 838
Joined: Thu Jul 05, 2007 5:03 pm
Location: British Columbia, Canada

Re: Prepare your chess engines for Thousand Cores!!

Post by wgarvin »

Intel has a problem, because the vast majority of the things people use PCs for just don't need tens, hundreds or thousands of cores. Intel hasn't figured out how to squeeze more orders of magnitude of speed gain out of small numbers of cores, so this is their new direction I guess. Multi-CPU desktop machines have been available for at least 10 years, but most applications are still not written to scale across multiple cores (because it isn't necessary or useful for those applications).

I expect this new direction of Intel's to fail for the same reason Itanic failed: it requires either compilers to be omniscient, or programmers to work much harder than necessary. So while it might be interesting for chess programmers and supercomputing types, I just don't see desktop PCs with more than a few dozen cores. Other than games, I can't imagine what software would be written for those things that would convince people to replace their current PC with one. Maybe it is just my limited imagination.
User avatar
jshriver
Posts: 1342
Joined: Wed Mar 08, 2006 9:41 pm
Location: Morgantown, WV, USA

Re: Prepare your chess engines for Thousand Cores!!

Post by jshriver »

Agree and I might be a bit old school in my thought, but I really haven't seen a need to buy a new computer since around the 500mhz+ came out for the average consumer. For the crowd who just check email, browse the net, and chat an old Celeron 500 can do that. What seems to be really requiring the upgrades has been windows itself (vista anyone?).

On the other note, I can see this being used by several professionals (animation, image/video rendering, sound processing, scientific community) as well as gamers. Video cards are amazing now but while we're still looking at a monitor/lcd and not some holographic display the big use for more cpu's would be for AI or dedicating pieces for each core.

Though I agree, wish they'd put more effort into finding a way to make a faster CPU for serial application if that's what most consumer based applications seem to be.

A side note though, with Flash becoming more popular and Silverlight out now, and many applications going the web route it would be nice if these frameworks were parallelized themselves.

-Josh