2018-09-24 16:06:59 -07:00
|
|
|
/*************************************************************************
|
|
|
|
|
* Copyright (c) 2015-2017, NVIDIA CORPORATION. All rights reserved.
|
|
|
|
|
*
|
|
|
|
|
* See LICENSE.txt for license information
|
|
|
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
#ifndef NCCL_GROUP_H_
|
|
|
|
|
#define NCCL_GROUP_H_
|
|
|
|
|
|
|
|
|
|
#include "nccl.h"
|
2019-11-19 14:57:39 -08:00
|
|
|
#include "comm.h"
|
2018-09-24 16:06:59 -07:00
|
|
|
|
|
|
|
|
bool ncclAsyncMode();
|
|
|
|
|
ncclResult_t ncclAsyncErrCheck(ncclResult_t ret);
|
|
|
|
|
|
2019-11-19 14:57:39 -08:00
|
|
|
typedef ncclResult_t(*ncclInitFunc_t)(ncclComm_t* newcomm, int ndev, ncclUniqueId commId, int myrank, int cudaDev);
|
2018-09-24 16:06:59 -07:00
|
|
|
|
2019-11-19 14:57:39 -08:00
|
|
|
ncclResult_t ncclAsyncInit(ncclInitFunc_t func, ncclComm_t* newcomm, int ndev, ncclUniqueId commId, int myrank, int cudaDev);
|
2018-09-24 16:06:59 -07:00
|
|
|
|
|
|
|
|
typedef ncclResult_t(*ncclCollFunc_t)(const void* sendbuff, void* recvbuff, size_t count,
|
|
|
|
|
ncclDataType_t type, ncclRedOp_t op, int root, ncclComm_t comm, cudaStream_t stream);
|
|
|
|
|
|
|
|
|
|
ncclResult_t ncclAsyncColl(ncclComm_t comm);
|
|
|
|
|
#endif
|