Intel® MPI Library

Making applications perform better on Intel® architecture-based clusters with multiple fabric flexibility

  • Performance Optimized MPI Library
  • Sustained Scalability – Low Latencies, Higher Bandwidth & Increased Processes
  • Full Hybrid Support for multicore & manycore systems

$499.00
Buy Now

Or Download a Free 30-Day Evaluation Version

Deliver Flexible, Efficient, and Scalable Cluster Messaging

Intel® MPI Library 4.1 focuses on making applications perform better on Intel® architecture-based clusters—implementing the high performance Message Passing Interface Version 2.2 specification on multiple fabrics. It enables you to quickly deliver maximum end user performance even if you change or upgrade to new interconnects, without requiring changes to the software or operating environment.

Use this high performance MPI message library to develop applications that can run on multiple cluster interconnects chosen by the user at runtime. Benefit from a free runtime environment kit for products developed with Intel® MPI library. Get excellent performance for enterprise, divisional, departmental, workgroup, and personal High Performance Computing.


Intel® MPI Library (Intel® MPI) provides reduced MPI latency which can result in faster throughput.
Click to enlarge

Top Features

  • Scalability Up To 120K Processes
  • Industry Leading Latency Performance
  • Interconnect Independence & Flexible Runtime Fabric Selection


Quotes

“Fast and accurate state of the art general purpose CFD solvers is the focus at S & I Engineering Solutions Pvt, Ltd. Scalability and efficiency are key to us when it comes to our choice and use of MPI Libraries. The Intel® MPI Library has enabled us to scale to over 10k cores with high efficiency and performance.”
Nikhil Vijay Shende, Director,
S & I Engineering Solutions, Pvt. Ltd.

Scalability

  • Scaling up to 120k Processes
  • Low overhead allows random access to portions of a trace, making it suitable for analyzing large amounts of performance data.
  • Thread safety allows you to trace multithreaded MPI applications for event-based tracing as well as non-MPI threaded applications.
  • Improved start scalability through the mpiexec.hydra process manager

Industry Leading MPI Library
Click to enlarge

Industry Leading MPI Library
Click to enlarge

Performance

  • Low latency MPI implementation up to 6.5 as fast as alternative MPI libraries
  • Deploy optimized shared memory dynamic connection mode for large SMP nodes
  • Increase performance with improved DAPL and OFA fabric support
  • Accelerate your applications using the enhanced tuning utility for MPI
FeatureBenefit
Increased MPI Performance and Scalability

New connection manager and auto-selection methods increase scalability over RDMA-based interconnects.  Improved support for NUMA applications and addition of advanced process pinning controls allow development and deployment for continued capacity growth of HPC systems.

Extended Scalability on Windows*

The highly scalable Hydra Process Manager is now available for Windows*-based clusters.  Use mpiexec.hydra for enabling low-latency RDMA devices through Microsoft’s Network Direct* interface.

Extended support for the Intel® Xeon Phi™ Coprocessor

Native port of the Tag Matching Interface (TMI) over the Qlogic* PSM fabric.  Extending support for Checkpoint/Restart (BLCR*) on the Intel® Xeon Phi™ coprocessor.

Latest Processor Support
Haswell, Ivy Bridge, Intel® Many Integrated Core Architecture

Intel consistently offers the first set of tools to take advantage of the latest performance enhancements in the newest Intel product, while preserving compatibility with older Intel and compatible processors. New support includes AVX2, TSX, FMA3 and AVX-512.

Scalability

Implementing the high performance version 2.2 of the MPI-2 specification on multiple fabrics, Intel® MPI Library 4.1 for Windows* and Linux* focuses on making applications perform better on IA-based clusters. Intel® MPI Library 4.1 enables you to quickly deliver maximum end-user performance, even if you change or upgrade to new interconnects without requiring major modifications to the software or to the operating environment. Intel also provides a free runtime environment kit for products developed with the Intel® MPI library.

Performance

Optimized shared memory path for multicore platforms allows more communication throughput and lower latencies. Native InfiniBand interface (OFED verbs) also provides support for lower latencies. Multi-rail capability for higher bandwidth and increased interprocess communication and Tag Matching Interface (TMI) support for higher performance on Qlogic* PSM and Myricom* MX interconnects.

Intel® MPI Library 4.1 Supports Multiple Hardware Fabrics

