Using Two DAPL Providers for MPI on Xeon Phi™

Update

This article is outdated.  If you are using at least Version 4.1 Update 1 of the Intel® MPI Library, please go to http://software.intel.com/en-us/articles/using-multiple-dapl-providers-with-the-intel-mpi-library for updated information.

Overview

A feature is available for the Intel® MPI Library when running on a Xeon Phi™ coprocessor.  You can now choose two DAPL providers to use for a single job.

Use Case

If you have one DAPL provider that is better for small messages and a different one is better for large messages, you can instruct Intel MPI to use the appropriate provider based on message size.

Details

Set I_MPI_DAPL_PROVIDER_LIST=<provider 1>,<provider 2>  This will enable using two providers.  This will modify the behavior of the following DAPL related environment variables:

  • I_MPI_DAPL_DIRECT_COPY_THRESHOLD (I_MPI_RDMA_EAGER_THRESHOLD, RDMA_IBA_EAGER_THRESHOLD)
  • I_MPI_DAPL_TRANSLATION_CACHE (I_MPI_RDMA_TRANSLATION_CACHE)
  • I_MPI_DAPL_TRANSLATION_CACHE_AVL_TREE
  • I_MPI_DAPL_CONN_EVD_SIZE (I_MPI_RDMA_CONN_EVD_SIZE, I_MPI_CONN_EVD_QLEN)
  • I_MPI_DAPL_RDMA_RNDV_WRITE (I_MPI_RDMA_RNDV_WRITE, I_MPI_USE_RENDEZVOUS_RDMA_WRITE)

Each of these variables will now take one or two (comma separated) values.  If one value is used, it will apply to both providers.  If two are used, the first will apply to the first provider and the second will apply to the second.  As an example:

export I_MPI_DAPL_PROVIDER_LIST=ofa-v2-mlx4_0-1,ofa-v2-scif0
export I_MPI_DAPL_TRANSLATION_CACHE=enable,disable

will turn on the memory registration cache for ofa-v2-mlx4_0-1 and turn it off for ofa-v2-scif0

Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.
Tags: