diff --git a/Makefile b/Makefile
index 269cb0ca..0e375f32 100644
--- a/Makefile
+++ b/Makefile
@@ -50,31 +50,31 @@
all: IMB-MPI1 IMB-NBC IMB-RMA IMB-EXT IMB-IO IMB-MT IMB-P2P
IMB-MPI1:
- make -j 8 -C src_cpp -f Makefile TARGET=MPI1
+ make -C src_cpp -f Makefile TARGET=MPI1
@cp src_cpp/IMB-MPI1 .
IMB-NBC:
- make -j 8 -C src_cpp -f Makefile TARGET=NBC
+ make -C src_cpp -f Makefile TARGET=NBC
@cp src_cpp/IMB-NBC .
IMB-EXT:
- make -j 8 -C src_cpp -f Makefile TARGET=EXT
+ make -C src_cpp -f Makefile TARGET=EXT
@cp src_cpp/IMB-EXT .
IMB-RMA:
- make -j 8 -C src_cpp -f Makefile TARGET=RMA
+ make -C src_cpp -f Makefile TARGET=RMA
@cp src_cpp/IMB-RMA .
IMB-IO:
- make -j 8 -C src_cpp -f Makefile TARGET=IO
+ make -C src_cpp -f Makefile TARGET=IO
@cp src_cpp/IMB-IO .
IMB-MT: | IMB-MPI1
- make -j 8 -C src_cpp -f Makefile TARGET=MT
+ make -C src_cpp -f Makefile TARGET=MT
@cp src_cpp/IMB-MT .
IMB-P2P:
- make -j 8 -C src_c/P2P -f Makefile TARGET=P2P
+ make -C src_c/P2P -f Makefile TARGET=P2P
@cp src_c/P2P/IMB-P2P .
diff --git a/README.md b/README.md
index 05f45f06..849b87ff 100644
--- a/README.md
+++ b/README.md
@@ -63,9 +63,14 @@ files and folders appear on your system:
----------
What's New
----------
+New in Intel(R) MPI Benchmarks 2019 Update 4
+--------------------------------------------
+- Bug fixes.
+
New in Intel(R) MPI Benchmarks 2019 Update 3
----------------------------------------
- Added the warm_up option that enabled additional cycles before running benchmark(for all size.)
+- Added a new benchmark Reduce_local for IMB-MPI1.
- Bug fixes.
New in Intel(R) MPI Benchmarks 2019 Update 2
diff --git a/ReadMe_IMB.txt b/ReadMe_IMB.txt
index de069f93..7c92f5f8 100644
--- a/ReadMe_IMB.txt
+++ b/ReadMe_IMB.txt
@@ -1,5 +1,5 @@
--------------------------------------
-Intel(R) MPI Benchmarks 2019 Update 3
+Intel(R) MPI Benchmarks 2019 Update 4
README
--------------------------------------
@@ -62,14 +62,20 @@ files and folders appear on your system:
----------
What's New
----------
+New in Intel(R) MPI Benchmarks 2019 Update 4
+--------------------------------------------
+- Bug fixes.
+
+
New in Intel(R) MPI Benchmarks 2019 Update 3
-----------------------------------------
+--------------------------------------------
- Added the warm_up option that enabled additional cycles before running benchmark(for all size.)
+- Added a new benchmark Reduce_local for IMB-MPI1.
- Bug fixes.
New in Intel(R) MPI Benchmarks 2019 Update 2
-----------------------------------------
+--------------------------------------------
- New IMB-P2P benchmarks.
- Added the Reduce_local benchmark for IMB-MPI1.
- Deleted the alignment option (-alignment).
@@ -78,7 +84,7 @@ New in Intel(R) MPI Benchmarks 2019 Update 2
New in Intel(R) MPI Benchmarks 2019 Update 1
-----------------------------------------
+--------------------------------------------
- Added the Reduce_scatter_block benchmark for IMB-MPI1.
- Added the aggregate_mode option that specifies the mode for IMB-IO, IMB-EXT and IMB-RMA.
- Added the alignment option that controls buffer alignment.
@@ -88,7 +94,7 @@ New in Intel(R) MPI Benchmarks 2019 Update 1
New in Intel(R) MPI Benchmarks 2019
-----------------------------------------
+-----------------------------------
- New IMB-MT benchmarks.
The benchmarks implement the multi-threaded version of IMB-MPI1
benchmarks using the OpenMP* paradigm.
diff --git a/WINDOWS/IMB-EXT_VS_2013/IMB-EXT.vcxproj b/WINDOWS/IMB-EXT_VS_2013/IMB-EXT.vcxproj
index fcd1192e..ec77ba62 100644
--- a/WINDOWS/IMB-EXT_VS_2013/IMB-EXT.vcxproj
+++ b/WINDOWS/IMB-EXT_VS_2013/IMB-EXT.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,12 +71,13 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -86,7 +87,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,12 +97,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-EXT_VS_2015/IMB-EXT.vcxproj b/WINDOWS/IMB-EXT_VS_2015/IMB-EXT.vcxproj
index 60675893..038173ba 100644
--- a/WINDOWS/IMB-EXT_VS_2015/IMB-EXT.vcxproj
+++ b/WINDOWS/IMB-EXT_VS_2015/IMB-EXT.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,12 +71,13 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -86,7 +87,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,12 +97,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-EXT_VS_2017/IMB-EXT.vcxproj b/WINDOWS/IMB-EXT_VS_2017/IMB-EXT.vcxproj
index 40c1714d..5e43bd1f 100644
--- a/WINDOWS/IMB-EXT_VS_2017/IMB-EXT.vcxproj
+++ b/WINDOWS/IMB-EXT_VS_2017/IMB-EXT.vcxproj
@@ -13,7 +13,7 @@
{4219D5A9-6972-4B1C-9F07-EB97EEF4EDDA}
IMBEXT
- Win32Proj
+ Win32Proj
10.0.15063.0
@@ -59,8 +59,8 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -73,13 +73,14 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -89,8 +90,8 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;EXT;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -100,13 +101,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-IO_VS_2013/IMB-IO.vcxproj b/WINDOWS/IMB-IO_VS_2013/IMB-IO.vcxproj
index e6dd7dfe..649c0b62 100644
--- a/WINDOWS/IMB-IO_VS_2013/IMB-IO.vcxproj
+++ b/WINDOWS/IMB-IO_VS_2013/IMB-IO.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-IO_VS_2015/IMB-IO.vcxproj b/WINDOWS/IMB-IO_VS_2015/IMB-IO.vcxproj
index 31219a0e..482741e5 100644
--- a/WINDOWS/IMB-IO_VS_2015/IMB-IO.vcxproj
+++ b/WINDOWS/IMB-IO_VS_2015/IMB-IO.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-IO_VS_2017/IMB-IO.vcxproj b/WINDOWS/IMB-IO_VS_2017/IMB-IO.vcxproj
index f19343ed..06f8f2d7 100644
--- a/WINDOWS/IMB-IO_VS_2017/IMB-IO.vcxproj
+++ b/WINDOWS/IMB-IO_VS_2017/IMB-IO.vcxproj
@@ -13,7 +13,7 @@
{8FDAF9E9-C2F3-443A-B86C-FC0A04DB7713}
IMBIO
- Win32Proj
+ Win32Proj
10.0.15063.0
@@ -59,8 +59,8 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,11 +71,12 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -85,8 +86,8 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;MPIIO;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,13 +97,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MPI1_VS_2013/IMB-MPI1.vcxproj b/WINDOWS/IMB-MPI1_VS_2013/IMB-MPI1.vcxproj
index 7b776706..49dd35d3 100644
--- a/WINDOWS/IMB-MPI1_VS_2013/IMB-MPI1.vcxproj
+++ b/WINDOWS/IMB-MPI1_VS_2013/IMB-MPI1.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MPI1_VS_2015/IMB-MPI1.vcxproj b/WINDOWS/IMB-MPI1_VS_2015/IMB-MPI1.vcxproj
index 904176d4..4aa6dd79 100644
--- a/WINDOWS/IMB-MPI1_VS_2015/IMB-MPI1.vcxproj
+++ b/WINDOWS/IMB-MPI1_VS_2015/IMB-MPI1.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MPI1_VS_2017/IMB-MPI1.vcxproj b/WINDOWS/IMB-MPI1_VS_2017/IMB-MPI1.vcxproj
index f363a089..dd411fd7 100644
--- a/WINDOWS/IMB-MPI1_VS_2017/IMB-MPI1.vcxproj
+++ b/WINDOWS/IMB-MPI1_VS_2017/IMB-MPI1.vcxproj
@@ -59,7 +59,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
true
@@ -71,11 +71,12 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -85,7 +86,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MPI1;%(PreprocessorDefinitions)
MultiThreaded
@@ -96,13 +97,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MT_VS_2013/IMB-MT.vcxproj b/WINDOWS/IMB-MT_VS_2013/IMB-MT.vcxproj
index 493b668c..09b5c679 100644
--- a/WINDOWS/IMB-MT_VS_2013/IMB-MT.vcxproj
+++ b/WINDOWS/IMB-MT_VS_2013/IMB-MT.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MT_VS_2015/IMB-MT.vcxproj b/WINDOWS/IMB-MT_VS_2015/IMB-MT.vcxproj
index 1838548b..6eea4ecf 100644
--- a/WINDOWS/IMB-MT_VS_2015/IMB-MT.vcxproj
+++ b/WINDOWS/IMB-MT_VS_2015/IMB-MT.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,10 +69,11 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -82,7 +83,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -92,12 +93,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-MT_VS_2017/IMB-MT.vcxproj b/WINDOWS/IMB-MT_VS_2017/IMB-MT.vcxproj
index 5c61ca41..d33cf757 100644
--- a/WINDOWS/IMB-MT_VS_2017/IMB-MT.vcxproj
+++ b/WINDOWS/IMB-MT_VS_2017/IMB-MT.vcxproj
@@ -59,7 +59,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
true
@@ -71,11 +71,12 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -85,7 +86,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
$(ProjectDir)\..\..\src_cpp;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;MT;%(PreprocessorDefinitions)
MultiThreaded
@@ -96,13 +97,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-NBC_VS_2013/IMB-NBC.vcxproj b/WINDOWS/IMB-NBC_VS_2013/IMB-NBC.vcxproj
index 97c8215a..4955619c 100644
--- a/WINDOWS/IMB-NBC_VS_2013/IMB-NBC.vcxproj
+++ b/WINDOWS/IMB-NBC_VS_2013/IMB-NBC.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,12 +71,13 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -86,7 +87,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,12 +97,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-NBC_VS_2015/IMB-NBC.vcxproj b/WINDOWS/IMB-NBC_VS_2015/IMB-NBC.vcxproj
index 9cfeea49..61aa9e75 100644
--- a/WINDOWS/IMB-NBC_VS_2015/IMB-NBC.vcxproj
+++ b/WINDOWS/IMB-NBC_VS_2015/IMB-NBC.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,12 +71,13 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -86,7 +87,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,12 +97,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-NBC_VS_2017/IMB-NBC.vcxproj b/WINDOWS/IMB-NBC_VS_2017/IMB-NBC.vcxproj
index 9f81e1eb..d3a5cd02 100644
--- a/WINDOWS/IMB-NBC_VS_2017/IMB-NBC.vcxproj
+++ b/WINDOWS/IMB-NBC_VS_2017/IMB-NBC.vcxproj
@@ -13,7 +13,7 @@
{4219D5A9-6972-4B1C-9F07-EB97EEF4EDDA}
IMBNBC
- Win32Proj
+ Win32Proj
10.0.15063.0
@@ -59,8 +59,8 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -73,13 +73,14 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -89,8 +90,8 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;NBC;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -100,13 +101,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.rc b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.rc
new file mode 100755
index 00000000..9ef548fb
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.rc
@@ -0,0 +1,102 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "afxres.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+#ifdef _WIN32
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif //_WIN32
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""afxres.h""\r\n"
+ "\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 2019,0,2,0
+ PRODUCTVERSION 2019,0,2,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "CompanyName", "Intel Corporation"
+ VALUE "FileDescription", "Intel(R) MPI Benchmarks"
+ VALUE "FileVersion", "2019.0.2"
+ VALUE "InternalName", "IMB-P2P"
+ VALUE "LegalCopyright", "Copyright 2003-2019 Intel Corporation."
+ VALUE "OriginalFilename", "IMB-P2P.exe"
+ VALUE "ProductName", "Intel(R) MPI Benchmarks"
+ VALUE "ProductVersion", "2019.0.2"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+END
+
+#endif // English (U.S.) resources
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.sln b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.sln
new file mode 100755
index 00000000..29055e79
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.sln
@@ -0,0 +1,19 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "IMB-P2P", "IMB-P2P.vcxproj", "{72B11209-BF5B-4AF0-B38D-744C2FD082C3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.ActiveCfg = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.Build.0 = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.ActiveCfg = Release|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.vcxproj b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.vcxproj
new file mode 100755
index 00000000..cbc3d357
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2013/IMB-P2P.vcxproj
@@ -0,0 +1,123 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}
+ IMBP2P
+ Win32Proj
+
+
+
+ Application
+ MultiByte
+ true
+ v120
+
+
+ Application
+ MultiByte
+ v120
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ false
+ AllRules.ruleset
+
+
+ AllRules.ruleset
+
+
+
+
+
+ X64
+
+
+ Disabled
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ true
+ Console
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
+
+
+
+
+ X64
+
+
+ MaxSpeed
+ true
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ MultiThreaded
+ true
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ true
+ Console
+ true
+ true
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WINDOWS/IMB-P2P_VS_2013/resource.h b/WINDOWS/IMB-P2P_VS_2013/resource.h
new file mode 100755
index 00000000..f0424b4c
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2013/resource.h
@@ -0,0 +1,14 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by IMB-P2P.rc
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 101
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif
diff --git a/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.rc b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.rc
new file mode 100755
index 00000000..9ef548fb
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.rc
@@ -0,0 +1,102 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "afxres.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+#ifdef _WIN32
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif //_WIN32
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""afxres.h""\r\n"
+ "\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 2019,0,2,0
+ PRODUCTVERSION 2019,0,2,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "CompanyName", "Intel Corporation"
+ VALUE "FileDescription", "Intel(R) MPI Benchmarks"
+ VALUE "FileVersion", "2019.0.2"
+ VALUE "InternalName", "IMB-P2P"
+ VALUE "LegalCopyright", "Copyright 2003-2019 Intel Corporation."
+ VALUE "OriginalFilename", "IMB-P2P.exe"
+ VALUE "ProductName", "Intel(R) MPI Benchmarks"
+ VALUE "ProductVersion", "2019.0.2"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+END
+
+#endif // English (U.S.) resources
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.sln b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.sln
new file mode 100755
index 00000000..29055e79
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.sln
@@ -0,0 +1,19 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "IMB-P2P", "IMB-P2P.vcxproj", "{72B11209-BF5B-4AF0-B38D-744C2FD082C3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.ActiveCfg = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.Build.0 = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.ActiveCfg = Release|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.vcxproj b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.vcxproj
new file mode 100755
index 00000000..3fb09016
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2015/IMB-P2P.vcxproj
@@ -0,0 +1,123 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}
+ IMBP2P
+ Win32Proj
+
+
+
+ Application
+ MultiByte
+ true
+ v140
+
+
+ Application
+ MultiByte
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ false
+ AllRules.ruleset
+
+
+ AllRules.ruleset
+
+
+
+
+
+ X64
+
+
+ Disabled
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ true
+ Console
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
+
+
+
+
+ X64
+
+
+ MaxSpeed
+ true
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ MultiThreaded
+ true
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ true
+ Console
+ true
+ true
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WINDOWS/IMB-P2P_VS_2015/resource.h b/WINDOWS/IMB-P2P_VS_2015/resource.h
new file mode 100755
index 00000000..f0424b4c
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2015/resource.h
@@ -0,0 +1,14 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by IMB-P2P.rc
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 101
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif
diff --git a/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.rc b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.rc
new file mode 100755
index 00000000..fc4854a1
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.rc
@@ -0,0 +1,102 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 2 resource.
+//
+#include "afxres.h"
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+#ifdef _WIN32
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif //_WIN32
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#include ""afxres.h""\r\n"
+ "\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "\r\n"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Version
+//
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 2019,0,2,0
+ PRODUCTVERSION 2019,0,2,0
+ FILEFLAGSMASK 0x17L
+#ifdef _DEBUG
+ FILEFLAGS 0x1L
+#else
+ FILEFLAGS 0x0L
+#endif
+ FILEOS 0x4L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "CompanyName", "Intel Corporation"
+ VALUE "FileDescription", "Intel(R) MPI Benchmarks"
+ VALUE "FileVersion", "2019.0.2"
+ VALUE "InternalName", "IMB-P2P"
+ VALUE "LegalCopyright", "Copyright 2003-2019 Intel Corporation."
+ VALUE "OriginalFilename", "IMB-P2P.exe"
+ VALUE "ProductName", "Intel(R) MPI Benchmarks"
+ VALUE "ProductVersion", "2019.0.2"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1200
+ END
+END
+
+#endif // English (U.S.) resources
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.sln b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.sln
new file mode 100755
index 00000000..29055e79
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.sln
@@ -0,0 +1,19 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "IMB-P2P", "IMB-P2P.vcxproj", "{72B11209-BF5B-4AF0-B38D-744C2FD082C3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.ActiveCfg = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Debug|x64.Build.0 = Debug|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.ActiveCfg = Release|x64
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.vcxproj b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.vcxproj
new file mode 100755
index 00000000..0eeae5b9
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2017/IMB-P2P.vcxproj
@@ -0,0 +1,128 @@
+
+
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ {72B11209-BF5B-4AF0-B38D-744C2FD082C3}
+ IMBP2P
+ Win32Proj
+ 10.0.17763.0
+
+
+
+ Application
+ MultiByte
+ true
+ v141
+
+
+ Application
+ MultiByte
+ v141
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ true
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ false
+ AllRules.ruleset
+
+
+ AllRules.ruleset
+
+
+
+
+
+ X64
+
+
+ Disabled
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebug
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ %(AdditionalDependencies)
+ true
+ Console
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
+
+
+
+
+ X64
+
+
+ MaxSpeed
+ true
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_c\P2P;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_WARNINGS;P2P;%(PreprocessorDefinitions)
+ MultiThreaded
+ true
+
+
+ Level1
+ ProgramDatabase
+
+
+ impi.lib;%(AdditionalDependencies)
+ %(AdditionalDependencies)
+ true
+ Console
+ true
+ true
+ MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/WINDOWS/IMB-P2P_VS_2017/resource.h b/WINDOWS/IMB-P2P_VS_2017/resource.h
new file mode 100755
index 00000000..3415f23f
--- /dev/null
+++ b/WINDOWS/IMB-P2P_VS_2017/resource.h
@@ -0,0 +1,14 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by IMB-P2P.rc
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 101
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif
diff --git a/WINDOWS/IMB-RMA_VS_2013/IMB-RMA.vcxproj b/WINDOWS/IMB-RMA_VS_2013/IMB-RMA.vcxproj
index a96671db..1b2cc11d 100644
--- a/WINDOWS/IMB-RMA_VS_2013/IMB-RMA.vcxproj
+++ b/WINDOWS/IMB-RMA_VS_2013/IMB-RMA.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -71,12 +71,13 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -86,7 +87,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -96,12 +97,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-RMA_VS_2015/IMB-RMA.vcxproj b/WINDOWS/IMB-RMA_VS_2015/IMB-RMA.vcxproj
index ab245896..2e401975 100644
--- a/WINDOWS/IMB-RMA_VS_2015/IMB-RMA.vcxproj
+++ b/WINDOWS/IMB-RMA_VS_2015/IMB-RMA.vcxproj
@@ -58,7 +58,7 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -69,12 +69,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -84,7 +85,7 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_cpp\helpers;$(ProjectDir)\..\..\src_c;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -94,12 +95,13 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/WINDOWS/IMB-RMA_VS_2017/IMB-RMA.vcxproj b/WINDOWS/IMB-RMA_VS_2017/IMB-RMA.vcxproj
index 953241d0..2e816e04 100644
--- a/WINDOWS/IMB-RMA_VS_2017/IMB-RMA.vcxproj
+++ b/WINDOWS/IMB-RMA_VS_2017/IMB-RMA.vcxproj
@@ -13,7 +13,7 @@
{4219D5A9-6972-4B1C-9F07-EB97EEF4EDDA}
IMBRMA
- Win32Proj
+ Win32Proj
10.0.15063.0
@@ -59,8 +59,8 @@
Disabled
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;_DEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
true
EnableFastChecks
@@ -73,13 +73,14 @@
%(ForcedIncludeFiles)
- %I_MPI_ROOT%\intel64\lib\debug\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
MachineX64
+ %I_MPI_ROOT%\intel64\lib\debug;%I_MPI_ROOT%\latest\lib\debug
@@ -89,8 +90,8 @@
MaxSpeed
true
- %I_MPI_ROOT%\intel64\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
- $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ %I_MPI_ROOT%\intel64\include;%I_MPI_ROOT%\latest\include;$(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
+ $(ProjectDir)\..\..\src_cpp;$(ProjectDir)\..\..\src_c;$(ProjectDir)\..\..\src_cpp\helpers;%(AdditionalIncludeDirectories)
WIN32;NDEBUG;_CONSOLE;WIN_IMB;_CRT_SECURE_NO_DEPRECATE;RMA;%(PreprocessorDefinitions)
MultiThreaded
true
@@ -100,13 +101,14 @@
ProgramDatabase
- %I_MPI_ROOT%\intel64\lib\release\impi.lib;%(AdditionalDependencies)
+ impi.lib;%(AdditionalDependencies)
%(AdditionalDependencies)
true
Console
true
true
MachineX64
+ %I_MPI_ROOT%\intel64\lib\release;%I_MPI_ROOT%\latest\lib\release
diff --git a/src_c/IMB.c b/src_c/IMB_2018.c
similarity index 99%
rename from src_c/IMB.c
rename to src_c/IMB_2018.c
index 46e87900..fe3e5170 100644
--- a/src_c/IMB.c
+++ b/src_c/IMB_2018.c
@@ -136,7 +136,7 @@ Return value (type int)
if ((ierr = MPI_Init_thread(&argc, &argv, mpi_thread_desired, &mpi_thread_environment)) != MPI_SUCCESS)
IMB_err_hand(1, ierr);
- if (mpi_thread_environment != mpi_thread_desired) {
+ if (mpi_thread_desired > mpi_thread_environment) {
fprintf(unit, "ERROR: MPI_Init_thread was not able to set up desired threading level\n");
IMB_err_hand(1, ierr);
}
diff --git a/src_c/IMB_benchmark.h b/src_c/IMB_benchmark.h
index c9ea098c..8a2db265 100644
--- a/src_c/IMB_benchmark.h
+++ b/src_c/IMB_benchmark.h
@@ -122,7 +122,7 @@ struct iter_schedule {
#define X_MODES 2
-typedef enum { put, get, no } DIRECTION;
+typedef enum { put, get, no, local } DIRECTION;
#ifdef MPIIO
diff --git a/src_c/IMB_chk_diff.c b/src_c/IMB_chk_diff.c
index d510393f..3338b6a8 100644
--- a/src_c/IMB_chk_diff.c
+++ b/src_c/IMB_chk_diff.c
@@ -693,7 +693,10 @@ Output variables:
} else if (source == -1) {
IMB_alloc_aux(Locsize, "chk_diff 7");
- IMB_chk_dadd(AUX, Locsize, buf_pos, 0, c_info->num_procs - 1);
+ if (mode == local)
+ IMB_ass_buf(AUX, c_info->rank, buf_pos, Locsize, 1);
+ else
+ IMB_chk_dadd(AUX, Locsize, buf_pos, 0, c_info->num_procs - 1);
defloc = IMB_ddiff((assign_type *)AUX, (assign_type *)RECEIVED, Locsize / asize, &faultpos);
@@ -736,6 +739,9 @@ Output variables:
err_flag = 1;
*diff = max(*diff, defloc);
+
+ if (mode == local)
+ IMB_ass_buf(RECEIVED, c_info->rank, buf_pos, Locsize - 1, 0);
}
diff --git a/src_c/IMB_g_info.c b/src_c/IMB_g_info.c
index d2c1d78a..bf32d03a 100644
--- a/src_c/IMB_g_info.c
+++ b/src_c/IMB_g_info.c
@@ -72,7 +72,7 @@ For more documentation than found here, see
#ifdef IMB2018
char* VERSION="2018";
#else
-char* VERSION="2019 Update 3";
+char* VERSION="2019 Update 4";
#endif
#include
diff --git a/src_c/IMB_mem_manager.c b/src_c/IMB_mem_manager.c
index af355383..4c215b46 100644
--- a/src_c/IMB_mem_manager.c
+++ b/src_c/IMB_mem_manager.c
@@ -273,11 +273,7 @@ In/out variables:
if (pos2 >= pos1) {
size_t a_pos1, a_pos2, i, j;
a_pos1 = pos1 / asize;
-
- if (pos2 >= pos1)
- a_pos2 = pos2 / asize;
- else
- a_pos2 = a_pos1 - 1;
+ a_pos2 = pos2 / asize;
if (value)
for (i = a_pos1, j = 0; i <= a_pos2; i++, j++)
diff --git a/src_c/IMB_reduce_local.c b/src_c/IMB_reduce_local.c
index 4c9e95f8..fecc5b1d 100644
--- a/src_c/IMB_reduce_local.c
+++ b/src_c/IMB_reduce_local.c
@@ -123,7 +123,6 @@ Output variables:
s_num = size / s_size;
size *= c_info->size_scale;
-
*time = 0.;
if (c_info->rank != -1) {
IMB_do_n_barriers(c_info->communicator, N_BARR);
@@ -136,10 +135,9 @@ Output variables:
c_info->red_data_type, c_info->op_type));
t2 = MPI_Wtime();
*time += (t2 - t1);
-
CHK_DIFF("Reduce_local", c_info, (char*)c_info->r_buffer + i % ITERATIONS->r_cache_iter*ITERATIONS->r_offs, 0,
size, size, asize,
- put, 0, ITERATIONS->n_sample, i,
+ local, 0, ITERATIONS->n_sample, i,
-1, &defect);
IMB_do_n_barriers(c_info->communicator, c_info->sync);
diff --git a/src_c/IMB_reduce_scatter.c b/src_c/IMB_reduce_scatter.c
index f18b75d3..4060c115 100644
--- a/src_c/IMB_reduce_scatter.c
+++ b/src_c/IMB_reduce_scatter.c
@@ -128,6 +128,9 @@ Output variables:
size_t pos;
int Locsize;
#endif
+#ifdef IMB2018
+ size_t pos1, pos2;
+#endif
Type_Size s_size;
@@ -137,17 +140,35 @@ Output variables:
/* GET SIZE OF DATA TYPE */
MPI_Type_size(c_info->red_data_type, &s_size);
-
- for (i = 0; i < c_info->num_procs; i++) {
#ifdef IMB2018
- c_info->reccnt[i] = ((size / s_size) * (i+1) / c_info->num_procs) - ((size / s_size) * i / c_info->num_procs);
+ for (i = 0; i < c_info->num_procs; i++) {
+ if (size > 0) {
+ IMB_get_rank_portion(i, c_info->num_procs, size, s_size, &pos1, &pos2);
+ c_info->reccnt[i] = (pos2 - pos1 + 1) / s_size;
+#ifdef CHECK
+ if (i == c_info->rank) {
+ pos = pos1;
+ Locsize = s_size * c_info->reccnt[i];
+ }
+#endif
+ } else {
+ c_info->reccnt[i] = 0;
+#ifdef CHECK
+ if (i == c_info->rank) {
+ pos = 0;
+ Locsize = 0;
+ }
+#endif
+ }
+ }
#else
+ for (i = 0; i < c_info->num_procs; i++) {
c_info->reccnt[i] = size / s_size;
-#endif
}
#ifdef CHECK
Locsize = s_size * c_info->reccnt[c_info->rank];
pos = Locsize * c_info->rank;
+#endif
#endif
*time = 0.;
diff --git a/src_c/Makefile b/src_c/Makefile
index 30fb4ac5..2812a02b 100644
--- a/src_c/Makefile
+++ b/src_c/Makefile
@@ -55,29 +55,29 @@ BINARY=IMB-$(TARGET)
BUILDDIR=build_$(TARGET)
ifeq "$(TARGET)" "MPI1"
-SRC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_mpi1.c IMB_benchlist.c IMB_strgs.c \
+SRC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_mpi1.c IMB_benchlist.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_pingpong.c IMB_pingping.c IMB_allreduce.c IMB_reduce_scatter.c IMB_reduce.c IMB_exchange.c IMB_bcast.c IMB_barrier.c IMB_allgather.c IMB_allgatherv.c IMB_gather.c IMB_gatherv.c IMB_scatter.c IMB_scatterv.c IMB_alltoall.c IMB_alltoallv.c IMB_sendrecv.c IMB_init_transfer.c IMB_chk_diff.c IMB_cpu_exploit.c IMB_bandwidth.c
endif
ifeq "$(TARGET)" "EXT"
-SRC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_ext.c IMB_strgs.c \
+SRC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_ext.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_window.c IMB_ones_unidir.c IMB_ones_bidir.c IMB_ones_accu.c IMB_init_transfer.c IMB_user_set_info.c IMB_chk_diff.c
endif
ifeq "$(TARGET)" "IO"
-SRC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_init_file.c IMB_user_set_info.c\
+SRC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_init_file.c IMB_user_set_info.c\
IMB_benchlist.c IMB_parse_name_io.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c IMB_cpu_exploit.c\
IMB_open_close.c IMB_write.c IMB_read.c IMB_init_transfer.c IMB_chk_diff.c
override CFLAGS += -DMPIIO
endif
ifeq "$(TARGET)" "NBC"
-SRC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_nbc.c IMB_benchlist.c IMB_strgs.c \
+SRC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_nbc.c IMB_benchlist.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_allreduce.c IMB_reduce_scatter.c IMB_reduce.c IMB_bcast.c IMB_barrier.c IMB_allgather.c IMB_allgatherv.c IMB_gather.c IMB_gatherv.c IMB_scatter.c IMB_scatterv.c IMB_alltoall.c IMB_alltoallv.c IMB_sendrecv.c IMB_init_transfer.c IMB_chk_diff.c IMB_cpu_exploit.c
endif
ifeq "$(TARGET)" "RMA"
-SRC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_rma.c IMB_strgs.c \
+SRC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_rma.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c IMB_init_transfer.c IMB_user_set_info.c IMB_chk_diff.c \
IMB_rma_put.c IMB_cpu_exploit.c IMB_rma_get.c IMB_rma_atomic.c
endif
diff --git a/src_c/Makefile_win b/src_c/Makefile_win
index 5cf1d556..4346710e 100644
--- a/src_c/Makefile_win
+++ b/src_c/Makefile_win
@@ -64,47 +64,47 @@ CPPFLAGS =
PROFLIB =
-SRC1 = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_mpi1.c IMB_benchlist.c IMB_strgs.c \
+SRC1 = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_mpi1.c IMB_benchlist.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_pingpong.c IMB_pingping.c IMB_allreduce.c IMB_reduce_scatter.c IMB_reduce.c IMB_exchange.c IMB_bcast.c IMB_barrier.c IMB_allgather.c IMB_allgatherv.c IMB_gather.c IMB_gatherv.c IMB_scatter.c IMB_scatterv.c IMB_alltoall.c IMB_alltoallv.c IMB_sendrecv.c IMB_init_transfer.c IMB_chk_diff.c IMB_cpu_exploit.c IMB_bandwidth.c
-OBJ1 = IMB.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_parse_name_mpi1.obj IMB_benchlist.obj IMB_strgs.obj \
+OBJ1 = IMB_2018.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_parse_name_mpi1.obj IMB_benchlist.obj IMB_strgs.obj \
IMB_err_handler.obj IMB_g_info.obj IMB_warm_up.obj IMB_output.obj \
IMB_pingpong.obj IMB_pingping.obj IMB_allreduce.obj IMB_reduce_scatter.obj IMB_reduce.obj IMB_exchange.obj IMB_bcast.obj IMB_barrier.obj IMB_allgather.obj IMB_allgatherv.obj IMB_gather.obj IMB_gatherv.obj IMB_scatter.obj IMB_scatterv.obj IMB_alltoall.obj IMB_alltoallv.obj IMB_sendrecv.obj IMB_init_transfer.obj IMB_chk_diff.obj IMB_cpu_exploit.obj IMB_bandwidth.obj
-SRCEXT = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_ext.c IMB_strgs.c \
+SRCEXT = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_ext.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_window.c IMB_ones_unidir.c IMB_ones_bidir.c IMB_ones_accu.c IMB_init_transfer.c IMB_user_set_info.c IMB_chk_diff.c
-OBJEXT = IMB.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_benchlist.obj IMB_parse_name_ext.obj IMB_strgs.obj \
+OBJEXT = IMB_2018.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_benchlist.obj IMB_parse_name_ext.obj IMB_strgs.obj \
IMB_err_handler.obj IMB_g_info.obj IMB_warm_up.obj IMB_output.obj \
IMB_window.obj IMB_ones_unidir.obj IMB_ones_bidir.obj IMB_ones_accu.obj IMB_init_transfer.obj IMB_user_set_info.obj IMB_chk_diff.obj
-SRCIO= IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_init_file.c IMB_user_set_info.c\
+SRCIO= IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_init_file.c IMB_user_set_info.c\
IMB_benchlist.c IMB_parse_name_io.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c IMB_cpu_exploit.c\
IMB_open_close.c IMB_write.c IMB_read.c IMB_init_transfer.c IMB_chk_diff.c
-OBJIO= IMB.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_init_file.obj \
+OBJIO= IMB_2018.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_init_file.obj \
IMB_benchlist.obj IMB_parse_name_io.obj IMB_strgs.obj IMB_user_set_info.obj IMB_cpu_exploit.obj\
IMB_err_handler.obj IMB_g_info.obj IMB_warm_up.obj IMB_output.obj \
IMB_open_close.obj IMB_write.obj IMB_read.obj IMB_init_transfer.obj IMB_chk_diff.obj
-SRCNBC = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_nbc.c IMB_benchlist.c IMB_strgs.c \
+SRCNBC = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_parse_name_nbc.c IMB_benchlist.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c \
IMB_allreduce.c IMB_reduce_scatter.c IMB_reduce.c IMB_bcast.c IMB_barrier.c IMB_allgather.c IMB_allgatherv.c IMB_gather.c IMB_gatherv.c IMB_scatter.c IMB_scatterv.c IMB_alltoall.c IMB_alltoallv.c IMB_sendrecv.c IMB_init_transfer.c IMB_chk_diff.c IMB_cpu_exploit.c
-OBJNBC = IMB.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_parse_name_nbc.obj IMB_benchlist.obj IMB_strgs.obj \
+OBJNBC = IMB_2018.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_parse_name_nbc.obj IMB_benchlist.obj IMB_strgs.obj \
IMB_err_handler.obj IMB_g_info.obj IMB_warm_up.obj IMB_output.obj \
IMB_allreduce.obj IMB_reduce_scatter.obj IMB_reduce.obj IMB_bcast.obj IMB_barrier.obj IMB_allgather.obj IMB_allgatherv.obj IMB_gather.obj IMB_gatherv.obj IMB_scatter.obj IMB_scatterv.obj IMB_alltoall.obj IMB_alltoallv.obj IMB_sendrecv.obj IMB_init_transfer.obj IMB_chk_diff.obj IMB_cpu_exploit.obj
-SRCRMA = IMB.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_rma.c IMB_strgs.c \
+SRCRMA = IMB_2018.c IMB_utils.c IMB_declare.c IMB_init.c IMB_mem_manager.c IMB_benchlist.c IMB_parse_name_rma.c IMB_strgs.c \
IMB_err_handler.c IMB_g_info.c IMB_warm_up.c IMB_output.c IMB_init_transfer.c IMB_user_set_info.c IMB_chk_diff.c \
IMB_rma_put.c IMB_cpu_exploit.c IMB_rma_get.c IMB_rma_atomic.c
-OBJRMA = IMB.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_benchlist.obj IMB_parse_name_rma.obj IMB_strgs.obj \
+OBJRMA = IMB_2018.obj IMB_utils.obj IMB_declare.obj IMB_init.obj IMB_mem_manager.obj IMB_benchlist.obj IMB_parse_name_rma.obj IMB_strgs.obj \
IMB_err_handler.obj IMB_g_info.obj IMB_warm_up.obj IMB_output.obj IMB_init_transfer.obj IMB_user_set_info.obj IMB_chk_diff.obj \
IMB_rma_put.obj IMB_cpu_exploit.obj IMB_rma_get.obj IMB_rma_atomic.obj
@@ -155,7 +155,7 @@ RMA: $(OBJRMA)
IMB_declare.h: IMB_settings.h IMB_comm_info.h IMB_settings_io.h IMB_bnames_mpi1.h \
IMB_bnames_ext.h IMB_bnames_io.h IMB_err_check.h IMB_appl_errors.h IMB_mem_info.h
-IMB.obj: IMB_declare.h IMB_benchmark.h
+IMB_2018.obj: IMB_declare.h IMB_benchmark.h
IMB_init.obj: IMB_declare.h IMB_benchmark.h
IMB_mem_manager.obj: IMB_declare.h IMB_benchmark.h
IMB_benchlist.obj: IMB_declare.h IMB_benchmark.h
diff --git a/src_c/P2P/imb_p2p.c b/src_c/P2P/imb_p2p.c
index 45daf2d2..18f2366e 100644
--- a/src_c/P2P/imb_p2p.c
+++ b/src_c/P2P/imb_p2p.c
@@ -56,7 +56,7 @@ goods and services.
#define INFO_BUFFER_SIZE 32767
#endif
-static const char * VERSION = "2019 Update 3";
+static const char * VERSION = "2019 Update 4";
FILE* unit = NULL;
imb_p2p_configuration_t imb_p2p_config = { 0 };
diff --git a/src_cpp/MT/MT_suite.cpp b/src_cpp/MT/MT_suite.cpp
index d145b8cd..8418dfd0 100644
--- a/src_cpp/MT/MT_suite.cpp
+++ b/src_cpp/MT/MT_suite.cpp
@@ -196,7 +196,7 @@ template <> bool BenchmarkSuite::prepare(const args_parser &parser,
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
if (rank == 0 && !noheader) {
output << "#------------------------------------------------------------------" << std::endl;
- output << "# Intel(R) MPI Benchmarks " << "2019 Update 3" << ", MT part " << std::endl;
+ output << "# Intel(R) MPI Benchmarks " << "2019 Update 4" << ", MT part " << std::endl;
output << "#------------------------------------------------------------------" << std::endl;
output << "#" << std::endl;
}
diff --git a/src_cpp/MT/MT_types.h b/src_cpp/MT/MT_types.h
index 1e46b782..bfad2ac0 100644
--- a/src_cpp/MT/MT_types.h
+++ b/src_cpp/MT/MT_types.h
@@ -50,6 +50,11 @@ goods and services.
#pragma once
+#include
+
+#define THREAD_NUM_STR_LEN_MAX 16
+#define THREAD_NUM_KEY "thread_id"
+
struct thread_local_data_t {
int warmup;
int repeat;
@@ -70,12 +75,18 @@ enum barropt_t {
static inline MPI_Comm duplicate_comm(int mode_multiple, int thread_num)
{
- UNUSED(thread_num);
- MPI_Comm comm = MPI_COMM_WORLD, new_comm;
- if(mode_multiple) {
+ char thread_num_str[THREAD_NUM_STR_LEN_MAX] = { 0 };
+ MPI_Comm comm = MPI_COMM_WORLD, new_comm;
+ MPI_Info info;
+
+ if (mode_multiple) {
MPI_Comm_dup(comm, &new_comm);
+ MPI_Info_create(&info);
+ snprintf(thread_num_str, THREAD_NUM_STR_LEN_MAX, "%d", thread_num);
+ MPI_Info_set(info, THREAD_NUM_KEY, thread_num_str);
+ MPI_Comm_set_info(new_comm, info);
+ MPI_Info_free(&info);
return new_comm;
}
return comm;
}
-
diff --git a/src_cpp/NBC/NBC_benchmark.cpp b/src_cpp/NBC/NBC_benchmark.cpp
index 94548fd9..f2a1829d 100644
--- a/src_cpp/NBC/NBC_benchmark.cpp
+++ b/src_cpp/NBC/NBC_benchmark.cpp
@@ -281,7 +281,7 @@ BENCHMARK(IMB_ireduce_pure, Ireduce_pure)
BENCHMARK(IMB_ireduce_scatter, Ireduce_scatter)
{
descr->flags.insert(DEFAULT);
- descr->flags.insert(SENDBUF_SIZE_I);
+ descr->flags.insert(SENDBUF_SIZE_NP_I);
descr->flags.insert(RECVBUF_SIZE_I);
descr->flags.insert(NONBLOCKING);
descr->flags.insert(NTIMES_3);
@@ -292,7 +292,7 @@ BENCHMARK(IMB_ireduce_scatter, Ireduce_scatter)
BENCHMARK(IMB_ireduce_scatter_pure, Ireduce_scatter_pure)
{
- descr->flags.insert(SENDBUF_SIZE_I);
+ descr->flags.insert(SENDBUF_SIZE_NP_I);
descr->flags.insert(RECVBUF_SIZE_I);
descr->flags.insert(REDUCTION);
descr->flags.insert(COLLECTIVE);
diff --git a/src_cpp/imb.cpp b/src_cpp/imb.cpp
index 7bc88949..d66a698a 100644
--- a/src_cpp/imb.cpp
+++ b/src_cpp/imb.cpp
@@ -70,7 +70,7 @@ int main(int argc, char * *argv)
bool no_mpi_init_flag = true;
int return_value = 0;
int rank = 0, size = 0;
- const char *program_name = "Intel(R) MPI Benchmarks 2019 Update 3";
+ const char *program_name = "Intel(R) MPI Benchmarks 2019 Update 4";
std::ostringstream output;
// Some unit tests for args parser
@@ -295,7 +295,7 @@ int main(int argc, char * *argv)
MPI_Init_thread(&argc, (char ***)&argv, required_mode, &provided_mode);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
- if (required_mode != provided_mode) {
+ if (required_mode > provided_mode) {
throw logic_error("can't setup a required MPI threading mode");
}
}