Intel® MPI Library Developer Reference for Linux* OS

ID 768732
Date 12/16/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Visible to Intel only — GUID: GUID-F61CAB80-1787-4D1E-8C1F-56F34631F3A2

Document Table of Contents

GPU Support

This section provides information about the following GPU devices support in Intel® MPI Library:

  1. GPU pinning
  2. GPU buffers support

These features require the Level-Zero* library to be installed on the nodes. All environment variables have I_MPI_OFFLOAD_* prefix.

Current support is limited to Intel® GPUs only.

I_MPI_OFFLOAD

Set this environment variable to enable all GPU features.

Syntax

I_MPI_OFFLOAD=<value>

Arguments

Value Description
0 Disabled (default value)
1 Auto. Intel MPI expects that libze_loader.so is already loaded and does not load it twice
2 Enabled. Intel MPI loads libze_loader.so

Description

Set this environment variable to enable all GPU features such as GPU pinning and GPU buffers support, which give you ability to distribute devices between MPI ranks and provide a pointer of an offloaded memory to MPI functions.

_MPI_OFFLOAD_SYMMETRIC

Enable/disable an assumption that all buffers in an operation have the same type.

Syntax

I_MPI_OFFLOAD_SYMMETRIC=<value>

Arguments

Value Description
0 Disabled (default value)
1 Enabled

Description

Set this environment variable to enable/disable an assumption that all buffers in an operation have the same type. That is, buffers are allocated on GPU or HOST only.

Setting this variable optimizes device->device communications but disables handling of host->device and device->host cases.

I_MPI_OFFLOAD_LEVEL_ZERO_LIBRARY

Specify the name and full path to the Level-Zero library.

Syntax

I_MPI_OFFLOAD_LEVEL_ZERO_LIBRARY="<path>/<name>"

Arguments

<path>   Full path to the Level-Zero library.

<name> Name of the Level-Zero library.

Description

Set this environment variable to specify the name and full path to Level-Zero library. Set this variable if Level-Zero is not located in the default path. Default value: libze_loader.so.