Add support for external network.

Dynamically load external network from libnccl-net.so.
Add init function in networks.
Move PCI scoring to net.cu, only ask transport to provide a path.
Simplify CUDA PCI path detection.
Add dummy external network


[ROCm/rccl commit: 0d3a20f96d]
This commit is contained in:
Sylvain Jeaugey
2018-11-13 10:37:20 -08:00
parent b458b3b337
commit 378a103248
29 changed files with 437 additions and 361 deletions
+6 -1
View File
@@ -8,7 +8,7 @@ include ../makefiles/common.mk
include ../makefiles/version.mk
##### src files
INCEXPORTS := nccl.h
INCEXPORTS := nccl.h nccl_net.h
LIBSRCFILES := init.cu ring.cu bootstrap.cu transport.cu misc/group.cu \
misc/nvmlwrap.cu misc/ibvwrap.cu misc/rings.cu misc/utils.cu misc/enqueue.cu \
transport/p2p.cu transport/shm.cu transport/net.cu transport/net_socket.cu transport/net_ib.cu \
@@ -80,6 +80,11 @@ $(INCDIR)/%.h : %.h
mkdir -p $(INCDIR)
cp -f $< $@
$(INCDIR)/nccl_%.h : include/nccl_%.h
@printf "Grabbing %-35s > %s\n" $< $@
mkdir -p $(INCDIR)
cp -f $< $@
$(OBJDIR)/%.o : %.cu
@printf "Compiling %-35s > %s\n" $< $@
mkdir -p `dirname $@`