Intel® MPI Library for Windows* OS User’s Guide Copyright © 2003–2014 Intel Corporation All Rights Reserved Document Number: 316404-011
Contents 1. Introduction ........................................................................................................................ 3 1.1. Introducing Intel® MPI Library ................................................................................... 3 1.2. Intended Audience .................................................................................................... 3 1.3. Notational Conventions ........................................................................................
Disclaimer and Legal Notices INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT.
Optimization Notice Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors.
1. Introduction This User’s Guide explains how to use the Intel® MPI Library to compile and run a simple MPI program. This guide also includes basic usage examples and troubleshooting tips. To quickly start using the Intel® MPI Library, print this short guide and walk through the example provided.
Intel® MPI Library User’s Guide for Windows* OS { item | item } (SDK only) Selectable items separated by vertical bar(s) For Software Development Kit (SDK) users only 1.4. Related Information To get more information about the Intel® MPI Library, explore the following resources: The Intel® MPI Library Release Notes include key product details. See the Intel® MPI Library Release Notes for updated information on requirements, technical support, and known limitations.
2. Using Intel®MPI Library This section describes the basic Intel® MPI Library usage model and demonstrates typical usages of the Intel® MPI Library. 2.1. Usage Model Using the Intel® MPI Library involves the following steps: (SDK only) Compile and link your application Set up Hydra service Select network fabric or device Run your MPI program Figure 1: Flowchart representing the usage model for working with the Intel® MPI Library. 2.2. Before You Begin 1.
Intel® MPI Library User’s Guide for Windows* OS 3. Ensure that you have administrator privileges on all nodes of the cluster to start the Hydra service on all nodes of the cluster. 2.3. Quick Start To start using the Intel® MPI Library: 1. Set the environment settings: use the call batch command to run the mpivars.bat batch scripts in the \intel64\bin directory for the Intel® 64 architecture. 2. Ensure the Hydra services are installed and started on compute nodes: a.
Using the Intel(R) MPI Library 2.4. Compiling and Linking (SDK only) To compile and link an MPI program with the Intel® MPI Library do the following steps: 1. Create a Winxx Console project for Microsoft* Visual Studio*. 2. Choose the x64 solution platform. 3. Add \intel64\include to the include path. 4. Add \intel64\lib to the library path. 5. Add impi.lib (Release) or impid.lib (Debug) to your target link command for C applications. 6. Add impi.lib and impicxx.
Intel® MPI Library User’s Guide for Windows* OS 2.6. Selecting a Network Fabric The Intel® MPI Library dynamically selects different fabrics for communication between MPI processes. To select a specific fabric combination, set the I_MPI_FABRICS environment variable. 2.6.1. I_MPI_FABRICS Select a particular network fabric to be used for communication.
Using the Intel(R) MPI Library 2.7. Running an MPI Program To launch programs linked with the Intel® MPI Library use the mpiexec command: > mpiexec.exe -n <# of processes> myprog.exe The wmpiexec utility is a GUI wrapper for mpiexec.exe. See the Intel® MPI Library Reference Manual for more details. To set the number of processes on the local node, use the only required mpiexec -n option. To set names of hosts and number of processes, use the -hosts option : > mpiexec.exe -hosts 2 host1 2 host2 2 myprog.
Intel® MPI Library User’s Guide for Windows* OS Suppose that the geometry is <#ranks> = 4 and <#nodes> = 2, where adjacent pairs of ranks are assigned to each node (for example, for two-way SMP nodes). To see the cluster nodes, enter the command: type machines.Windows The results should look as follows: clusternode1 clusternode2 To equally distribute four processes of the application on two-way SMP clusters, enter the following command: mpiexec -n 2 -host clusternode1 .\testf : -n 2 -host clusternode2 .
3. Troubleshooting This section explains how to test the Intel® MPI Library installation and how to run a test program. 3.1. Testing Installation To ensure that the Intel® MPI Library is installed and functioning, complete a general testing, compile and run a test program. To test the installation: 1. Verify through the Computer Management that the Hydra service is started. It calls the Intel MPI Process Manager. 2.
Intel® MPI Library User’s Guide for Windows* OS You should see one line of output for each rank, as well as debug output indicating the TCP/IPcapable network fabric is being used. 5. Test the shared-memory and DAPL-capable network fabrics using: $ mpiexec -n 2 -env I_MPI_DEBUG 2 -env I_MPI_FABRICS shm:dapl ./myprog You should see one line of output for each rank, as well as debug output indicating the sharedmemory and DAPL-capable network fabrics are being used. 6.