@@ -19,6 +19,7 @@ USE_TSM ?= 0
1919USE_MPI ?= 0
2020USE_UCX ?= 0
2121USE_IBUC ?= 0
22+ USE_ACCL_BAREX ?= 0
2223USE_ENFLAME ?= 0
2324USE_SUNRISE ?= 0
2425USE_PPU ?= 0
@@ -215,6 +216,20 @@ ifeq ($(USE_IBUC), 1)
215216 NET_ADAPTOR_FLAG += -DUSE_IBUC
216217endif
217218
219+ # ACCL (accl::barex) transport for PPU + vsolar hosts lacking peer-mem/DMA-BUF.
220+ # Devel package installs under /usr; select at runtime with FLAGCX_P2P_TRANSPORT=accl.
221+ ifeq ($(USE_ACCL_BAREX ) , 1)
222+ ACCL_BAREX_HOME ?= /usr
223+ ACCL_BAREX_INCLUDE = $(ACCL_BAREX_HOME)/include
224+ ACCL_BAREX_LIB = $(ACCL_BAREX_HOME)/lib
225+ ACCL_BAREX_LINK = -laccl_barex
226+ NET_ADAPTOR_FLAG += -DUSE_ACCL_BAREX -DCMAKE_INCLUDE=1
227+ else
228+ ACCL_BAREX_INCLUDE = .
229+ ACCL_BAREX_LIB = .
230+ ACCL_BAREX_LINK =
231+ endif
232+
218233ifeq ($(COMPILE_KERNEL ) , 1)
219234 COMPILE_KERNEL_FLAG = -DCOMPILE_KERNEL
220235 COMPILE_KERNEL_HOST_FLAG = -DCOMPILE_KERNEL_HOST
@@ -325,7 +340,7 @@ endif
325340$(LIBDIR ) /$(TARGET ) : $(LIBOBJ ) $(DEVOBJS )
326341 @mkdir -p ` dirname $@ `
327342 @echo " Linking $@ "
328- @$(LINKER ) $^ -o $@ -L$(CCL_LIB ) -L$(DEVICE_LIB ) -L$(HOST_CCL_LIB ) -L$(UCX_LIB ) -shared -fvisibility=default -Wl,--no-as-needed -Wl,-rpath,$(LIBDIR ) -Wl,-rpath,$(CCL_LIB ) -Wl,-rpath,$(HOST_CCL_LIB ) -Wl,-rpath,$(UCX_LIB ) -lpthread -lrt -ldl $(CCL_LINK ) $(DEVICE_LINK ) $(HOST_CCL_LINK ) $(UCX_LINK ) -g
343+ @$(LINKER ) $^ -o $@ -L$(CCL_LIB ) -L$(DEVICE_LIB ) -L$(HOST_CCL_LIB ) -L$(UCX_LIB ) -L $( ACCL_BAREX_LIB ) - shared -fvisibility=default -Wl,--no-as-needed -Wl,-rpath,$(LIBDIR ) -Wl,-rpath,$(CCL_LIB ) -Wl,-rpath,$(HOST_CCL_LIB ) -Wl,-rpath,$(UCX_LIB ) -Wl,-rpath, $( ACCL_BAREX_LIB ) - lpthread -lrt -ldl $(CCL_LINK ) $(DEVICE_LINK ) $(HOST_CCL_LINK ) $(UCX_LINK ) $( ACCL_BAREX_LINK ) -g
329344
330345# Copy public headers from flagcx/include/ into the build output tree so they
331346# sit next to the shared libraries (build/include + build/lib).
@@ -337,7 +352,7 @@ $(BUILD_INCDIR)/%.h: flagcx/include/%.h
337352$(OBJDIR ) /% .o : % .cc
338353 @mkdir -p ` dirname $@ `
339354 @echo " Compiling $@ "
340- @$(HOST_COMPILER ) $< -o $@ $(foreach dir,$(INCLUDEDIR ) ,-I$(dir ) ) -I$(CCL_INCLUDE ) $(addprefix -I,$(DEVICE_INCLUDE ) ) -I$(HOST_CCL_INCLUDE ) -I$(UCX_INCLUDE ) $(ADAPTOR_FLAG ) $(HOST_CCL_ADAPTOR_FLAG ) $(NET_ADAPTOR_FLAG ) $(COMPILE_KERNEL_HOST_FLAG ) -c -fPIC -fvisibility=default -Wvla -Wno-unused-function -Wno-sign-compare -Wall -MMD -MP -g
355+ @$(HOST_COMPILER ) $< -o $@ $(foreach dir,$(INCLUDEDIR ) ,-I$(dir ) ) -I$(CCL_INCLUDE ) $(addprefix -I,$(DEVICE_INCLUDE ) ) -I$(HOST_CCL_INCLUDE ) -I$(UCX_INCLUDE ) -I $( ACCL_BAREX_INCLUDE ) $(ADAPTOR_FLAG ) $(HOST_CCL_ADAPTOR_FLAG ) $(NET_ADAPTOR_FLAG ) $(COMPILE_KERNEL_HOST_FLAG ) -c -fPIC -fvisibility=default -Wvla -Wno-unused-function -Wno-sign-compare -Wall -MMD -MP -g
341356
342357ifeq ($(COMPILE_KERNEL ) , 1)
343358$(OBJDIR ) /kernel_dlink.o : $(DEVOBJ )
0 commit comments