This error has nothing to do with MPI. These two lines are the problem: std::vector<std::vector<double> > a(100); a[i].resize(1000000000); You are trying to allocate 1e9 std::vector<double>, which I assume is many gigabytes of memory. Jeff On Wed, Apr 3, 2019 at 8:58 AM Zhou, Hui via discuss <[email protected]> wrote:
I just tested on my Mac, the system keep popping out message asking me to
force kill some application to free up memory, but the code never crashed, just stalled. So I guess the out-of-memory behavior is operating system dependent. My guess is when you have multiple process competing for memory, it may cause some race issue in the os that the OS returns a valid address but discover out-of memory later because the memory is stolen by another process.
— Hui Zhou T: 630-252-3430
On Apr 3, 2019, at 8:42 AM, Zhen Wang via discuss <[email protected]>
wrote:
Hi,
I have difficulty catching std::bac_alloc in an MPI environment. The code
is attached. I'm uisng gcc 6.3 on SUSE Linux Enterprise Server 11 (x86_64). mpich is built from source. The commands are as follows:
Build g++ -I<mpich-3.3-opt/include> -L<mpich-3.3-opt/lib> -lmpi memory.cpp
Run <mpich-3.3-opt/bin/mpiexec> -n 2 a.out
Output 0 0 1 1
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES = PID 16067 RUNNING AT <machine name> = EXIT CODE: 9 = CLEANING UP REMAINING PROCESSES = YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
===================================================================================
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Killed (signal 9) This typically refers to a problem with your application. Please see the FAQ page for debugging suggestions
If I uncomment the line //if (rank == 0), i.e., only rank 0 allocates memory, I'm able to catch bad_alloc as I expected. It seems that I am misunderstanding something. Could you please help? Thanks a lot.
Best regards, Zhen <memory.cpp>_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
-- Jeff Hammond [email protected] http://jeffhammond.github.io/