Lancelot is a research prototype of a hybrid CPU and Multi-GPU DBMS.
*Dependencies:
Ubuntu > 20.04
GCC > 9.4
CUDA > 11.0
IntelTBB
To use Lancelot:
cd test/
# Generate the test generator / transformer binaries
cd ssb/dbgen
make
cd ../loader
make
cd ../../
# Generate the test data and transform into columnar layout
# Substitute <SF> with appropriate scale factor (eg: 1)
python util.py ssb <SF> gen
python util.py ssb <SF> transform
# Edit SF and BASE_PATH in src/ssb/ssb_utils.h
make bin/gpudb/minmax
./minmax.sh
# Edit SF and BASE_PATH in src/ssb/ssb_utils.h
# From the home directory of Lancelot
make bin/gpudb/gen_synthetic_bench
./bin/gpudb/gen_synthetic_bench
./minmax.sh
# Edit SF and BASE_PATH in src/ssb/ssb_utils.h
# Edit NUM_GPU in common.h based on the desired number of GPUs
make bin/gpudb/main_multi_gpu
./bin/gpudb/main_multi_gpu