Whether you need to run TCP sockets, shared memory, or one of many Remote Direct Memory Access (RDMA) based interconnects, including InfiniBand*, Intel® MPI Library 4.1 covers all your configurations by providing an accelerated universal, multi-fabric layer for fast interconnects via the Direct Access Programming Library (DAPL*) or the Open Fabrics Association (OFA*) methodology. Develop MPI code independent of the fabric, knowing it will run efficiently on whatever fabric is chosen by the user at runtime.

Additionally, Intel® MPI Library 4.1 provides new levels of performance and flexibility for applications achieved through improved interconnect support for Myrinet* MX and QLogic* PSM interfaces, faster on-node messaging and an application tuning capability that adjusts to the cluster architecture and application structure.

Intel® MPI Library 4.1 dynamically establishes the connection, but only when needed, which reduces the memory footprint. It also automatically chooses the fastest transport available. Memory requirements are reduced by several methods including a two-phase communication buffer enlargement capability which allocates only the memory space actually required.

Purchase Options

Several suites are available combining the tools to build, verify and tune your application. The products covered in this product brief are highlighted in blue. Named-user or multi-user licenses along with volume, academic, and student discounts are available.


Click to enlarge

Technical Specifications

Feature Benefit
Processor support

Validated for use with multiple generations of Intel® and compatible processors including but not limited to: 2nd Generation Intel® Core™2 processor, Intel® Core™2 processor, Intel® Core™ processor, Intel® Xeon™ processor, and Intel® Xeon Phi Coprocessors

Operating systems

Windows* and Linux*

Programming languages

Natively supports C, C++ and Fortran development

System requirements

Please refer to www.intel.com/software/products/systemrequirements/ for details on hardware and software requirements.

Support

A free Runtime Environment Kit is available to run applications that were developed using Intel® MPI Library

All product updates, Intel® Premier Support services, and Intel® Support Forums are included for one year. Intel Premier Support gives you confidential support, technical notes, application notes, and the latest documentation. Join the Intel® Support Forums community to learn, contribute, or just browse! http://software.intel.com/en-us/forums

Try Tools from Intel

Download a free 30-day evaluation from: http://intel.ly/sw-tools-eval. Click on ‘Cluster Tools’ link.

Scalability

Implementing the high performance version 2.2 of the MPI-2 specification on multiple fabrics, Intel® MPI Library 4.1 for Windows* and Linux* focuses on making applications perform better on IA-based clusters. Intel® MPI Library enables you to quickly deliver maximum end-user performance, even if you change or upgrade to new interconnects without requiring major modifications to the software or to the operating environment. Intel also provides a free runtime environment kit for products developed with the Intel® MPI library.

Performance

Optimized shared memory path for multicore platforms allows more communication throughput and lower latencies. Native InfiniBand interface (OFED verbs) also provides support for lower latencies. Multi-rail capability for higher bandwidth and increased interprocess communication and Tag Matching Interface (TMI) support for higher performance on Qlogic* PSM and Myricom* MX interconnects.

Intel® MPI Library 4.1 Supports Multiple Hardware Fabrics

Whether you need to run TCP sockets, shared memory, or one of many Remote Direct Memory Access (RDMA) based interconnects, including InfiniBand*, Intel® MPI Library 4.1 covers all your configurations by providing an accelerated universal, multi-fabric layer for fast interconnects via the Direct Access Programming Library (DAPL*) or the Open Fabrics Association (OFA*) methodology. Develop MPI code independent of the fabric, knowing it will run efficiently on whatever fabric is chosen by the user at runtime.

Additionally, Intel® MPI Library 4.1 provides new levels of performance and flexibility for applications achieved through improved interconnect support for Myrinet* MX and QLogic* PSM interfaces, faster on-node messaging and an application tuning capability that adjusts to the cluster architecture and application structure.

Intel® MPI Library 4.1 dynamically establishes the connection, but only when needed, which reduces the memory footprint. It also automatically chooses the fastest transport available. Memory requirements are reduced by several methods including a two-phase communication buffer enlargement capability which allocates only the memory space actually required.

Purchase Options

Several suites are available combining the tools to build, verify and tune your application. The products covered in this product brief are highlighted in blue. Single or multi-user licenses along with volume, academic, and student discounts are available.


