HTML formatted output
This commit is contained in:
98
v11.sh
98
v11.sh
@@ -1,7 +1,9 @@
|
|||||||
set -eou pipefail
|
set -eou pipefail
|
||||||
|
|
||||||
|
SIMULTANEOUS_DOWNLOADS=4
|
||||||
|
SIMULTANEOUS_EXTRACTS=2
|
||||||
|
|
||||||
V11_URLS=(
|
URLS=(
|
||||||
https://developer.download.nvidia.com/compute/cuda/11.0.1/local_installers/cuda_11.0.1_450.36.06_linux.run
|
https://developer.download.nvidia.com/compute/cuda/11.0.1/local_installers/cuda_11.0.1_450.36.06_linux.run
|
||||||
https://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run
|
https://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run
|
||||||
https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run
|
https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run
|
||||||
@@ -30,27 +32,31 @@ https://developer.download.nvidia.com/compute/cuda/11.7.1/local_installers/cuda_
|
|||||||
https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
|
https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
|
||||||
)
|
)
|
||||||
|
|
||||||
function download {
|
function cuda_release {
|
||||||
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
||||||
echo $1
|
|
||||||
if [[ $1 =~ $version_re ]]; then
|
if [[ $1 =~ $version_re ]]; then
|
||||||
|
|
||||||
echo ${BASH_REMATCH[1]}
|
echo ${BASH_REMATCH[1]}
|
||||||
version=${BASH_REMATCH[1]}
|
|
||||||
# echo ${BASH_REMATCH[*]}
|
|
||||||
|
|
||||||
else
|
else
|
||||||
echo "no match"
|
echo "no match"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fname=$(basename $1)
|
}
|
||||||
|
|
||||||
|
function download {
|
||||||
|
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
||||||
|
if [[ $1 =~ $version_re ]]; then
|
||||||
|
echo ${BASH_REMATCH[1]}
|
||||||
|
version=${BASH_REMATCH[1]}
|
||||||
|
else
|
||||||
|
echo "no match"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
wget --no-check-certificate -c $1
|
wget --no-check-certificate -c $1
|
||||||
}
|
}
|
||||||
export -f download # export to subshells
|
export -f download # export to subshells
|
||||||
|
|
||||||
|
|
||||||
function extract {
|
function extract {
|
||||||
echo $1
|
|
||||||
fname=$(basename $1)
|
fname=$(basename $1)
|
||||||
dirname="${fname%.*}"
|
dirname="${fname%.*}"
|
||||||
echo "$1 -> $dirname"
|
echo "$1 -> $dirname"
|
||||||
@@ -59,18 +65,70 @@ function extract {
|
|||||||
}
|
}
|
||||||
export -f extract # export to subshells
|
export -f extract # export to subshells
|
||||||
|
|
||||||
echo "downloading"
|
function cuda_version {
|
||||||
parallel -j2 download {} ::: ${V11_URLS[*]}
|
fname=$(basename $1)
|
||||||
|
|
||||||
echo "extracting"
|
|
||||||
parallel extract {} ::: ${V11_URLS[*]}
|
|
||||||
|
|
||||||
# find all cuda versions
|
|
||||||
for url in ${V11_URLS[*]}; do
|
|
||||||
echo $url
|
|
||||||
fname=$(basename $url)
|
|
||||||
dirname="${fname%.*}"
|
dirname="${fname%.*}"
|
||||||
|
version=$(grep -roh -E 'CUDA_VERSION ([0-9]+)' $dirname/cuda_cudart/include | grep -o -E '[0-9]+')
|
||||||
|
echo CUDA_VERSION '(CUDA API Version)' $version
|
||||||
|
}
|
||||||
|
|
||||||
grep -r 'e CUSPARSE_VER_' $dirname;
|
function cusparse_version {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
major=$(grep -roh -E 'CUSPARSE_VER_MAJOR ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
minor=$(grep -roh -E 'CUSPARSE_VER_MINOR ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
patch=$(grep -roh -E 'CUSPARSE_VER_PATCH ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
build=$(grep -roh -E 'CUSPARSE_VER_BUILD ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
echo $major.$minor.$patch.$build
|
||||||
|
}
|
||||||
|
|
||||||
|
function cusparse_size {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
size=$(du -s $dirname/libcusparse | cut -f1)
|
||||||
|
echo $size B
|
||||||
|
}
|
||||||
|
|
||||||
|
function cublas_version {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
major=$(grep -roh -E 'CUBLAS_VER_MAJOR ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
minor=$(grep -roh -E 'CUBLAS_VER_MINOR ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
patch=$(grep -roh -E 'CUBLAS_VER_PATCH ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
build=$(grep -roh -E 'CUBLAS_VER_BUILD ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
echo $major.$minor.$patch.$build
|
||||||
|
}
|
||||||
|
|
||||||
|
function cublas_size {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
size=$(du -s $dirname/libcublas | cut -f1)
|
||||||
|
echo $size B
|
||||||
|
}
|
||||||
|
|
||||||
|
# echo "downloading"
|
||||||
|
# nice -n20 parallel -j${SIMULTANEOUS_DOWNLOADS} download {} ::: ${URLS[*]}
|
||||||
|
|
||||||
|
# echo "extracting"
|
||||||
|
# nice -n20 parallel -j${SIMULTANEOUS_EXTRACTS} extract {} ::: ${URLS[*]}
|
||||||
|
|
||||||
|
echo "<table>"
|
||||||
|
echo "<tr><th> CUDA Release </th><th> cuSPARSE Version </th><th> cuSPARSE Size (B) </th></tr>"
|
||||||
|
for url in ${URLS[*]}; do
|
||||||
|
_r=$(cuda_release "$url")
|
||||||
|
_cs_v=$(cusparse_version "$url")
|
||||||
|
_cs_s=$(cusparse_size "$url")
|
||||||
|
echo "<tr><td> $_r </td><td> $_cs_v </td><td> $_cs_s </td></tr>"
|
||||||
done
|
done
|
||||||
|
echo "</table>"
|
||||||
|
|
||||||
|
echo "<table>"
|
||||||
|
echo "<tr><th> CUDA Release </th><th> cuBLAS Version </th><th> cuBLAS Size (B) </th></tr>"
|
||||||
|
for url in ${URLS[*]}; do
|
||||||
|
_r=$(cuda_release "$url")
|
||||||
|
_cb_v=$(cublas_version "$url")
|
||||||
|
_cb_s=$(cublas_size "$url")
|
||||||
|
echo "<tr><td> $_r </td><td> $_cb_v </td><td> $_cb_s </td></tr>"
|
||||||
|
done
|
||||||
|
echo "</table>"
|
||||||
|
|
||||||
|
|||||||
96
v12.sh
96
v12.sh
@@ -1,6 +1,7 @@
|
|||||||
set -eou pipefail
|
set -eou pipefail
|
||||||
|
|
||||||
echo "downloading"
|
SIMULTANEOUS_DOWNLOADS=4
|
||||||
|
SIMULTANEOUS_EXTRACTS=2
|
||||||
|
|
||||||
URLS=(
|
URLS=(
|
||||||
https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda_12.0.0_525.60.13_linux.run
|
https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda_12.0.0_525.60.13_linux.run
|
||||||
@@ -12,27 +13,31 @@ https://developer.download.nvidia.com/compute/cuda/12.2.1/local_installers/cuda_
|
|||||||
https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
|
https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run
|
||||||
)
|
)
|
||||||
|
|
||||||
function download {
|
function cuda_release {
|
||||||
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
||||||
echo $1
|
|
||||||
if [[ $1 =~ $version_re ]]; then
|
if [[ $1 =~ $version_re ]]; then
|
||||||
|
|
||||||
echo ${BASH_REMATCH[1]}
|
echo ${BASH_REMATCH[1]}
|
||||||
version=${BASH_REMATCH[1]}
|
|
||||||
# echo ${BASH_REMATCH[*]}
|
|
||||||
|
|
||||||
else
|
else
|
||||||
echo "no match"
|
echo "no match"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fname=$(basename $1)
|
}
|
||||||
|
|
||||||
|
function download {
|
||||||
|
version_re='/([0-9]+\.[0-9]+\.[0-9]+)/'
|
||||||
|
if [[ $1 =~ $version_re ]]; then
|
||||||
|
echo ${BASH_REMATCH[1]}
|
||||||
|
version=${BASH_REMATCH[1]}
|
||||||
|
else
|
||||||
|
echo "no match"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
wget --no-check-certificate -c $1
|
wget --no-check-certificate -c $1
|
||||||
}
|
}
|
||||||
export -f download # export to subshells
|
export -f download # export to subshells
|
||||||
|
|
||||||
|
|
||||||
function extract {
|
function extract {
|
||||||
echo $1
|
|
||||||
fname=$(basename $1)
|
fname=$(basename $1)
|
||||||
dirname="${fname%.*}"
|
dirname="${fname%.*}"
|
||||||
echo "$1 -> $dirname"
|
echo "$1 -> $dirname"
|
||||||
@@ -41,18 +46,69 @@ function extract {
|
|||||||
}
|
}
|
||||||
export -f extract # export to subshells
|
export -f extract # export to subshells
|
||||||
|
|
||||||
echo "downloading"
|
function cuda_version {
|
||||||
parallel -j2 download {} ::: ${URLS[*]}
|
fname=$(basename $1)
|
||||||
|
|
||||||
echo "extracting"
|
|
||||||
parallel extract {} ::: ${URLS[*]}
|
|
||||||
|
|
||||||
# find all cuda versions
|
|
||||||
for url in ${URLS[*]}; do
|
|
||||||
echo $url
|
|
||||||
fname=$(basename $url)
|
|
||||||
dirname="${fname%.*}"
|
dirname="${fname%.*}"
|
||||||
|
version=$(grep -roh -E 'CUDA_VERSION ([0-9]+)' $dirname/cuda_cudart/include | grep -o -E '[0-9]+')
|
||||||
|
echo CUDA_VERSION '(CUDA API Version)' $version
|
||||||
|
}
|
||||||
|
|
||||||
grep -r 'e CUSPARSE_VER_' $dirname;
|
function cusparse_version {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
major=$(grep -roh -E 'CUSPARSE_VER_MAJOR ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
minor=$(grep -roh -E 'CUSPARSE_VER_MINOR ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
patch=$(grep -roh -E 'CUSPARSE_VER_PATCH ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
build=$(grep -roh -E 'CUSPARSE_VER_BUILD ([0-9]+)' $dirname/libcusparse/include | grep -o -E '[0-9]+')
|
||||||
|
echo $major.$minor.$patch.$build
|
||||||
|
}
|
||||||
|
|
||||||
|
function cusparse_size {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
size=$(du -s $dirname/libcusparse | cut -f1)
|
||||||
|
echo $size B
|
||||||
|
}
|
||||||
|
|
||||||
|
function cublas_version {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
major=$(grep -roh -E 'CUBLAS_VER_MAJOR ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
minor=$(grep -roh -E 'CUBLAS_VER_MINOR ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
patch=$(grep -roh -E 'CUBLAS_VER_PATCH ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
build=$(grep -roh -E 'CUBLAS_VER_BUILD ([0-9]+)' $dirname/libcublas/include | grep -o -E '[0-9]+')
|
||||||
|
echo $major.$minor.$patch.$build
|
||||||
|
}
|
||||||
|
|
||||||
|
function cublas_size {
|
||||||
|
fname=$(basename $1)
|
||||||
|
dirname="${fname%.*}"
|
||||||
|
size=$(du -s $dirname/libcublas | cut -f1)
|
||||||
|
echo $size B
|
||||||
|
}
|
||||||
|
|
||||||
|
# echo "downloading"
|
||||||
|
# nice -n20 parallel -j${SIMULTANEOUS_DOWNLOADS} download {} ::: ${URLS[*]}
|
||||||
|
|
||||||
|
# echo "extracting"
|
||||||
|
# nice -n20 parallel -j${SIMULTANEOUS_EXTRACTS} extract {} ::: ${URLS[*]}
|
||||||
|
|
||||||
|
echo "<table>"
|
||||||
|
echo "<tr><th> CUDA Release </th><th> cuSPARSE Version </th><th> cuSPARSE Size (B) </th></tr>"
|
||||||
|
for url in ${URLS[*]}; do
|
||||||
|
_r=$(cuda_release "$url")
|
||||||
|
_cs_v=$(cusparse_version "$url")
|
||||||
|
_cs_s=$(cusparse_size "$url")
|
||||||
|
echo "<tr><td> $_r </td><td> $_cs_v </td><td> $_cs_s </td></tr>"
|
||||||
done
|
done
|
||||||
|
echo "</table>"
|
||||||
|
|
||||||
|
echo "<table>"
|
||||||
|
echo "<tr><th> CUDA Release </th><th> cuBLAS Version </th><th> cuBLAS Size (B) </th></tr>"
|
||||||
|
for url in ${URLS[*]}; do
|
||||||
|
_r=$(cuda_release "$url")
|
||||||
|
_cb_v=$(cublas_version "$url")
|
||||||
|
_cb_s=$(cublas_size "$url")
|
||||||
|
echo "<tr><td> $_r </td><td> $_cb_v </td><td> $_cb_s </td></tr>"
|
||||||
|
done
|
||||||
|
echo "</table>"
|
||||||
|
|||||||
Reference in New Issue
Block a user