--
...and I will make them pay for what they've done! (J.L. Picard)
I have Mathematica 8.0.1 on Mageia 1 x86_64 with nVIDIA 280.13
$Version
"8.0 for Linux x86 (64-bit) (February 23, 2011)"
I just automatically downloaded and installed the 8.0.1.2 CUDA paclet by
Needs["CUDALink`"]
CUDAResourcesInformation[]
CUDAInformation[]
CUDAQ[]
I have gcc and g++ 4.5.2
[bert@Dell1720Mageia1 ~]$ gcc --version
gcc (GCC) 4.5.2
[bert@Dell1720Mageia1 ~]$ g++ --version
g++ (GCC) 4.5.2
To get the CUDAFunctionLoad examples to work without the message
"unsupported GNU version! gcc 4.5 and up are not supported!"
Comment out line 82 of
/home/bert/.Mathematica/Paclets/Repository/CUDAResources-Lin64-8.0.1.2/CUDAToolkit/include/host_config.h
You will now see that gcc version 4.5.2 produces correct results.
I noticed that CUDA toolkit 4.0.17 is used now in 8.0.1.2 (previous
version 8.0.1.1 still used CUDA toolkit 3.2.16) as can be seen in:
[bert@Dell1720Mageia1 lib64]$ pwd
/home/bert/.Mathematica/Paclets/Repository/CUDAResources-Lin64-8.0.1.2/CUDAToolkit/lib64
[bert@Dell1720Mageia1 lib64]$ ls -al
total 989948
drwxrwxr-x 2 bert bert 4096 Aug 25 21:42 ./
drwxrwxr-x 8 bert bert 4096 Aug 25 21:40 ../
-rw------- 1 bert bert 121 Aug 25 21:42 .directory
-rw-rw-r-- 1 bert bert 129409864 Aug 25 21:40 libcublas.so
-rw-rw-r-- 1 bert bert 129409864 Aug 25 21:40 libcublas.so.4
-rw-rw-r-- 1 bert bert 129409864 Aug 25 21:40 libcublas.so.4.0.17
-rw-rw-r-- 1 bert bert 443136 Aug 25 21:40 libcudart.so
-rw-rw-r-- 1 bert bert 443136 Aug 25 21:40 libcudart.so.4
-rw-rw-r-- 1 bert bert 443136 Aug 25 21:40 libcudart.so.4.0.17
-rw-rw-r-- 1 bert bert 87620720 Aug 25 21:40 libcufft.so
-rw-rw-r-- 1 bert bert 87620720 Aug 25 21:40 libcufft.so.4
-rw-rw-r-- 1 bert bert 87620720 Aug 25 21:40 libcufft.so.4.0.17
-rw-rw-r-- 1 bert bert 25355552 Aug 25 21:40 libcurand.so
-rw-rw-r-- 1 bert bert 25355552 Aug 25 21:40 libcurand.so.4
-rw-rw-r-- 1 bert bert 25355552 Aug 25 21:40 libcurand.so.4.0.17
-rw-rw-r-- 1 bert bert 49395592 Aug 25 21:40 libcusparse.so
-rw-rw-r-- 1 bert bert 49395592 Aug 25 21:40 libcusparse.so.4
-rw-rw-r-- 1 bert bert 49395592 Aug 25 21:40 libcusparse.so.4.0.17
-rw-rw-r-- 1 bert bert 45654504 Aug 25 21:40 libnpp.so
-rw-rw-r-- 1 bert bert 45654504 Aug 25 21:40 libnpp.so.4
-rw-rw-r-- 1 bert bert 45654504 Aug 25 21:40 libnpp.so.4.0.17
This way of working with multiple versions of the same file is very
harddisk space consuming - this should be done with symbolic links as in:
[bert@Dell1720Mageia1 lib64]$ pwd
/usr/local/cuda/lib64
[bert@Dell1720Mageia1 lib64]$ ls -al
total 328844
drwxr-xr-x 2 root root 4096 Jun 19 21:55 ./
drwxr-xr-x 11 root root 4096 Jun 19 22:05 ../
lrwxrwxrwx 1 root root 14 Jun 19 21:55 libcublas.so ->
libcublas.so.4*
lrwxrwxrwx 1 root root 19 Jun 19 21:55 libcublas.so.4 ->
libcublas.so.4.0.17*
-rwxr-xr-x 1 root root 129201304 Jun 19 21:55 libcublas.so.4.0.17*
lrwxrwxrwx 1 root root 14 Jun 19 21:55 libcudart.so ->
libcudart.so.4*
lrwxrwxrwx 1 root root 19 Jun 19 21:55 libcudart.so.4 ->
libcudart.so.4.0.17*
-rwxr-xr-x 1 root root 328560 Jun 19 21:55 libcudart.so.4.0.17*
lrwxrwxrwx 1 root root 13 Jun 19 21:55 libcufft.so -> libcufft.so.4*
lrwxrwxrwx 1 root root 18 Jun 19 21:55 libcufft.so.4 ->
libcufft.so.4.0.17*
-rwxr-xr-x 1 root root 87483032 Jun 19 21:55 libcufft.so.4.0.17*
lrwxrwxrwx 1 root root 14 Jun 19 21:55 libcurand.so ->
libcurand.so.4*
lrwxrwxrwx 1 root root 19 Jun 19 21:55 libcurand.so.4 ->
libcurand.so.4.0.17*
-rwxr-xr-x 1 root root 25372016 Jun 19 21:55 libcurand.so.4.0.17*
lrwxrwxrwx 1 root root 16 Jun 19 21:55 libcusparse.so ->
libcusparse.so.4*
lrwxrwxrwx 1 root root 21 Jun 19 21:55 libcusparse.so.4 ->
libcusparse.so.4.0.17*
-rwxr-xr-x 1 root root 49174616 Jun 19 21:55 libcusparse.so.4.0.17*
lrwxrwxrwx 1 root root 11 Jun 19 21:55 libnpp.so -> libnpp.so.4*
lrwxrwxrwx 1 root root 16 Jun 19 21:55 libnpp.so.4 ->
libnpp.so.4.0.17*
-rwxr-xr-x 1 root root 45152440 Jun 19 21:55 libnpp.so.4.0.17*
This is the CUDA Toolkit 4.0.17 directly from nVIDIA's website. Notice
the difference in file size with the Mathematica ones.
All my Mathematica CUDA examples work perfectly with 8.0.1.2.
My suggestions:
+ use Mathematica 8.0.1 to install CUDAResources-Lin64-8.0.1.2
+ use latest nVIDIA recommended driver 280.13 to be sure you have the
CUDA driver 4.0
Kind regards,
Bert
> My suggestions:
> + use Mathematica 8.0.1 to install CUDAResources-Lin64-8.0.1.2
> + use latest nVIDIA recommended driver 280.13 to be sure you have the
> CUDA driver 4.0
First of all thanks for the very detailed answer.
I guess that the key point is the NVIDIA driver version since the version
installed out-of-the-box by Ubuntu is 270.41.06 not the latest one.
I'll try to move to ver 280.13 even though I've to give up the automatic
driver administration of Ubuntu.