Click to enlarge

Technical Specifications

FeatureBenefit
Processor support

Validated for use with multiple generations of Intel® and compatible processors including but not limited to: 2nd Generation Intel® Core™2 processor, Intel® Core™2 processor, Intel® Core™ processor, Intel® Xeon™ processor, and Intel® Xeon Phi Coprocessors

Operating systems

Windows* and Linux*

Programming languages

Natively supports C, C++ and Fortran development

System requirements

Please refer to www.intel.com/software/products/systemrequirements/ for details on hardware and software requirements.

Support

A free Runtime Environment Kit is available to run applications that were developed using Intel® MPI Library

All product updates, Intel® Premier Support services, and Intel® Support Forums are included for one year. Intel Premier Support gives you confidential support, technical notes, application notes, and the latest documentation. Join the Intel® Support Forums community to learn, contribute, or just browse! http://software.intel.com/en-us/forums

Videos to help you get started.

Register for future Webinars


Previously recorded Webinars:

  • Profiling MPI Communications - Tips and Techniques for High Performance
  • Increase Cluster MPI Application Performance with a "MPI Tune" Up
  • MPI on Intel® Xeon Phi™ coprocessor

More Tech Articles

Enabling Connectionless DAPL UD in the Intel® MPI Library
By Gergana Slavova (Intel)Posted 05/07/20131
What is DAPL UD? Traditional InfiniBand* support involves MPI message transfer over the Reliable Connection (RC) protocol. While RC is long-standing and rich in functionality, it does have certain drawbacks: since it requires that each pair of processes setup a one-to-one connection at the start ...
Using Intel® MPI Library and Intel® Xeon Phi™ coprocessor tips
By Dmitry Sivkov (Intel)Posted 04/30/20132
1. Check prerequisites Each host and each Intel® Xeon Phi™ coprocessor should have a unique IP address across a cluster; ssh access between host(s) and Intel® Xeon Phi™ coprocessor(s) should be password-less; Update the Intel® Manycore Platform Software Stack (Intel® MPSS) to current version; Mak...
Controlling Process Placement with the Intel® MPI Library
By James Tullos (Intel)Posted 04/01/20130
When running an MPI program, process placement is critical to maximum performance.  Many applications can be sufficiently controlled with a simple process placement scheme, while some will require a more complex approach.  The Intel® MPI Library offers multiple options for controlling process pla...
Intel® Xeon Phi™ Coprocessor February Developer Webinar Q&A Responses
By robert-reed (Intel)Posted 03/20/20130
Response to our February session of the Intel® Xeon® and Xeon® Phi™ Introduction to High Performance Application Development for Multicore and Manycore-Live webinar was gratifying and overwhelming, but finally we worked through all of your questions.  Some of the questions required a context we l...

Pages

Subscribe to

Supplemental Documentation

