Install beagle-lib for NVidia Tesla V100 on Debian buster
BEAGLE is a high-performance library to accelerate the calculations of Bayesian and Maximun Likelihood phylogenetics analyses. The latest version of beagle-lib was released on Dec 4, 2018.
When compiled for NVidia Tesla V100 on Debian buster 10.9, an error was encountered:
nvcc fatal : Value 'compute_30' is not defined for option 'gpu-architecture'
1. Install NVidia driver and CUDA toolkit
Firstly, append this line in /etc/apt/sources.list
deb http://deb.debian.org/debian buster-backports main contrib non-free
Then, install:
sudo apt update
sudo apt install -t buster-backports nvidia-driver nvidia-cuda-toolkit
Now the NVidia driver 460.39 and CUDA toolkit 11.2.1 have been installed.
2. Download and install beagle-lib
From the beagle-lib installation instruction:
git clone --depth=1 https://github.com/beagle-dev/beagle-lib.git
cd beagle-lib
./autogen.sh
./configure --prefix=$HOME
make install
Here I encountered the error:
nvcc fatal : Value 'compute_30' is not defined for option 'gpu-architecture'
The “compute_30” was for the Kepler architecture, which has been deprecated in CUDA 11. Some modification is necessary.
After the running of “autogen.sh”, modify the file “configure” line 17911:
NVCCFLAGS="-O3 -arch compute_30"
to
NVCCFLAGS="-O3 -arch compute_70"
Then
./configure --prefix=$HOME
make install
The beagle-lib is installed ok.
3. More
Another error I encountered was:
cc1plus: error: /usr/bin/nvcc/include: Not a directory
It could be solved by:
./configure --prefix=$HOME --with-cuda=/usr