Skip to content
This repository has been archived by the owner on Dec 9, 2024. It is now read-only.

Move to Alpaka Memory + Alpaka 0.9 + CMSSW Alpaka Caching Allocator #292

Merged
merged 44 commits into from
Jul 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
cacd983
remove unused memory functions
GNiendorf May 18, 2023
efa60af
first working segment memory w/o ntuple
GNiendorf May 31, 2023
8ef1c92
temporary fix for ntuple writing
GNiendorf May 31, 2023
11372df
remove unused print util files
GNiendorf May 31, 2023
b937556
move remaining buffers to wrapper
GNiendorf May 31, 2023
a68cdb9
debug cleanup
GNiendorf May 31, 2023
0286d43
more debug removal
GNiendorf May 31, 2023
fbccc37
generalize to host allocations
GNiendorf May 31, 2023
9a61b02
templated buffer type
GNiendorf Jun 1, 2023
96d3b8b
working ntuple writing with templated segments
GNiendorf Jun 1, 2023
7670310
formatting fixes
GNiendorf Jun 1, 2023
955c3f0
remove extra alpaka flags
GNiendorf Jun 1, 2023
e4827f6
move elementsPerThread to Constants.cuh
GNiendorf Jun 1, 2023
1813b98
fix cuda Malloc/Free bug, formatting fixes
GNiendorf Jun 3, 2023
d7d466e
first working hits.cu to alpaka memory
GNiendorf Jun 4, 2023
c2a6046
Move Hit.cu + Segments.cu to inheritance technique
GNiendorf Jun 7, 2023
d42ebb0
Move objectranges to Alpaka memory
GNiendorf Jun 7, 2023
a3f89d1
remove debug
GNiendorf Jun 7, 2023
b6324bc
Move triplets to Alpaka memory
GNiendorf Jun 8, 2023
8901df6
formatting fixes
GNiendorf Jun 8, 2023
24a56cd
move quintuplets to Alpaka memory
GNiendorf Jun 8, 2023
dbadfd9
move trackcans to Alpaka memory
GNiendorf Jun 8, 2023
337b7b7
move minidoublets to Alpaka memory
GNiendorf Jun 8, 2023
ac28537
remove unused input to mds
GNiendorf Jun 8, 2023
15341fd
fix overallocation bug
GNiendorf Jun 8, 2023
5bf9268
move pixels over to Alpaka memory
GNiendorf Jun 9, 2023
edcd381
move pixelmap + various host/copies + general cleanup
GNiendorf Jun 11, 2023
86f750b
move endcap maps to Alpaka temp
GNiendorf Jun 13, 2023
6f2af67
move modules to Alpaka memory temp
GNiendorf Jun 14, 2023
68b7b7b
first working alpaka everything
GNiendorf Jun 27, 2023
62e3dc3
move to more recent alpaka version
GNiendorf Jun 27, 2023
386d40a
remove last cuda
GNiendorf Jun 27, 2023
03948d7
beginning integration of cmssw alpaka interface/caching allocator
GNiendorf Jun 28, 2023
8105c8d
bring back caching allocator toggle
GNiendorf Jun 28, 2023
ad2048b
full alpaka caching allocator
GNiendorf Jun 28, 2023
8d907e4
cleanup
GNiendorf Jun 28, 2023
dd3b92a
setup for lnx7188
GNiendorf Jul 5, 2023
aaf1e60
fix caching allocator bug
GNiendorf Jul 5, 2023
54c1103
move to most recent cmssw alpaka interface + newer alpaka version
GNiendorf Jul 10, 2023
37d4217
remove no_host_acc_warnings and cleanup
GNiendorf Jul 14, 2023
37cd75f
turn off half precision code
GNiendorf Jul 14, 2023
8b966b7
remove unused wrapper functions
GNiendorf Jul 14, 2023
9a84b03
removed unused score variables
GNiendorf Jul 16, 2023
46b91b8
group addXtoEventExplicit functions
GNiendorf Jul 16, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 11 additions & 10 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -9,19 +9,20 @@ SOURCES=$(wildcard code/core/*.cc) #$(wildcard SDL/*.cc)
OBJECTS=$(SOURCES:.cc=.o) $(wildcard ${TRACKLOOPERDIR}/SDL/libsdl.so)
HEADERS=$(SOURCES:.cc=.h)

CC = nvcc
CXX = nvcc
CXXFLAGS = -g -O2 --compiler-options -Wall --compiler-options -fPIC --compiler-options -Wshadow --compiler-options -Woverloaded-virtual -G -lineinfo -fopenmp -lgomp --default-stream per-thread
CC = g++
CXX = g++
CXXFLAGS = -g -O2 -Wall -fPIC -std=c++17 -Wshadow -Woverloaded-virtual -lineinfo -fopenmp -lgomp --default-stream per-thread
LD = g++
LDFLAGS = -g -O2 -Wall -fPIC -Wshadow -Woverloaded-virtual -I/mnt/data1/dsr/cub
SOFLAGS = -g -shared
CXXFLAGS = -g -O2 -Wall -fPIC -Wshadow -Woverloaded-virtual
LDFLAGS = -g -O2
ROOTLIBS = $(shell root-config --libs)
ROOTCFLAGS = $(foreach option, $(shell root-config --cflags), --compiler-options $(option))
CFLAGS = $(ROOTCFLAGS) --compiler-options -Wall --compiler-options -Wno-unused-function --compiler-options -g --compiler-options -O2 --compiler-options -fPIC --compiler-options -fno-var-tracking -ISDL -I$(shell pwd) -Icode -Icode/core -I/mnt/data1/dsr/cub -I${CUDA_HOME}/include --compiler-options -fopenmp -I${ALPAKA_ROOT}/include -I/${BOOST_ROOT}/include
EXTRACFLAGS = $(shell rooutil-config)
EXTRAFLAGS = -fPIC -ITMultiDrawTreePlayer -Wunused-variable -lTMVA -lEG -lGenVector -lXMLIO -lMLP -lTreePlayer -L${CUDA_HOME}/lib64 -lcudart -fopenmp -I${ALPAKA_ROOT}/include -I/${BOOST_ROOT}/include
ROOTCFLAGS = $(foreach option, $(shell root-config --cflags), $(option))
ALPAKAINCLUDE = -I${ALPAKA_ROOT}/include -I/${BOOST_ROOT}/include -DALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED -DALPAKA_DEBUG=0
CFLAGS = $(ROOTCFLAGS) -Wall -Wno-unused-function -g -O2 -fPIC -fno-var-tracking -ISDL -I$(shell pwd) -Icode -Icode/core -I/mnt/data1/dsr/cub -I${CUDA_HOME}/include -fopenmp
EXTRACFLAGS = $(shell rooutil-config) -g
EXTRAFLAGS = -fPIC -ITMultiDrawTreePlayer -Wunused-variable -lTMVA -lEG -lGenVector -lXMLIO -lMLP -lTreePlayer -L${CUDA_HOME}/lib64 -lcudart -fopenmp
DOQUINTUPLET = -DFP16_Base -DFP16_dPhi #-DFP16_circle -DFP16_seg -DFP16_T5 #-DDO_QUINTUPLET #-DDO_QUADRUPLET
PT0P8 =
T3T3EXTENSION=
Expand All @@ -46,13 +47,13 @@ cutvalue_primitive: $(ROOUTIL) efficiency $(EXES)


bin/doAnalysis: bin/doAnalysis.o $(OBJECTS)
$(CC) $(PT0P8) $(T3T3EXTENSION) $(LDFLAGS) $^ $(ROOTLIBS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(EXTRAFLAGS) $(DOQUINTUPLET) -o $@
$(CC) $(PT0P8) $(T3T3EXTENSION) $(LDFLAGS) $^ $(ROOTLIBS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(EXTRAFLAGS) $(DOQUINTUPLET) $(ALPAKAINCLUDE) -o $@

bin/sdl: bin/sdl.o $(OBJECTS)
$(LD) $(PT0P8) $(T3T3EXTENSION) $(LDFLAGS) $^ $(ROOTLIBS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(EXTRAFLAGS) $(DOQUINTUPLET) -o $@
$(LD) $(PT0P8) $(T3T3EXTENSION) $(LDFLAGS) $^ $(ROOTLIBS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(EXTRAFLAGS) $(DOQUINTUPLET) $(ALPAKAINCLUDE) -o $@

%.o: %.cc
$(CC) $(PT0P8) $(T3T3EXTENSION) $(CFLAGS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(DOQUINTUPLET) $< -dc -o $@
$(CC) $(PT0P8) $(T3T3EXTENSION) $(CFLAGS) $(EXTRACFLAGS) $(CUTVALUEFLAG) $(PRIMITIVEFLAG) $(DOQUINTUPLET) $(ALPAKAINCLUDE) $< -c -o $@

$(ROOUTIL):
$(MAKE) -C code/rooutil/
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,12 @@ For lnx7188 this needs to be done once
cd /cdat/tem/${USER}/
git clone [email protected]:SegmentLinking/LSTPerformanceWeb.git

### Setting up container (only for lnx7188)

For lnx7188 this needs to be done before compiling or running the code:

singularity shell --nv --bind /mnt/data1:/data --bind /data2/segmentlinking/ --bind /opt --bind /nfs --bind /mnt --bind /cvmfs /cvmfs/unpacked.cern.ch/registry.hub.docker.com/cmssw/el8:x86_64

### Running the code

git clone --recursive [email protected]:SegmentLinking/TrackLooper.git
Expand Down
Loading