This sample uses a significant MPI_Isend()
calls with a dynamically allocated buffer, frees
it as soon as the peer has received the chunk and only then calls MPI_Wait()
.
This makes the memory inaccessible in MPI_Wait()
but happens to
work with most MPI implementations, although it is incorrect. Because it is not
guaranteed that libc
actually unmaps the memory chunk, some of the
bytes are modified before free()
to trigger an illegal modification
error if the memory is still available.
Linux*:
Ensure that the corresponding compiler, Intel® MPI Library, and Intel® Trace Analyzer and Collector are already in your PATH
, and complete these steps:
Build the sample:
$ make
Run the sample:
$ make run
Review the output.
Ensure that the corresponding compilers, Microsoft* Visual Studio*, Intel® MPI Library, and Intel® Trace Analyzer and Collector are already in your PATH
, and complete these steps:
Build the sample:
> build.bat release
Run the sample:
> build.bat run
Review the output.