sglang_v0.5.2/gdrcopy/tests/Makefile

70 lines
2.2 KiB
Makefile

DESTBIN ?=
CUDA ?= /usr/local/cuda
NVCC ?= $(CUDA)/bin/nvcc
GDRAPI_INC := ../include
GDRAPI_SRC := ../src
CUDA_LIB := -L $(CUDA)/lib64 -L $(CUDA)/lib -L /usr/lib64/nvidia -L /usr/lib/nvidia -L $(CUDA)/lib64/stubs
CUDA_INC += -I $(CUDA)/include
CPPFLAGS := $(CUDA_INC) -I $(GDRAPI_INC) -I $(GDRAPI_SRC) -I $(CUDA)/include
LDFLAGS := $(CUDA_LIB) -L $(CUDA)/lib64 -L $(GDRAPI_SRC)
COMMONCFLAGS := -O2
CFLAGS += $(COMMONCFLAGS)
CXXFLAGS += $(COMMONCFLAGS)
NVCCFLAGS ?=
LIBS := -lcuda -lpthread -ldl -lgdrapi
CPP_SRCS := copybw.cpp sanity.cpp copylat.cpp apiperf.cpp
CU_SRCS := pplat.cu
EXES := $(patsubst %.cpp,gdrcopy_%,$(CPP_SRCS)) $(patsubst %.cu,gdrcopy_%,$(CU_SRCS))
all: exes
exes: $(EXES)
testsuites/testsuite.o: testsuites/testsuite.cpp testsuites/testsuite.hpp common.hpp
common.o: common.cpp $(GDRAPI_INC)/gdrapi.h common.hpp
copybw.o: copybw.cpp $(GDRAPI_INC)/gdrapi.h common.hpp
sanity.o: sanity.cpp $(GDRAPI_INC)/gdrapi.h $(GDRAPI_SRC)/gdrapi_internal.h common.hpp testsuites/testsuite.hpp
copylat.o: copylat.cpp $(GDRAPI_INC)/gdrapi.h common.hpp
apiperf.o: apiperf.cpp $(GDRAPI_INC)/gdrapi.h common.hpp
gdrcopy_copybw: copybw.o common.o
$(LINK.cc) -o $@ $^ $(LIBS) -lrt
gdrcopy_sanity: sanity.o common.o testsuites/testsuite.o
$(LINK.cc) -o $@ $^ $(LIBS)
gdrcopy_copylat: copylat.o common.o
$(LINK.cc) -o $@ $^ $(LIBS) -lrt
gdrcopy_apiperf: apiperf.o common.o
$(LINK.cc) -o $@ $^ $(LIBS) -lrt
gdrcopy_pplat: pplat.o common.o
$(NVCC) -o $@ $^ $(LDFLAGS) -lgdrapi -lcuda
%.o: %.cu
$(NVCC) -o $@ -c $^ $(LIBS) $(CPPFLAGS) $(NVCCFLAGS)
clean:
rm -f *.o $(EXES) *~ core.* testsuites/*.o
install: exes
@ echo "installing exes in $(DESTBIN)..." && \
mkdir -p $(DESTBIN) && \
install -D -v -m u=rwx,g=rx,o=rx gdrcopy_copybw -t $(DESTBIN) && \
install -D -v -m u=rwx,g=rx,o=rx gdrcopy_copylat -t $(DESTBIN) && \
install -D -v -m u=rwx,g=rx,o=rx gdrcopy_apiperf -t $(DESTBIN) && \
install -D -v -m u=rwx,g=rx,o=rx gdrcopy_sanity -t $(DESTBIN) && \
install -D -v -m u=rwx,g=rx,o=rx gdrcopy_pplat -t $(DESTBIN)
cd $(DESTBIN) && \
ln -sf gdrcopy_copybw copybw && \
ln -sf gdrcopy_copylat copylat && \
ln -sf gdrcopy_apiperf apiperf && \
ln -sf gdrcopy_sanity sanity
.PHONY: clean all exes install