| 634 | } |
| 635 | |
| 636 | void lbann_comm::wait(Al::request& req) const |
| 637 | { |
| 638 | #ifdef LBANN_HAS_ALUMINUM |
| 639 | if (req.mpi_req != Al::mpi_null_req) { |
| 640 | ::Al::Wait<::Al::MPIBackend>(req.mpi_req); |
| 641 | } |
| 642 | #ifdef AL_HAS_NCCL |
| 643 | if (req.nccl_req != Al::nccl_null_req) { |
| 644 | // Note this does not block the host. |
| 645 | ::Al::Wait<::Al::NCCLBackend>(req.nccl_req); |
| 646 | } |
| 647 | #endif // AL_HAS_NCCL |
| 648 | #ifdef AL_HAS_HOST_TRANSFER |
| 649 | if (req.hosttransfer_req != Al::hosttransfer_null_req) { |
| 650 | // Note this does not block the host. |
| 651 | ::Al::Wait<::Al::HostTransferBackend>(req.hosttransfer_req); |
| 652 | } |
| 653 | #endif // AL_HAS_HOST_TRANSFER |
| 654 | #endif // LBANN_HAS_ALUMINUM |
| 655 | if (req.raw_mpi_req != MPI_REQUEST_NULL) { |
| 656 | MPI_Wait(&(req.raw_mpi_req), MPI_STATUS_IGNORE); |
| 657 | ; |
| 658 | } |
| 659 | } |
| 660 | |
| 661 | bool lbann_comm::test(Al::request& req) const |
| 662 | { |
no outgoing calls
no test coverage detected