
62 Cray T3E User’s Guide
Chapter 7
Interprocess communication
This chapter describes how to use the MPI or PVM message-passing li-
braries on the Cray T3E at CSC. In addition, the properties of the Cray
data-passing library SHMEM are described in some detail. The data-
parallel High Performance Fortran (HPF) programming model is intro-
duced, too.
7.1 The communication overhead
Parallelization on the T3E can be done by three different approaches:
message"-passing, data-passing and data-parallel programming. The
defining feature of message passing is that the data transfer from the
local memory of one process to the local memory of another requires op-
erations to be performed by both processes. In contrast, data-passing
routines for sending or receiving data are one-sided. In data-parallel
model, the programmer specifies only the data distribution between
processes, and the compiler generates a parallel executable code.
The fastest way to communicate between processors on the Cray T3E is
using the SHMEM library (Shared Memory Library). This is a Cray-specific
data-passing library and will not produce portable code to other archi-
tectures. It may be preferable to use MPI (Message Passing Interface),
a standardized and portable message-passing library. Another portable
message-passing library on the T3E is the somewhat older PVM (Parallel
Virtual Machine), which is, in general, a bit slower than MPI. The Cray T3E
system has also a data-parallel HPF (High Performance Fortran) compiler,
supporting Cray’s CRAFT data-parallel programming model, as well.
Message latency (or start-up time) is about 1 µs (microseconds) when
using the SHMEM library. With MPI the latency is about 30 µs. The
maximum bandwidth is in practice about 230 MB/s with both SHMEM
Komentáře k této Příručce