b6475625fb
Add support for alternating rings, allow for cross-nic rings without cross-rail communication. Add support for user buffer registration for network send/recv. Optimize aggregated operations to better utilize all channels. Add flattening for BCM PCI gen5 switches. Add support for inter-node NVLink communication Add support for port fusion in NET/IB. Add support for ReduceScatter and AllGather using Collnet. Update net API to v8. Fix hang during A2A connection.
27 γραμμές
854 B
C
27 γραμμές
854 B
C
/*************************************************************************
|
|
* Copyright (c) 2016-2022, NVIDIA CORPORATION. All rights reserved.
|
|
*
|
|
* See LICENSE.txt for license information
|
|
************************************************************************/
|
|
|
|
#ifndef NCCL_SHM_H_
|
|
#define NCCL_SHM_H_
|
|
|
|
#include "nccl.h"
|
|
|
|
typedef void* ncclShmHandle_t;
|
|
ncclResult_t ncclShmOpen(char* shmPath, size_t shmSize, void** shmPtr, void** devShmPtr, int refcount, ncclShmHandle_t* handle);
|
|
ncclResult_t ncclShmClose(ncclShmHandle_t handle);
|
|
ncclResult_t ncclShmUnlink(ncclShmHandle_t handle);
|
|
|
|
struct ncclShmemCollBuff {
|
|
volatile size_t *cnt[2];
|
|
volatile void *ptr[2];
|
|
int round;
|
|
size_t maxTypeSize;
|
|
};
|
|
|
|
ncclResult_t ncclShmemAllgather(struct ncclComm *comm, struct ncclShmemCollBuff *shmem, void *sendbuff, void *recvbuff, size_t typeSize);
|
|
|
|
#endif
|