Intel® Trace Collector Filtering
By James Tullos (Intel)Posted 03/14/20130
Filtering in the Intel® Trace Collector will apply specified filters to the trace collection process.  This directly reduces the amount of data collected.  The filter rules can be applied either via command line arguments or in a configuration file (specified by the environment variable VT_CONFIG...
Intel® MPI Library and Process Pinning on Xeon Phi™
By James Tullos (Intel)Posted 12/07/20120
Overview When running a hybrid Intel MPI/threaded program on a Xeon Phi™ coprocessor (either in native or symmetric mode), thread placement is just as important (if not more so) as on a standard Xeon" processor. Process Pinning VS. Thread Affinity Process pinning defines a set of processors on wh...
Using Two DAPL Providers for MPI on Xeon Phi™
By James Tullos (Intel)Posted 12/05/20120
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 Li...

Pages

Subscribe to

You can reply to any of the forum topics below by clicking on the title. Please do not include private information such as your email address or product serial number in your posts. If you need to share private information with an Intel employee, they can start a private thread for you.

New topic    Search within this forum     Subscribe to this forum


compiling problem: libmpi_mt.so vs libmpi.so
By Beichuan Y.8
Hi, 1. My hybrid mpi/openmpi code compiled with intelmpi-4.1.3.048 and intel-compilers-13.0.1 gives the following errors: mpiicpc -o paraEllip3d -O3 -DNDEBUG -openmp -mt_mpi  Assembly.o Boundary.o Contact.o Cylinder.o Fluid.o Parameter.o Particle.o Rectangle.o Spring.o Vec.o balanc.o const.o hqr.o main.o nrutil.o ran.o realtypes.o root6.o zrhqr.o -I/work4/projects/openmpi/boost-1.53.0-intelmpi-4.1.3.048-intel-compilers-13.0.1/include -L/work4/projects/openmpi/boost-1.53.0-intelmpi-4.1.3.048-intel-compilers-13.0.1/lib -lboost_mpi -lboost_serialization -lboost_timer -Wl,-rpath=/work4/projects/openmpi/boost-1.53.0-intelmpi-4.1.3.048-intel-compilers-13.0.1/lib ld: MPIR_Thread: TLS definition in /apps/intel/impi/4.1.3.048/intel64/lib/libmpi_mt.so section .tbss mismatches non-TLS definition in /apps/intel/impi/4.1.3.048/intel64/lib/libmpi.so.4 section .bss /apps/intel/impi/4.1.3.048/intel64/lib/libmpi.so.4: could not read symbols: Bad value make: *** [paraEllip3d] Error 1 2. However, it...
Linking libraries after the libraries added by the mpicxx wrapper linker
By Seunghwa Kang1
Hello, If I use mpicxx to link, it adds a set of libraries at the end. What flags should I provide to mpicxx or what environment variables should I set to link some libraries after the libraries provided by the wrapper? To be specific, I want to move -ltbb_debug -ltbbmalloc_proxy_debug -ltbbmalloc_debug in the following command (I got this by using mpicxx -v) after -lmpigc4 -lmpigf -lmpi_mt -lmpigi -ldl -lrt -lpthread -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc as I manually did in the last line. Can I do this by providing some flags to mpicxx or setting environment variables? /pic/apps/gcc/4.8.2/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.8.2/collect2 --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o biocellion.DP.SPAGENT.MPI.DEBUG /usr/lib/../lib64/crt1.o /usr/lib/../lib64/crti.o /pic/apps/gcc/4.8.2/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.8.2/crtbegin.o -L../sim -L../comm -L../chombo/amrelliptic -L../chombo/amrtimedependent -L../chombo/amrtools -L../...
MPI collect data from process in array
By prodigyaj@gmail.com2
Hi, I am trying to use mpi to split computations on n process on a array. So say process have computed the values for their ranges for eg: process 1: Array[1 to a1] process 2: Array[a1+1 to a2] process 3: Array[a2+1 to a3] process 4: Array[a3+1 to a4] What is the best way to send and receive data when it comes to arrays? Also can the same be applied it the processing of data is in contiguous memory locations? for eg: process1: Array[1,5,9,13 ...] ​process2: Array[2,6,10,14 ...] ​process3: Array[3,7,11,15 ...] ​process4: Array[4,8,12,16...] Thanks Ajay
Setting affinity for third party applications that create threads
By dehvidc15
Hope this is the correct forum to ask this question. We can use KMP_AFFINITY and associated infrastructure to set affinity for threads spawned by applications we've developed. And we can use numactl to bind a single-process third-party application to a core. What's available to bind threads spawned by a third-party process to a particular core? We can set what's effectively a CPU set using numactl for a third-party application. The threads spawned by a third-party process will stay within this CPU set but appear to move around between cores. I would be grateful for pointers on how we can bind threads spawned by a third-party process to a particular core Thanks David
mpiifort and 'end-of-file during read'
By Ines F.1
Hi, I'm trying to run an MPI code compiled with mpiifort. At the begenning of the code, while trying to open and read an ASCII file (the file is read by all processors) file_name = 'Donnees_Simulation.dat' Open(11,File = file_name) Read(11,*);Read(11,*)Unfortunately, I received this error where line 79 corresponds to the first Read applied to the imput file :  mkdir ${tmpdir};cd ${tmpdir} + mkdir /san/home/fenni/tmp.748461 + cd /san/home/fenni/tmp.748461 mpirun "${LOADL_STEP_INITDIR}"/myprog + mpirun '/san/work/fenni/Mycode/CodeFortranMPI/myprog' forrtl: severe (24): end-of-file during read, unit 11, file /san/home/fenni/tmp.748461/Donnees_Simulation.dat Image PC Routine Line Source myprog 0000000000FD722A Unknown Unknown Unknown myprog 0000000000FD5D26 Unknown Unknown Unknown myprog 0000000000F859F0 Unknown Unknown Unknown myprog ...
Running MPI over heterogeneuos Infiniband Nework
By Santak D.4
Hello, I have a setup of Infiniband network where we are testing the performance of FDRs. I have two FDRs on the sender and one FDR on each receiver. There are two receivers. The idea is to run parallel sends from the sender on each FDR and receive it at receiver. We were trying mvapich, but mvapich stated that they clearly don't support such a network. I was wondering if Intel MPI support such a network. And if we can do something like: mpirun -n 2 -hosts Sender,Receiver1 -env MV2_IBA_HCA=mlx4_0 ./exec : -n 2 -hosts Sender,Receiver2 -env MV2_IBA_HCA=mlx4_1 ./exec where mlx4_0 and mlx4_1 are the ids of the FDR cards. So I am trying to run ./exec parallel on different FDR cards to send data to both the receivers at the same time. Is this possible using Intel MPI. If someone has a similar setup then please let me know.   Thanks, Santak
Placing MPI ranks on the specific cores of Xeon Phi
By Shilpa B.1
Hi..Is it possible to place the MPI ranks on the specific cores of Xeon Phi (1-60) during the native mode computation. All that I understand is that the scheduler assigns ranks in round robin fashion on all the nodes starting from the first available core. Is it possible to overwrite this?
Using Intel MPI over Rdma over Converged Ethernet
By nishanth_sharma0
Hello All, I have been trying to run IMB over 40GigE RoCE using IntelMPI and OpenMPI. I could run it using OpenMPI using the following FAQ  https://www.open-mpi.org/faq/?category=openfabrics#ompi-over-roce. But I have been having issues running IMB using Intel MPI. I did not see many resources online. I have been trying to run it as follows. mpirun -n 40 -machinefile ./hostfile -dapl ./IMB-MPI1and it has been failing saying that "  dev.c:535 error Failed to open device context: No such device".  If I set the I_MPI_FABRICS to tcp its running over the gigE managment network and not over the RoCE interface. Any help would be greatly appreciated. Are there any resources about running applications using Intel MPI over RoCE. Regards      

Pages

Subscribe to Forums

Licensing

  • What kind of licenses are available for the Intel® MPI Library 4.1?
  • The Runtime license includes everything you need to run Intel MPI-based applications. The license is free and permanent. The Developer license includes everything needed to build and run applications. It is fee-based and permanent. It allows free redistribution of the components needed to run Intel MPI-based applications.

  • When is a Developer license required for the Intel® MPI Library 4.1?
  • The two kits (developer and runtime) can co-exist on a machine and it is fine for customers of Intel MPI-based applications to relink the application to include user subroutines. If the customer is actually writing MPI code (calling MPI_* functions directly), then a Developer license would be needed.

  • I am an ISV and am planning to ship my product with Intel MPI Library. Do my customers have to buy the Intel MPI Library Development Kit in order to use my software?
  • No. There are currently 3 different models if ISVs want to ship with Intel MPI Library.
    1) An ISV can redistribute the runtime components of the Intel MPI Library available from the development kit (see the redist.txt file in the Intel MPI Library installation directory for list of redistributable files).
    2) If a customer would rather install the Intel MPI Library as a system component, the Runtime Environment Kit can be downloaded free of charge from the Intel MPI Library product page.
    3) The Intel MPI Runtime Library can be pre-installed by the vendor and shipped with the application.

