Archives


- Beowulf
- Beowulf Announce
- Scyld-users
- Beowulf on Debian

[Beowulf] programming multicore clusters

Many of your questions may have already been answered in earlier discussions or in the FAQ. The search results page will indicate current discussions as well as past list serves, articles, and papers.

Search

Joseph Mack NA3T jmack at wm7d.net
Wed Jun 13 07:29:29 PDT 2007


I've googled the internet and searched the Beowulf archives
for "hybrid" || "multicore" and the only definitive 
statement I've found is by Greg Lindahl, 17 Dec 2004

"Most of the folks interested in hybrid models a few years 
ago have now given it up".

I assume this was from the era of 2-way SMP nodes.

Multicore CPUs are being projected for 15yrs into the 
future (statement by Pat Gelsinger, Intel's CTO, quoted in
http://cook.rfe.org/grid.pdf)

I expect the programming model will be a little different
for single image machines like the Altix, than for beowulfs
where each node has its own kernel (and which I assume will
be running dual quadcore mobos).

Still if a flat, one network model is used, all processes 
communicate through the off-board networking. Someone with a 
quadcore machine, running MPI on a flat network, told me 
that their application scales poorly to 4 processors. 
Instead if processes on cores within a package were working 
on adjacent parts of the compute volume and communicated 
through the on-board networking, then for a quadcore 
machine, the off-board networking bandwidth requirement 
would drop by a factor of 4 and scaling would improve.

In a quadcore machine, if 4 OMP/threads processes are 
started on each quadcore package, could they be rescheduled 
at the end of their timeslice, on different cores arriving 
at a cold cache? On a large single image machine, could a 
thread be scheduled on another node and have to communicate 
over the off-board network? In a single image machine (with 
a single address space) how does the OS know to malloc 
memory from the on-board memory, rather than some arbitary 
location (on another board)?

I expect everyone here knows all this. How is everyone going 
to program the quadcore machines?

Thanks Joe
-- 
Joseph Mack NA3T EME(B,D), FM05lw North Carolina
jmack (at) wm7d (dot) net - azimuthal equidistant map
generator at http://www.wm7d.net/azproj.shtml
Homepage http://www.austintek.com/ It's GNU/Linux!



More information about the Beowulf mailing list