2018-11-11 08:19:04 -08:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
set -e
|
2019-05-24 09:28:52 -07:00
|
|
|
cd "$(dirname "$0")"
|
2018-06-20 15:11:59 -07:00
|
|
|
|
2019-05-24 09:28:52 -07:00
|
|
|
if [[ ! -d target/perf-libs ]]; then
|
|
|
|
if [[ $(uname) != Linux ]]; then
|
|
|
|
echo Performance libraries are only available for Linux
|
|
|
|
exit 1
|
|
|
|
fi
|
2018-06-20 15:11:59 -07:00
|
|
|
|
2019-05-24 09:28:52 -07:00
|
|
|
if [[ $(uname -m) != x86_64 ]]; then
|
|
|
|
echo Performance libraries are only available for x86_64 architecture
|
|
|
|
exit 1
|
|
|
|
fi
|
2018-06-20 15:11:59 -07:00
|
|
|
|
2019-05-24 09:28:52 -07:00
|
|
|
mkdir -p target/perf-libs
|
2018-08-16 18:49:23 -07:00
|
|
|
(
|
|
|
|
set -x
|
2019-05-24 18:06:38 -07:00
|
|
|
cd target/perf-libs
|
2019-06-08 10:21:43 -06:00
|
|
|
curl https://solana-perf.s3.amazonaws.com/v0.13.2/x86_64-unknown-linux-gnu/solana-perf.tgz | tar zxvf -
|
2018-08-16 18:49:23 -07:00
|
|
|
)
|
2019-05-24 09:28:52 -07:00
|
|
|
fi
|
|
|
|
|
2019-05-24 09:55:54 -07:00
|
|
|
cat > target/perf-libs/env.sh <<'EOF'
|
2019-05-24 12:27:12 -07:00
|
|
|
SOLANA_PERF_LIBS="$(cd $(dirname "${BASH_SOURCE[0]}"); pwd)"
|
2018-11-10 18:03:38 -08:00
|
|
|
|
2019-05-24 18:06:38 -07:00
|
|
|
echo "solana-perf-libs version: $(cat $SOLANA_PERF_LIBS/solana-perf-HEAD.txt)"
|
|
|
|
|
2019-05-24 09:28:52 -07:00
|
|
|
if [[ -r "$SOLANA_PERF_LIBS"/solana-perf-CUDA_HOME.txt ]]; then
|
|
|
|
CUDA_HOME=$(cat "$SOLANA_PERF_LIBS"/solana-perf-CUDA_HOME.txt)
|
|
|
|
else
|
|
|
|
CUDA_HOME=/usr/local/cuda
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo CUDA_HOME="$CUDA_HOME"
|
|
|
|
export CUDA_HOME="$CUDA_HOME"
|
|
|
|
|
|
|
|
echo LD_LIBRARY_PATH="$SOLANA_PERF_LIBS:$CUDA_HOME/lib64:$LD_LIBRARY_PATH"
|
|
|
|
export LD_LIBRARY_PATH="$SOLANA_PERF_LIBS:$CUDA_HOME/lib64:$LD_LIBRARY_PATH"
|
|
|
|
|
|
|
|
echo PATH="$SOLANA_PERF_LIBS:$CUDA_HOME/bin:$PATH"
|
|
|
|
export PATH="$SOLANA_PERF_LIBS:$CUDA_HOME/bin:$PATH"
|
|
|
|
|
|
|
|
if [[ -r "$CUDA_HOME"/version.txt && -r $SOLANA_PERF_LIBS/cuda-version.txt ]]; then
|
|
|
|
if ! diff "$CUDA_HOME"/version.txt "$SOLANA_PERF_LIBS"/cuda-version.txt > /dev/null; then
|
|
|
|
echo ==============================================
|
|
|
|
echo "Warning: possible CUDA version mismatch with $CUDA_HOME"
|
|
|
|
echo
|
|
|
|
echo "Expected version: $(cat "$SOLANA_PERF_LIBS"/cuda-version.txt)"
|
|
|
|
echo "Detected version: $(cat "$CUDA_HOME"/version.txt)"
|
|
|
|
echo ==============================================
|
2018-06-21 13:19:46 -07:00
|
|
|
fi
|
2019-05-24 09:28:52 -07:00
|
|
|
else
|
|
|
|
echo ==============================================
|
|
|
|
echo Warning: unable to validate CUDA version
|
|
|
|
echo ==============================================
|
|
|
|
fi
|
2018-11-12 17:50:16 -08:00
|
|
|
EOF
|
|
|
|
|
2019-05-24 09:28:52 -07:00
|
|
|
echo
|
2019-05-24 18:06:38 -07:00
|
|
|
echo "source $PWD/target/perf-libs/env.sh to setup environment"
|
2018-06-20 15:11:59 -07:00
|
|
|
exit 0
|