Downloads

Compatibility

  • Does the Intel® MPI Library 4.1 support 32-bit applications on 64-bit operating systems?
  • Yes. The Intel® MPI Library 4.1 supports 32-bit apps on 64-bit operating systems on Intel® 64.

  • Can the Intel® MPI Library 4.1 handle a mixed 32/64-bit job?
  • No. The Intel MPI Library does not support these types of heterogeneous configurations. All ranks of the job must be either IA-32, Intel® 64, or Intel® Many Integrated Core (MIC) Architecture based.

  • Is there a Microsoft* Windows* version of the Intel® MPI Library 4.1?
  • Yes. The Intel MPI Library 4.1 for Windows is available now.

  • Does the Intel MPI Library run on AMD platforms?
  • Yes. The Intel® MPI Library 4.1 is known to run on AMD platforms, and we have had no issue reports specific to AMD platforms so far.

  • Does the Intel® MPI Library 4.1 support parallel I/O calls?
  • Yes. The parallel file I/O part of the MPI-2 standard is fully implemented by the Intel® MPI Library 4.1. Some of the currently supported file systems include Unix File System (UFS), Network File System (NFS), Parallel Virtual File System (PVFS2), and Lustre*.  For a complete list, check the Release Notes.

  • Does the Intel® MPI Library 4.1 support one-sided communication?
  • Yes. The Intel® MPI Library 4.1 supports both active target and passive target one-sided communication. The only exception is the passive target one-sided communication in case the target process does not call any MPI functions.

  • Does the Intel® MPI Library 4.1 support heterogeneous clusters?
  • Up to a certain extent.  The Intel® MPI Library 4.1 does not support clusters running different operating systems.  But it does support an environment of mixed Intel processors and provides some default optimizations depending on the detected architecture.

  • What DAPL* version does the Intel® MPI Library 4.1 support?
  • The Intel® MPI Library 4.1 uses Direct Access Programming Library (DAPL) as a fabric independent API to run on fast interconnects like InfiniBand* or Myrinet*. Currently the Intel MPI Library supports DAPL* version 1.1, 1.2 as well as DAPL* version 2.0-capable providers. Intel MPI automatically determines version of DAPL standard to which the provider conforms.

  • What compilers does the Intel® MPI Library 4.1 support?
  • The Intel® MPI Library 4.1 supports Intel® Compilers 11.1 through 12.1 (or higher), as well as GNU* C, C++, Fortran77 3.3 or higher, and GNU* Fortran95 4.0 or higher. Additionally, the Intel® MPI Library 4.1 provides an unbundled source kit that offers support for the PGI* C, PGI* Fortran 77, and Absoft* Fortran 77 compilers out of the box, with the following caveats:

    • Your PGI* compiled source files must not transfer long double entities
    • Your Absoft* based build procedure must use the -g77, -B108 compiler option
    • You must take care of installing and selecting the right compilers yourself
    • You must make sure that the respective compiler runtime is installed on all nodes

    You may have to build extra Intel® MPI binding libraries if you need support for PGI* C++, PGI* Fortran 95, and Absoft* Fortran 95 bindings. If you need access to this additional binding kit, contact us via the Intel® Premier Support portal @ http://premier.intel.com

  • Does the Intel® MPI Library 4.1 work with any common resource managers?
  • Yes. The Intel® MPI Library 4.1 supports OpenPBS*, PBS Pro*, Torque, and LSF* job schedulers. The simplified job startup command mpirun recognizes when it is run inside a session started by any PBS compatible resource manager (like OpenPBS*, PBS Pro*, Torque*), as well as LSF*. See the Intel® MPI Library 4.1 Reference Manual for a description of this command.

  • I have a mixed application which uses both MPI and OpenMP* calls. Does the Intel® MPI Library 4.1 support this type of hybrid functionality?
  • Yes, Intel MPI does support mixed MPI/OpenMP applications.

