⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠ You can decompress Drawing data with the command palette: ‘Decompress current Excalidraw file’. For more info check in plugin settings under ‘Saving’

Excalidraw Data

Text Elements

use cudaIpc finish allocate/import shared buffer

Shared Proxy Info

receiver(process2)

sender(process1)

flagcxRegisterP2pIpcBuffer

flagcxp2pIpcRegisterBuffer

ncclShmAllocateShareableBuffer

ShmOpen

Shared Proxy Info

p2pShm+p2pRegInfo

ConnectInfo.desc

fill

bootstrapSend p2pBuff/desc

ncclShmImportShareableBuffer

ShmOpen

reOpen

ConnectInfo.desc

dev/shm/

mmap

mmap

Shared Proxy Info

p2pShm+p2pRegInfo

direct memcpy

userbuff

baseAddr

Ipchandle

cudaIpcGetMemHandle

proxy

cudaIpcOpenMemHandle

thread1

thread2

1

2

cudaMemcpyAsync(D2H)

flagcxP2pProxyRegister

1

2

3

p2pRegInfo

int copyDone;

int copyStarted;

int receiverReady;

void* receiverRegAddr;

ssize_t receiverRegBytes;

sendbuff

recvbuff

zerocopy

record?

Y

N

cuMemGetAddressRange?

Support DeepEP Fault Tolerance