Discussion:
[PyCUDA] Running test_driver.py, Import Error: cannot import name intern
Donald Osmeyer
2014-12-20 22:13:30 UTC
Permalink
I just installed Ubuntu 14.04, the Nvidia driver 340.29, cuda version 6.5.12. I tried to install pycuda-2014.1 using the instructions found at http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu

Everything seems to install fine. In particular, I get this message as part of the isntall:


Using /usr/local/lib/python2.7/dist-packages/py-1.4.26-py2.7.egg
Searching for six==1.5.2
Best match: six 1.5.2
Adding six 1.5.2 to easy-install.pth file

Unfortunately, when I try to run the test I get this error:

***@Beast:~/pycuda-2014.1/test$ python test_driver.py
Traceback (most recent call last):
File "test_driver.py", line 17, in <module>
import pycuda.gpuarray as gpuarray
File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/gpuarray.py", line 3, in <module>
import pycuda.elementwise as elementwise
File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/elementwise.py", line 34, in <module>
from pytools import memoize_method
File "/usr/local/lib/python2.7/dist-packages/pytools-2014.3.5-py2.7.egg/pytools/__init__.py", line 5, in <module>
from six.moves import range, zip, intern, input
ImportError: cannot import name intern
***@Beast:~/pycuda-2014.1/test$


I'm not sure where to go from here?

Donald
Andreas Kloeckner
2014-12-20 23:03:31 UTC
Permalink
Donald Osmeyer <***@outlook.com> writes:

> I just installed Ubuntu 14.04, the Nvidia driver 340.29, cuda version 6.5.12. I tried to install pycuda-2014.1 using the instructions found at http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu
>
> Everything seems to install fine. In particular, I get this message as part of the isntall:
>
>
> Using /usr/local/lib/python2.7/dist-packages/py-1.4.26-py2.7.egg
> Searching for six==1.5.2
> Best match: six 1.5.2
> Adding six 1.5.2 to easy-install.pth file
>
> Unfortunately, when I try to run the test I get this error:
>
> ***@Beast:~/pycuda-2014.1/test$ python test_driver.py
> Traceback (most recent call last):
> File "test_driver.py", line 17, in <module>
> import pycuda.gpuarray as gpuarray
> File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/gpuarray.py", line 3, in <module>
> import pycuda.elementwise as elementwise
> File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/elementwise.py", line 34, in <module>
> from pytools import memoize_method
> File "/usr/local/lib/python2.7/dist-packages/pytools-2014.3.5-py2.7.egg/pytools/__init__.py", line 5, in <module>
> from six.moves import range, zip, intern, input
> ImportError: cannot import name intern
> ***@Beast:~/pycuda-2014.1/test$

six 1.5.2 is very outdated. (1.8.0 is current.) I wonder how your system
wound up figuring that was the best version to use. Could you try and
troubleshoot that?

Andreas
Donald Osmeyer
2014-12-22 00:31:15 UTC
Permalink
I followed your advice and checked out why I have six version 1.5.2....

It looks like six 1.5.2 is the version that Ubuntu 14.04 ships with (at least the desktop x64 version).
I downloaded the most recent version of Ubuntu desktop from their website and made a bootable USB with it.
I booted up Ubuntu from the USB and in the terminal did this:
$python
...
>>>import six
>>>six.__version__
'1.5.2'

Then I made a clean install of Ubuntu on to my hard drive and booted to that. The same version was present.
So, of course the next step is to do apt-get update and upgrade. Still 1.5.2.
I guess the question now is whether this is the version of six that is supposed to come packed with Ubuntu or not.
After looking for solutions online I discovered the 'apt-cache policy' command which seemed useful. Here's the output:

***@Beast:~$ apt-cache policy python-six
python-six:
Installed: 1.5.2-1
Candidate: 1.5.2-1
Version table:
*** 1.5.2-1 0
500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
100 /var/lib/dpkg/status


Based on what I found on the launchpad website (https://launchpad.net/ubuntu/+source/six) this seems to be the right version of six
for Ubuntu 14.04. But if that is the case, then I would think a lot more people would have the same problem as I do. Unless there is a simple work around that I don't know about. I find it unlikely that I'm the first person to try to install pycuda on Ubuntu 14.04.
Are there any other suggestions/hints/helpful ideas??


> From: ***@informa.tiker.net
> To: ***@hotmail.com; ***@tiker.net
> Subject: Re: [PyCUDA] Running test_driver.py, Import Error: cannot import name intern
> Date: Sat, 20 Dec 2014 17:03:31 -0600
>
> Donald Osmeyer <***@outlook.com> writes:
>
> > I just installed Ubuntu 14.04, the Nvidia driver 340.29, cuda version 6.5.12. I tried to install pycuda-2014.1 using the instructions found at http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu
> >
> > Everything seems to install fine. In particular, I get this message as part of the isntall:
> >
> >
> > Using /usr/local/lib/python2.7/dist-packages/py-1.4.26-py2.7.egg
> > Searching for six==1.5.2
> > Best match: six 1.5.2
> > Adding six 1.5.2 to easy-install.pth file
> >
> > Unfortunately, when I try to run the test I get this error:
> >
> > ***@Beast:~/pycuda-2014.1/test$ python test_driver.py
> > Traceback (most recent call last):
> > File "test_driver.py", line 17, in <module>
> > import pycuda.gpuarray as gpuarray
> > File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/gpuarray.py", line 3, in <module>
> > import pycuda.elementwise as elementwise
> > File "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/elementwise.py", line 34, in <module>
> > from pytools import memoize_method
> > File "/usr/local/lib/python2.7/dist-packages/pytools-2014.3.5-py2.7.egg/pytools/__init__.py", line 5, in <module>
> > from six.moves import range, zip, intern, input
> > ImportError: cannot import name intern
> > ***@Beast:~/pycuda-2014.1/test$
>
> six 1.5.2 is very outdated. (1.8.0 is current.) I wonder how your system
> wound up figuring that was the best version to use. Could you try and
> troubleshoot that?
>
> Andreas
Eric Larson
2014-12-22 03:38:59 UTC
Permalink
I installed pycuda from the Ubuntu 14.04 repos and that worked fine. That
might be why this hadn't been seen before, because other folks took the
simpler route of either using all repo versions (apt-get) or all outside
versions (e.g., anaconda). Generally speaking, I've found that repo
versions are packaged to be compatible with themselves, but if you
build/install your own versions of certain libraries, you will likely have
to update other library versions as well in the process.

Eric
On Dec 21, 2014 6:44 PM, "Donald Osmeyer" <***@hotmail.com> wrote:

>
> I followed your advice and checked out why I have six version 1.5.2....
>
> It looks like six 1.5.2 is the version that Ubuntu 14.04 ships with (at
> least the desktop x64 version).
> I downloaded the most recent version of Ubuntu desktop from their website
> and made a bootable USB with it.
> I booted up Ubuntu from the USB and in the terminal did this:
> $python
> ...
> >>>import six
> >>>six.__version__
> '1.5.2'
>
> Then I made a clean install of Ubuntu on to my hard drive and booted to
> that. The same version was present.
> So, of course the next step is to do apt-get update and upgrade. Still
> 1.5.2.
> I guess the question now is whether this is the version of six that is
> supposed to come packed with Ubuntu or not.
> After looking for solutions online I discovered the 'apt-cache policy'
> command which seemed useful. Here's the output:
>
> ***@Beast:~$ apt-cache policy python-six
> python-six:
> Installed: 1.5.2-1
> Candidate: 1.5.2-1
> Version table:
> *** 1.5.2-1 0
> 500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64
> Packages
> 100 /var/lib/dpkg/status
>
>
> Based on what I found on the launchpad website (
> https://launchpad.net/ubuntu/+source/six) this seems to be the right
> version of six
> for Ubuntu 14.04. But if that is the case, then I would think a lot more
> people would have the same problem as I do. Unless there is a simple work
> around that I don't know about. I find it unlikely that I'm the first
> person to try to install pycuda on Ubuntu 14.04.
> Are there any other suggestions/hints/helpful ideas??
>
>
> > From: ***@informa.tiker.net
> > To: ***@hotmail.com; ***@tiker.net
> > Subject: Re: [PyCUDA] Running test_driver.py, Import Error: cannot
> import name intern
> > Date: Sat, 20 Dec 2014 17:03:31 -0600
> >
> > Donald Osmeyer <***@outlook.com> writes:
> >
> > > I just installed Ubuntu 14.04, the Nvidia driver 340.29, cuda version
> 6.5.12. I tried to install pycuda-2014.1 using the instructions found at
> http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu
> > >
> > > Everything seems to install fine. In particular, I get this message as
> part of the isntall:
> > >
> > >
> > > Using /usr/local/lib/python2.7/dist-packages/py-1.4.26-py2.7.egg
> > > Searching for six==1.5.2
> > > Best match: six 1.5.2
> > > Adding six 1.5.2 to easy-install.pth file
> > >
> > > Unfortunately, when I try to run the test I get this error:
> > >
> > > ***@Beast:~/pycuda-2014.1/test$ python test_driver.py
> > > Traceback (most recent call last):
> > > File "test_driver.py", line 17, in <module>
> > > import pycuda.gpuarray as gpuarray
> > > File
> "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/gpuarray.py",
> line 3, in <module>
> > > import pycuda.elementwise as elementwise
> > > File
> "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/elementwise.py",
> line 34, in <module>
> > > from pytools import memoize_method
> > > File
> "/usr/local/lib/python2.7/dist-packages/pytools-2014.3.5-py2.7.egg/pytools/__init__.py",
> line 5, in <module>
> > > from six.moves import range, zip, intern, input
> > > ImportError: cannot import name intern
> > > ***@Beast:~/pycuda-2014.1/test$
> >
> > six 1.5.2 is very outdated. (1.8.0 is current.) I wonder how your system
> > wound up figuring that was the best version to use. Could you try and
> > troubleshoot that?
> >
> > Andreas
>
> _______________________________________________
> PyCUDA mailing list
> ***@tiker.net
> http://lists.tiker.net/listinfo/pycuda
>
>
Eric Larson
2014-12-22 03:40:49 UTC
Permalink
... and of you want to stick with the non-repo version, look into how to
upgrade six using pip. It's something like:

pip install --upgrade --user six

Eric
On Dec 21, 2014 9:38 PM, "Eric Larson" <***@gmail.com> wrote:

> I installed pycuda from the Ubuntu 14.04 repos and that worked fine. That
> might be why this hadn't been seen before, because other folks took the
> simpler route of either using all repo versions (apt-get) or all outside
> versions (e.g., anaconda). Generally speaking, I've found that repo
> versions are packaged to be compatible with themselves, but if you
> build/install your own versions of certain libraries, you will likely have
> to update other library versions as well in the process.
>
> Eric
> On Dec 21, 2014 6:44 PM, "Donald Osmeyer" <***@hotmail.com> wrote:
>
>>
>> I followed your advice and checked out why I have six version 1.5.2....
>>
>> It looks like six 1.5.2 is the version that Ubuntu 14.04 ships with (at
>> least the desktop x64 version).
>> I downloaded the most recent version of Ubuntu desktop from their website
>> and made a bootable USB with it.
>> I booted up Ubuntu from the USB and in the terminal did this:
>> $python
>> ...
>> >>>import six
>> >>>six.__version__
>> '1.5.2'
>>
>> Then I made a clean install of Ubuntu on to my hard drive and booted to
>> that. The same version was present.
>> So, of course the next step is to do apt-get update and upgrade. Still
>> 1.5.2.
>> I guess the question now is whether this is the version of six that is
>> supposed to come packed with Ubuntu or not.
>> After looking for solutions online I discovered the 'apt-cache policy'
>> command which seemed useful. Here's the output:
>>
>> ***@Beast:~$ apt-cache policy python-six
>> python-six:
>> Installed: 1.5.2-1
>> Candidate: 1.5.2-1
>> Version table:
>> *** 1.5.2-1 0
>> 500 http://us.archive.ubuntu.com/ubuntu/ trusty/main amd64
>> Packages
>> 100 /var/lib/dpkg/status
>>
>>
>> Based on what I found on the launchpad website (
>> https://launchpad.net/ubuntu/+source/six) this seems to be the right
>> version of six
>> for Ubuntu 14.04. But if that is the case, then I would think a lot more
>> people would have the same problem as I do. Unless there is a simple work
>> around that I don't know about. I find it unlikely that I'm the first
>> person to try to install pycuda on Ubuntu 14.04.
>> Are there any other suggestions/hints/helpful ideas??
>>
>>
>> > From: ***@informa.tiker.net
>> > To: ***@hotmail.com; ***@tiker.net
>> > Subject: Re: [PyCUDA] Running test_driver.py, Import Error: cannot
>> import name intern
>> > Date: Sat, 20 Dec 2014 17:03:31 -0600
>> >
>> > Donald Osmeyer <***@outlook.com> writes:
>> >
>> > > I just installed Ubuntu 14.04, the Nvidia driver 340.29, cuda version
>> 6.5.12. I tried to install pycuda-2014.1 using the instructions found at
>> http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu
>> > >
>> > > Everything seems to install fine. In particular, I get this message
>> as part of the isntall:
>> > >
>> > >
>> > > Using /usr/local/lib/python2.7/dist-packages/py-1.4.26-py2.7.egg
>> > > Searching for six==1.5.2
>> > > Best match: six 1.5.2
>> > > Adding six 1.5.2 to easy-install.pth file
>> > >
>> > > Unfortunately, when I try to run the test I get this error:
>> > >
>> > > ***@Beast:~/pycuda-2014.1/test$ python test_driver.py
>> > > Traceback (most recent call last):
>> > > File "test_driver.py", line 17, in <module>
>> > > import pycuda.gpuarray as gpuarray
>> > > File
>> "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/gpuarray.py",
>> line 3, in <module>
>> > > import pycuda.elementwise as elementwise
>> > > File
>> "/usr/local/lib/python2.7/dist-packages/pycuda-2014.1-py2.7-linux-x86_64.egg/pycuda/elementwise.py",
>> line 34, in <module>
>> > > from pytools import memoize_method
>> > > File
>> "/usr/local/lib/python2.7/dist-packages/pytools-2014.3.5-py2.7.egg/pytools/__init__.py",
>> line 5, in <module>
>> > > from six.moves import range, zip, intern, input
>> > > ImportError: cannot import name intern
>> > > ***@Beast:~/pycuda-2014.1/test$
>> >
>> > six 1.5.2 is very outdated. (1.8.0 is current.) I wonder how your system
>> > wound up figuring that was the best version to use. Could you try and
>> > troubleshoot that?
>> >
>> > Andreas
>>
>> _______________________________________________
>> PyCUDA mailing list
>> ***@tiker.net
>> http://lists.tiker.net/listinfo/pycuda
>>
>>
Loading...