[PyCUDA] Problems compling
patrick.h at duke.edu
Fri Jan 7 12:27:51 PST 2011
Andreas Kloeckner <lists at ...> writes:
> Hi Bryan,
> On Fri, 1 Oct 2010 21:10:27 -0700, Bryan Absher
> <bryan.absher at ...> wrote:
> > I have heard great things about the pycuda, if only it would run. Here
> > is the output to the test_driver.py
> > $ python ./test_driver.py
> > Traceback (most recent call last):
> My suspicion would be that /usr/lib/nvidia-current/libcuda.so.1 is not
> the current (3.2) version of libcuda.so. (But it seems you're compiling
> against 3.2 headers, which gives you unavailable symbol errors. You can
> easily check for a 3.2 libcuda yourself:
> I get:
> nm -D /usr/lib/libcuda.so | grep cuMemAllocPitch_v2
> 000000000015c0e0 T cuMemAllocPitch_v2
> nm -D /usr/lib/nvidia-current/libcuda.so.1 | grep cuMemAllocPitch_v2
> If you get empty output, you have an old version.
I too am very eager to use PyCUDA. After some effort I was finally able to
install on my RHEL5.5 system using
[root at netreg-536608 doc]# CC=gcc44 make install
This solved a host of build errors. Your advice on this and other forums has
been very helpful.
Unfortunately when I run the test code I get a very similar error to the one
described above. Further, when I use the above nm command I get empty output,
which you suggest means I don't have 3.2 drivers. Yet I (only) have 3.2 drivers
[root at netreg-536608 test]# python test_driver.py
Traceback (most recent call last):
File "test_driver.py", line 4, in ?
from pycuda.tools import mark_cuda_test
line 30, in ?
import pycuda.driver as cuda
line 1, in ?
from pycuda._driver import *
undefined symbol: _ZNKSt5ctypeIcE13_M_widen_initEv
[root at netreg-536608 test]# ldd
libcuda.so.1 => /usr/lib64/libcuda.so.1 (0x00002b095e94d000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00002b095f3b4000)
libm.so.6 => /lib64/libm.so.6 (0x00002b095f6b4000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b095f938000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b095fb46000)
libc.so.6 => /lib64/libc.so.6 (0x00002b095fd61000)
libz.so.1 => /usr/lib64/libz.so.1 (0x00002b09600b9000)
libdl.so.2 => /lib64/libdl.so.2 (0x00002b09602cd000)
[root at netreg-536608 doc]# nm -D /usr/lib64/libcuda.so | grep
[root at netreg-536608 doc]#
Device 0: "Tesla C2070"
CUDA Driver Version: 3.20
CUDA Runtime Version: 3.20
Thanks in advance!
More information about the PyCUDA