Technical

  • Is the Intel® MPI Library 4.1 fault-tolerant?
  • Yes, to an extent. Note that the MPI standard does not yet define proper handling of aborted MPI ranks. By default, the Intel® MPI Library 4.1 will stop the entire application if any of the processes exit abnormally. This behavior can be overwritten via a runtime option where the library does allow for an application to continue execution even if one of the processes stops responding. Check the Intel® MPI Library 4.1 Reference Manual for details and application requirements.

  • Is the Intel® MPI Library 4.1 thread safe?
  • Yes. The Intel® MPI Library 4.1 introduces thread safe libraries at level MPI_THREAD_MULTIPLE since version 3.0. Several threads can make the Intel MPI Library calls simultaneously. Use the compiler driver -mt_mpi option to link the thread safe version of the Intel MPI Library. Use the thread safe libraries if you request the thread support at the following levels:

    MPI_THREAD_FUNNELED,
    MPI_THREAD_SERIALIZED, or
    MPI_THREAD_MULTIPLE.

    The previous versions of the Intel MPI Library provide only MPI_THREAD_NONE and MPI_THREAD_FUNNELED levels in terms of the MPI-2 standard.

  • How to learn what version of the Intel® MPI Library is installed on the system?
  • Provided you run the Intel® MPI Library 2.0.x, try running mpiexec –V:

    mpiexec –V
    This will output version information.

    If this is an official package, look up the mpisupport.txt file or the Release Notes and search for a version information there:
    cat /opt/intel/mpi/2.0.1/mpisupport.txt

    If Intel MPI has been installed in RPM mode, try to query the RPM database:
    rpm –qa | grep intel-mpi

    Finally, for full build identification information, set I_MPI_VERSION to 1 and run any MPI program, grepping for "Build":
    mpiexec –n 2 –env ./a.out | grep –i build
    This will turn up a couple of lines with the build date. Most of this information is also imbedded into the library and can be queried using the strings utility:
    strings /opt/intel/mpi/2.0.1/lib/libmpi.so | grep –i build

