Skip to content

Conversation

@hjelmn
Copy link
Member

@hjelmn hjelmn commented Oct 5, 2015

This commit frees any outstanding windows at ompi_win_finalize. If
ompi_debug_show_handle_leaks is set a warning message is printed out
indicating that a window is still allocated.

Signed-off-by: Nathan Hjelm hjelmn@lanl.gov

@hjelmn
Copy link
Member Author

hjelmn commented Oct 5, 2015

@jsquyres Please take a look. This provides similar support to what we already had for MPI_Comm objects. It fixes an issue when using osc/rdma identified by MTT. Was seeing this message in c_create_no_free:

[3:32459] Attempt to free memory that is still in use by an ongoing MPI communication (buffer 0x2aab6de3f000, size 135168).  MPI job will now abort.

Which is totally meaningless to the user. New message:

[nid00003:32562] WARNING: MPI_Win still allocated in MPI_Finalize
[nid00003:32562] Dumping information for window: rdma window 3
[nid00003:32562]   f2c index: 1, window size: 2

@jsquyres
Copy link
Member

jsquyres commented Oct 5, 2015

Is there always a f2c index? Or is that allocated lazily when the Window is used in Fortran? (I honestly don't remember)

You might want to call it "Fortran Window handle" instead of "f2c" index...?

Is it useful to show the name of the communicator from which the window was created?

@hjelmn
Copy link
Member Author

hjelmn commented Oct 5, 2015

The dump is mostly the same as the one we provide for MPI_Comm. In this case there is always an ftoc index because all windows are stored in the opal_pointer_array. I will update the message to say "Fortran Window handle" instead of ftoc.

As for printing the communicator name. That seems like good additional information. I will add it to the dump.

This commit frees any outstanding windows at ompi_win_finalize. If
ompi_debug_show_handle_leaks is set a warning message is printed out
indicating that a window is still allocated.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
@hjelmn
Copy link
Member Author

hjelmn commented Oct 6, 2015

The communicator name is not easy to get. The original communicator may have been freed and we do not store a reference to it.

hjelmn added a commit that referenced this pull request Oct 6, 2015
win: free windows in ompi_win_finalize
@hjelmn hjelmn merged commit c124fd4 into open-mpi:master Oct 6, 2015
jsquyres added a commit to jsquyres/ompi that referenced this pull request Aug 23, 2016
…spawn

fix spawn on heterogeneous clusters
@hjelmn hjelmn deleted the ompi_win_free branch July 12, 2018 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants