This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug other/27541] New: Support Cluster OpenMP (distributed-memory OpenMP)
- From: "tobias dot burnus at physik dot fu-berlin dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 May 2006 21:57:30 -0000
- Subject: [Bug other/27541] New: Support Cluster OpenMP (distributed-memory OpenMP)
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Currently, GCC only supports OpenMP on shared-memory systems.
It would be nice if it could be extended to support OpenMP via the ethernet,
infiniband etc. (distributed-memory systems).
There exists (at least) one implementation of distributed-memory OpenMP: The
Intel Compilers 9.1's Cluster OpenMP.
Intel's Whitepaper:
http://www.intel.com/cd/software/products/asmo-na/eng/compilers/285865.htm
Intel's Cluster OpenMP User manual:
http://softwareforums.intel.com/attachments/ids/11/3796/1/UsersGuide.pdf
Intel's Extentions to OpenMP:
"? the sharable directive. The sharable directive identifies
variables that are referenced by more than one thread. These
variables are the ones that are managed by the DSM system."
(Some are automatically marked shareable, see whitepaper, p. 5)
The whitepaper also describes some implemenation details to deal with global
memory.
Running such a Intel-Cluster-OpenMP program: ./a.out, which first reads the
config file then starts the program on the remote computer via rsh or ssh. The
data transfer via TCP or Direct Access Provider Library (DAPL.sf.net).
* * *
Besides OpenMP there exists another multi-processor extention which works at
compile time: Cray's co-arrays, scheduled (in modified form) to be included
into the Fortran 2008 standard (see http://www.co-array.org/). Having a look at
the co-array specs shouldn't harm, when implementing this. Maybe some different
or further things should be considered.
--
Summary: Support Cluster OpenMP (distributed-memory OpenMP)
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: other
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tobias dot burnus at physik dot fu-berlin dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27541