You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am not really asking you to remove functionality. We're just trying to write tests in LiDO based on the documented behavior. Perhaps, the best possible resolution would be a preprocessor macro (e.g., LIBYOGRT_WORKS_ON_ALL_RANKS) indicating whether yogrt_remaining() works on all ranks or only rank 0. This would allow us to adapt our tests to know whether to expect postive values on ranks not equal to zero or not.
lassen is using the lsf backend for remaining time. We could perhaps fix that backend to correctly return -1 on non-zero tasks. According to IBM documentation, there may be an environment variable LS_JOBPID that will tell us the process ID.
Technically, it is process rank 0 as determined by the job launcher. MPI bootstrap processes (almost?) always use this number to assign ranks in MPI_COMM_WORLD. libyogrt is not an MPI application, so it only knows what the launcher tells it, typically through environment variables. So it would entirely be possible for an alternate MPI communicator to not contain that process at all.
The documentation says that yogrt can only be called on process 0. Presumably process means rank in an MPI context?
libyogrt/doc/man/yogrt_remaining.3
Line 23 in 4346565
It also says that it will return -1 when called by any process (rank?) not equal to 0.
libyogrt/doc/man/yogrt_remaining.3
Line 47 in 4346565
On lassen, it appears that
yogrt_remaining()
returns reasonable positive values when called from rank 1.The text was updated successfully, but these errors were encountered: