Intel® Moderncode for Parallel Architectures
Support for developing parallel programming applications on Intel® Architecture.
1696 Discussions

Intel began shipping dual-core processors this week. Are you ready?

Henry_G_Intel
Employee
389 Views
Hello everyone,
Intel began shipping dual-core processors this week. As a long-time threader and parallel programmer, I'm pretty happy about this. Dual-core processors representa bigstep toward ubiquitous multiprocessing.
Herb Sutter has a good article in the March 2005 issue of Dr. Dobb's Journal entitled, "A Fundamental Turn Toward Concurrency in Software." The subtitle for his article is "Your free lunch will soon be over. What can you do about it?" He goes on to say that "Concurrency is the next major revolution in how we write software."
Members ofthisforum probablysaw the revolution coming awhile back, but what steps did you take to get ready?
Henry
0 Kudos
7 Replies
TimP
Honored Contributor III
389 Views
If I may express an opinion, among the steps required for readiness for multiple dual core processors is to switch over to a linux using a 2.6 kernel. No stopgap strategy like disabling HyperThreading or using Windows 9x compatibility mode will remain viable.
0 Kudos
jseigh
Beginner
389 Views
Steps to get ready:
1) Get 25 to 50 ft USB, and UVGA or DVI extension cables so you can run PC in next room. Otherwise fan noise will drive you crazy.
2) Upgrade UPS. You'll need at least 1 KVA.
3) Upgrade electrice circuits to 20 amps minium
4) Upgrade Central Air Conditioning to something serious.
5) Upgrade electric service to 200 amps minimum to take care of increased electrical load for above.

That's what I'd do if I had the money and resources. What I probably end up doing is getting the VIA VT310-DP dual processor board if it is priced reasonable, can be passively cooled and I can find a mini-itx power supply without a whiney little fan.

Or are you talking about software? I've been ready for years. When is Intel coming out with a 16 way multi-core cpu? I want to see something serious.
0 Kudos
Henry_G_Intel
Employee
389 Views
Hello,
I was thinking about software but hardware is certainly fair game. I know what it's like to have big, noisy servers in my office. When my tests are finished, however, I move them to the machine room and access them remotely. I expect dual-core desktop computers to be quieter because noise level is a higher priority design consideration for these systems.
The issues you raise aboutpower and cooling are important but many customers fail to take them into account. They install a cluster of servers only to find that their power and cooling is inadequate. Some sites now use FLOPS/BTU as a metric during their selection process.
As far as multicore processors, it's a goodquestion but not something an Intel employee can talk about in a public forum. Sorry.
Best regards,
Henry
0 Kudos
jseigh
Beginner
389 Views
Well, it is sort of relevant since I develop lock-free algorithms and I can't really do anything serious unless I have a multiprocessor system to play with. You can do stuff with a uniprocssor but there are a lot of scheduling artifacts that complicate things.
0 Kudos
ClayB
New Contributor I
389 Views

jseigh wrote: Or are you talking about software? I've been ready for years. When is Intel coming out with a 16 way multi-core cpu? I want to see something serious.

What kinds of applications do you envision will need (or be able to use effectively) a 16-core processor? I don't think the "killer app" is written that might be able to harness this kind of power, but we might be able to envision something.

Right now, we have a chicken and egg problem in that I expect too few ISVs are ready to use multi-core processors. After the hardware is more readily available, though, I expect an expanded set of threaded applications. But, can we think of what applications or application areas would benefit best/most/fastest?

--clay

0 Kudos
jseigh
Beginner
389 Views
If we could predict what the next "killer app" would be, we'd be rich.

The problem is that the people who own the apps which would benefit most from multi-core cpu's probably aren't the most thread savvy programmers around. They have a huge investment in techniques to extract the most performance from a single threaded application. I don't think they're going to jump on an area that isn't their strong suit.

Message Edited by hagabb on 04-26-2005 04:29 PM

0 Kudos
jseigh
Beginner
389 Views
An example. There's this company which makes a debugger for multi-threaded programs. It can check memory accesses to make sure they are valid. It uses an AVL tree to do this. But even though they're getting O(log n) on the lookups, they're still getting enough contention that they're getting hammered. Enough at least that they were briefly interested in lock-free. But not enough that they followed though when I figured out how you could do lock-free binary trees.

Another case. An open source file server project was looking at making some internal table lookups lock-free for the same reason, to reduce contention and improve performance. This was a year ago and I haven't heard anything about it.

So I suspect this is fairly common. Some awareness but nobody is going to make any major changes yet. What would it take to get everyone moving on this? Maybe not a "killer app" but at least a high profile example with dramatic enough performance effect that people would start to connect the dots and realize that their own product could be at risk if they didn't start to exploit multi-processing.

Start publicizing performance studies that show dramatic performance improvements using multi-processing in mechanisms commonly used by major applications.
0 Kudos
Reply