- CMake >= 3.20
- CUDA Toolkit >= 11.0
- C++17 compatible compiler
- Git
- Google Test (for unit testing)
- Google Benchmark (for performance testing)
# Install basic build tools
sudo apt-get update && sudo apt-get install -y \
build-essential \
cmake \
git
# Install CUDA Toolkit
# First add NVIDIA package repositories:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-11-0
# Install testing frameworks
sudo apt-get install -y \
googletest \
libgtest-dev \
libgmock-dev
# Clone and build Google Benchmark
git clone https://github.com/google/benchmark.git
cd benchmark
cmake -E make_directory "build"
cmake -E chdir "build" cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release ../
cmake --build "build" --config Release
sudo cmake --build "build" --target install
mkdir build && cd build
cmake -DBUILD_TESTS=ON -DBUILD_BENCHMARKS=ON ..
make