Intel® MPI Benchmarks 4.0
This section provides changes for the Intel® MPI Benchmarks as compared to the previous versions of this product.
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.2.4:
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.2.3:
Changes of document layout.
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.2.2:
Option -msglog to control the message length. Use this option to control the maximum and the second largest minimum of the message transfer sizes. The minimum message transfer size is always 0.
Thread safety support in the MPI initialization phase. Use MPI_Init()by default because it is supported for all MPI implementations. You can choose MPI_Init_thread() by defining the appropriate macro.
Option –thread_level to specify the desired thread level support for MPI_Init_thread.
Support for the Microsoft* Visual Studio* 2010 project folder.
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.2.1:
Support for large buffers greater than 2 GB for some MPI collective benchmarks (Allgather, Alltoall, Scatter, Gather) to support large core counts.
New benchmarks: PingPongSpecificSource and PingPingSpecificSource. The exact destination rank is used for these tests instead of MPI_ANY_SOURCE as in the PingPong and PingPing benchmarks. These are not executed by default. Use the -include option to enable the new benchmarks. For example,
New options -include/-exclude for better control over the benchmarks list. Use these options to include or exclude benchmarks from the default execution list.
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.2:
Fix of the memory corruption issue when the command-line option -msglen is used with the Intel® MPI Benchmarks executable files.
Fix in the accumulated benchmark related to using the CHECK conditional compilation macro.
Fix for the integer overflow in dynamic calculations on the number of iterations.
Recipes for building IA-32 executable files within Microsoft* Visual Studio* 2005 and Microsoft* Visual Studio* 2008 project folders associated with the Intel® MPI Benchmarks.
Intel® MPI Benchmarks 3.2 has the following changes as compared to the previous version:
The default settings are different.
Microsoft* Visual Studio* project folders are added and can be used on the Microsoft* Windows* platforms.
Makefiles for the Microsoft* Windows* nmake utility provided with the Intel® MPI Benchmarks 3.1 are removed.
The improved run time control that is associated with the –time flag. This is the default value for the Intel® MPI Benchmarks executable files (with a maximum run time per sample set to 10 seconds by the SECS_PER_SAMPLE parameter in the include file IMB_settings.h).
The nmake files for Windows* OS were removed and replaced by Microsoft* Visual Studio* solutions.
The Linux* OS Makefiles received new targets:
Target MPI1 (default) for building IMB-MPI1
Target EXT for building IMB-EXT
Target IO for building IMB-IO
Target all for building all three of the above
Intel® MPI Benchmarks 3.2 contains Microsoft* Visual Studio* solutions based on an installation of the Intel® MPI Library. A dedicated folder is created for the Microsoft* Windows* OS without duplicating source files. The solutions refer to the source files that are located at their standard location within the Intel® MPI Benchmarks directory structure.
As such solutions are highly version-dependent, see the information in the corresponding ReadMe.txt files that unpack with the folder. You are recommended to learn about the Microsoft* Visual Studio* philosophy and the run time environment of your Windows cluster.
This release includes the following updates as compared to the Intel® MPI Benchmarks 3.0:
New control flags
Better control of the overall repetition counts, run time, and memory exploitation
A facility to avoid cache re-usage of message buffers as far as possible
A fix of IMB-IO semantics
New benchmarks
Gather
Gatherv
Scatter
Scatterv
New command-line flags for better control
-off_cache
Use this flag when measuring performance on high speed interconnects or, in particular, across the shared memory within a node. Traditional Intel® MPI Benchmarks results included a very beneficial cache re-usage of message buffers which led to idealistic results. The flag -off_cache allows avoiding cache effects and lets the Intel® MPI Benchmarks use message buffers which are very likely not resident in cache.
-iter, -time
Use these flags for enhanced control of the overall run time, which is crucial for large clusters, where collectives tend to run extremely long in the traditional Intel® MPI Benchmarks settings.
CAUTION
In the Intel® MPI Benchmarks, the -time flag has been implemented as default.
-mem
Use this flag to determine an a priori maximum (per process) memory usage of the Intel® MPI Benchmarks for the overall message buffers.
In the Exchange benchmark, the two buffers sent by MPI_Isend are separate. The command line is repeated in the output. Memory management is completely encapsulated in the functions IMB_v_alloc/IMB_v_free.
This release includes the following updates as compared to the Intel® MPI Benchmarks 2.3:
A call to the MPI_Init_thread function to determine the MPI threading environment. The MPI threading environment is reported each time an Intel® MPI Benchmark application is executed.
A call to the function MPI_Get_version to report the version of the Intel MPI library implementation that the three benchmark applications are linking to.
New Alltoallv benchmark.
New command-line flag -h[elp] to display the calling sequence for each benchmark application.
Removal of the outdated Makefile templates. There are three complete makefiles called Makefile, make_ict, and make_mpich. The make_ict option uses the Intel® Composer XE compilers. This option is available for both Intel and non-Intel microprocessors but it may result in additional optimizations for Intel microprocessors.
Better command-line argument checking, clean message and break on most invalid arguments.
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. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice. Notice revision #20110804 |