Licensing

  • What kind of licenses are available for the Intel® MPI Library 4.1?
  • The Runtime license includes everything you need to run Intel MPI-based applications. The license is free and permanent. The Developer license includes everything needed to build and run applications. It is fee-based and permanent. It allows free redistribution of the components needed to run Intel MPI-based applications.

  • When is a Developer license required for the Intel® MPI Library 4.1?
  • The two kits (developer and runtime) can co-exist on a machine and it is fine for customers of Intel MPI-based applications to relink the application to include user subroutines. If the customer is actually writing MPI code (calling MPI_* functions directly), then a Developer license would be needed.

  • I am an ISV and am planning to ship my product with Intel MPI Library. Do my customers have to buy the Intel MPI Library Development Kit in order to use my software?
  • No. There are currently 3 different models if ISVs want to ship with Intel MPI Library.
    1) An ISV can redistribute the runtime components of the Intel MPI Library available from the development kit (see the redist.txt file in the Intel MPI Library installation directory for list of redistributable files).
    2) If a customer would rather install the Intel MPI Library as a system component, the Runtime Environment Kit can be downloaded free of charge from the Intel MPI Library product page.
    3) The Intel MPI Runtime Library can be pre-installed by the vendor and shipped with the application.

Compatibility

  • Does the Intel® MPI Library 4.1 support 32-bit applications on 64-bit operating systems?
  • Yes. The Intel® MPI Library 4.1 supports 32-bit apps on 64-bit operating systems on Intel® 64.

  • Can the Intel® MPI Library 4.1 handle a mixed 32/64-bit job?
  • No. The Intel MPI Library does not support these types of heterogeneous configurations. All ranks of the job must be either IA-32, Intel® 64, or Intel® Many Integrated Core (MIC) Architecture based.

  • Is there a Microsoft* Windows* version of the Intel® MPI Library 4.1?
  • Yes. The Intel MPI Library 4.1 for Windows is available now.

  • Does the Intel MPI Library run on AMD platforms?
  • Yes. The Intel® MPI Library 4.1 is known to run on AMD platforms, and we have had no issue reports specific to AMD platforms so far.

  • Does the Intel® MPI Library 4.1 support parallel I/O calls?
  • Yes. The parallel file I/O part of the MPI-2 standard is fully implemented by the Intel® MPI Library 4.1. Some of the currently supported file systems include Unix File System (UFS), Network File System (NFS), Parallel Virtual File System (PVFS2), and Lustre*.  For a complete list, check the Release Notes.

  • Does the Intel® MPI Library 4.1 support one-sided communication?
  • Yes. The Intel® MPI Library 4.1 supports both active target and passive target one-sided communication. The only exception is the passive target one-sided communication in case the target process does not call any MPI functions.

  • Does the Intel® MPI Library 4.1 support heterogeneous clusters?
  • Up to a certain extent.  The Intel® MPI Library 4.1 does not support clusters running different operating systems.  But it does support an environment of mixed Intel processors and provides some default optimizations depending on the detected architecture

  • What DAPL* version does the Intel® MPI Library 4.1 support?
  • The Intel® MPI Library 4.1 uses Direct Access Programming Library (DAPL) as a fabric independent API to run on fast interconnects like InfiniBand* or Myrinet*. Currently the Intel MPI Library supports DAPL* version 1.1, 1.2 as well as DAPL* version 2.0-capable providers. Intel MPI automatically determines version of DAPL standard to which the provider conforms.

  • What compilers does the Intel® MPI Library 4.1 support?
  • The Intel® MPI Library 4.1 supports Intel® Compilers 11.1 through 12.1 (or higher), as well as GNU* C, C++, Fortran77 3.3 or higher, and GNU* Fortran95 4.0 or higher. Additionally, the Intel® MPI Library 4.1 provides an unbundled source kit that offers support for the PGI* C, PGI* Fortran 77, and Absoft* Fortran 77 compilers out of the box, with the following caveats:

    • Your PGI* compiled source files must not transfer long double entities
    • Your Absoft* based build procedure must use the -g77, -B108 compiler option
    • You must take care of installing and selecting the right compilers yourself
    • You must make sure that the respective compiler runtime is installed on all nodes

    You may have to build extra Intel® MPI binding libraries if you need support for PGI* C++, PGI* Fortran 95, and Absoft* Fortran 95 bindings. If you need access to this additional binding kit, contact us via the Intel® Premier Support portal @ http://premier.intel.com

  • Does the Intel® MPI Library 4.1 work with any common resource managers?
  • Yes. The Intel® MPI Library 4.1 supports OpenPBS*, PBS Pro*, Torque, and LSF* job schedulers. The simplified job startup command mpirun recognizes when it is run inside a session started by any PBS compatible resource manager (like OpenPBS*, PBS Pro*, Torque*), as well as LSF*. See the Intel® MPI Library 4.1 Reference Manual for a description of this command.

  • I have a mixed application which uses both MPI and OpenMP* calls. Does the Intel® MPI Library 4.1 support this type of hybrid functionality?
  • Yes, Intel MPI does support mixed MPI/OpenMP applications.

Technical

  • Is the Intel® MPI Library 4.1 fault-tolerant?
  • Yes, to an extent. Note that the MPI standard does not yet define proper handling of aborted MPI ranks. By default, the Intel® MPI Library 4.1 will stop the entire application if any of the processes exit abnormally. This behavior can be overwritten via a runtime option where the library does allow for an application to continue execution even if one of the processes stops responding. Check the Intel® MPI Library 4.1 Reference Manual for details and application requirements.

  • Is the Intel® MPI Library 4.1 thread safe?
  • Yes. The Intel® MPI Library 4.1 introduces thread safe libraries at level MPI_THREAD_MULTIPLE since version 3.0. Several threads can make the Intel MPI Library calls simultaneously. Use the compiler driver -mt_mpi option to link the thread safe version of the Intel MPI Library. Use the thread safe libraries if you request the thread support at the following levels:

    MPI_THREAD_FUNNELED,
    MPI_THREAD_SERIALIZED, or
    MPI_THREAD_MULTIPLE.

    The previous versions of the Intel MPI Library provide only MPI_THREAD_NONE and MPI_THREAD_FUNNELED levels in terms of the MPI-2 standard.

  • How to learn what version of the Intel® MPI Library is installed on the system?
  • Provided you run the Intel® MPI Library 2.0.x, try running mpiexec –V:

    mpiexec –V
    This will output version information.

    If this is an official package, look up the mpisupport.txt file or the Release Notes and search for a version information there:
    cat /opt/intel/mpi/2.0.1/mpisupport.txt

    If Intel MPI has been installed in RPM mode, try to query the RPM database:
    rpm –qa | grep intel-mpi

    Finally, for full build identification information, set I_MPI_VERSION to 1 and run any MPI program, grepping for "Build":
    mpiexec –n 2 –env ./a.out | grep –i build
    This will turn up a couple of lines with the build date. Most of this information is also imbedded into the library and can be queried using the strings utility:
    strings /opt/intel/mpi/2.0.1/lib/libmpi.so | grep –i build

Intel® MPI Library 4.1

Getting Started?

Click the Learn tab for guides and links that will quickly get you started.

Get Help or Advice

Search Support Articles
Forums - The best place for timely answers from our technical experts and your peers. Use it even for bug reports.
Support - For secure, web-based, engineer-to-engineer support, visit our Intel® Premier Support web site. Intel Premier Support registration is required.
Download, Registration and Licensing Help - Specific help for download, registration, and licensing questions.

Resources

Release Notes - View Release Notes online!
Intel® MPI Library Product Documentation  - View documentation online!
Documentation for other software products

Featured Support Topics

No Content Found