2.2. Allocating Send Buffers

The PVMFINITSEND(3) subroutine lets you choose what PVM will do with the data it sends. Each of the following three choices can be used to advantage in certain circumstances:

Assuming your application is running only on the CRAY T3E system, the fastest of the three choices is usually PvmDataInPlace, as specified in the following example:

CALL PVMFINITSEND(PvmDataInPlace, ISTAT)

The PvmDataInPlace specification has the following advantages and disadvantages:

Although it is not always the fastest, the PvmDataRaw specification is often considered the most useful of the three for the following reasons:

If you are sending integer data and the data does not need more than 32 bits of accuracy, you could see a performance benefit using PvmDataDefault. Because this form of packing copies only the low-order 32 bits of integer data, you can get twice as much data into the same block packed using PvmDataRaw. This can offer some performance benefit with 32-bit data.

Use of the PvmDataRaw method is recommended for most transfers, but, as is often the case, which method is best depends on your application.