-
Notifications
You must be signed in to change notification settings - Fork 937
Improve the range and accuracy of MPI_Wtime. #4884
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
The IBM CI (GNU Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/7c2ade236017945328afb6d446af3d36 |
|
The IBM CI (XL Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/3c1a63356106737ead55087bab035a0b |
|
The IBM CI (PGI Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/4c1c181636566b9960e6c98335a5beb8 |
|
@bosilca Looks like you have some kind of error: |
|
The IBM CI (GNU Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/635054a1e3c30ebd6a85536f41bccab8 |
|
The IBM CI (XL Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/2b30f2f908f408fe9e0db6f642e3b773 |
|
The IBM CI (PGI Compiler) build failed! Please review the log, linked below. Gist: https://gist.github.com/36e2afa763057f37ed9a5c4099e707b5 |
|
@bosilca out of curiosity, why didn't you choose to initialize |
|
@ggouaillardet I tried to minimize the spread of the patch. I didn't think that the unlikely if would make a big difference in the execution path, so I was not concerned about it. In fact, my first version did this down in OPAL timer, but then I decided that this change is too MPI specific to deserve to be down in OPAL. |
|
@bosilca, got it, thanks ! |
|
Can someone check that I didn't miss any case when dealing with profiling please. |
|
@bosilca |
|
@bosilca and you will also need As a matter of style, you can either use C99 initializers (e.g. Also, do you have any reason to initialize |
As discussed on mpi-forum/mpi-issues#77 (comment) the conversion to double in the MPI_Wtime decrease the range and accuracy of the resulting timer. By setting the timer to 0 at the first usage we basically maintain the accuracy for 194 days even for gettimeofday. Signed-off-by: George Bosilca <[email protected]>
|
I fixed some of the suggestions. Regarding the time_origin symbol, it is supposed to be extern so that I can be shared between wtime.o and pwtime.o, but it should not the DECLSPEC as I don't want it to be visible from outside. |
|
:bot:mellanox:retest |
|
@bosilca thanks, that PR looks good to me ! |
|
Looks good to me as well. I still think double is a horrible type for a timer but that is one of the more minor mistakes we have to live with from MPI-1. This PR at least makes it so we don't loose precision. |
As discussed on mpi-forum/mpi-issues#77 (comment)
the conversion to double in the MPI_Wtime decrease the range
and accuracy of the resulting timer. By setting the timer to
0 at the first usage we basically maintain the accuracy for
194 days even for gettimeofday.
Signed-off-by: George Bosilca [email protected]