Chapter 2. New Features

Table of Contents
2.1. Changes to Cray T3E systems
2.2. Changes to Cray SV1 systems

This chapter describes MPT 1.4 features and features available in earlier update releases.

2.1. Changes to Cray T3E systems

The new features described in the following sections apply to Cray T3E systems only.

2.1.1. Latency optimizations

Enhancements provided by the Edinburgh Parallel Computing Centre (EPCC) reduce the system's minimum latency by a factor of 2. The optimizations to the MPI library make use of the E-register hardware message queues in the critical MPI communication path. Latency is the time between when a processor requests data and when it is able to use that data. This feature was first available in the MPT 1.3.0.5 release.

2.1.2. Improved MPI barrier performance

This feature, provided by EPCC, improves the performance of the MPI_Barrier synchronization routine using MPI_COMM_WORLD. This feature was first available in the MPT 1.3.0.5 release.

2.1.3. MPI-2 one-sided communication

The MPI-2 one-sided communication feature is implemented by EPCC. One-sided communication, or remote memory access (RMA), moves data directly between local memory and remote memory. The MPI_Put(3), MPI_Get(3), and MPI_Accumulate(3) routines perform the actual data movement. Three synchronization models are available; see the MPI_Win(3) man page for more information.

2.1.4. Improved default internal buffering

This features is a change in the default internal buffering for MPI. The MPI library no longer buffers contiguous data by default on Cray T3E-900 systems or later. Users can enable internal buffering with the MPI_BUFFER_MAX environment variable, which is documented in the MPI(1) man page. This feature was first available in the MPT 1.3.0.4 release. (This feature is also activated for Cray T3E-600 systems if hardware streams are disabled.)

Users with erroneous programs that assume an MPI library buffers data internally, can use the MPI_BUFFER_MAX environment variable to specify how many bytes of data the MPI library should buffer. This change is also documented in the MPI(1) man page under the description of the MPI_BUFFER_MAX environment variable. This change in default buffering increases the default peak bandwidth for MPI applications. Peak bandwidth is defined as the maximum number of bytes that can be transferred in a second.