'binaries' was not found as a program info attribute or as a kernel name #40

Open
fbettag opened this Issue Jul 26, 2011 · 3 comments

Comments

Projects
None yet
4 participants
@fbettag

fbettag commented Jul 26, 2011

$ ./poclbm.py http://user:pass@pit.deepbit.net:8332
26/07/2011 19:51:20, Setting server (user @ pit.deepbit.net:8332)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 530, in *bootstrap_inner
self.run()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 483, in run
self.__target(_self.__args, _self.__kwargs)
File "/Volumes/Daten/Downloads/poclbm/BitcoinMiner.py", line 63, in mining_thread
self.load_kernel()
File "/Volumes/Daten/Downloads/poclbm/BitcoinMiner.py", line 179, in load_kernel
binaryW.write(self.miner.binaries[0])
File "/Library/Python/2.7/site-packages/pyopencl-2011.1.2-py2.7-macosx-10.7-intel.egg/pyopencl/__init
.py", line 419, in getattr
"info attribute or as a kernel name" % attr)
AttributeError: 'binaries' was not found as a program info attribute or as a kernel name

pit.deepbit.net:8332 26/07/2011 19:51:21, LP connected to pit.deepbit.net:8332

on osx as well as linux..

@dragos240

This comment has been minimized.

Show comment Hide comment
@dragos240

dragos240 Aug 26, 2011

A very similar error here as well on a new computer with gentoo linux and a 9500gt.
25/08/2011 22:42:46, Setting server (dragos240_1 @ uscentral.btcguild.com:8332)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib64/python2.7/threading.py", line 530, in *bootstrap_inner
self.run()
File "/usr/lib64/python2.7/threading.py", line 483, in run
self.__target(_self.__args, _self.__kwargs)
File "/home/harley/poclbm/BitcoinMiner.py", line 63, in mining_thread
self.load_kernel()
File "/home/harley/poclbm/BitcoinMiner.py", line 179, in load_kernel
binaryW.write(self.miner.binaries[0])
File "/usr/lib64/python2.7/site-packages/pyopencl/__init
.py", line 448, in getattr
"info attribute or as a kernel name" % attr)
AttributeError: 'binaries' was not found as a program info attribute or as a kernel name

uscentral.btcguild.com:8332 25/08/2011 22:42:47, LP connected to uscentral.btcguild.com:8332

A very similar error here as well on a new computer with gentoo linux and a 9500gt.
25/08/2011 22:42:46, Setting server (dragos240_1 @ uscentral.btcguild.com:8332)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib64/python2.7/threading.py", line 530, in *bootstrap_inner
self.run()
File "/usr/lib64/python2.7/threading.py", line 483, in run
self.__target(_self.__args, _self.__kwargs)
File "/home/harley/poclbm/BitcoinMiner.py", line 63, in mining_thread
self.load_kernel()
File "/home/harley/poclbm/BitcoinMiner.py", line 179, in load_kernel
binaryW.write(self.miner.binaries[0])
File "/usr/lib64/python2.7/site-packages/pyopencl/__init
.py", line 448, in getattr
"info attribute or as a kernel name" % attr)
AttributeError: 'binaries' was not found as a program info attribute or as a kernel name

uscentral.btcguild.com:8332 25/08/2011 22:42:47, LP connected to uscentral.btcguild.com:8332

@tydel

This comment has been minimized.

Show comment Hide comment
@tydel

tydel Sep 10, 2011

Same here, using an Amazon EC2 GPU Cluster instance (Tesla M2050):

python poclbm.py -v -w 256 --device 0 http://tydel@tydel.com_0:XXXXXX@deepbit.net:8332

10/09/2011 14:17:56, Setting server (tydel@tydel.com_0 @ deepbit.net:8332)
deepbit.net:8332 10/09/2011 14:17:58, LP connected to deepbit.net:8332
/usr/lib64/python2.6/site-packages/pyopencl-2011.1.2-py2.6-linux-x86_64.egg/pyopencl/init.py:155: UserWarning: Build succeeded, but resulted in non-empty logs:
Build on <pyopencl.Device 'Tesla M2050' on 'NVIDIA CUDA' at 0x258fac0> succeeded, but said:

: Considering profile 'compute_20' for gpu='sm_20' in 'cuModuleLoadDataEx_4'
: Retrieving binary for 'cuModuleLoadDataEx_4', for gpu='sm_20', usage mode=' '
: Considering profile 'compute_20' for gpu='sm_20' in 'cuModuleLoadDataEx_4'
: Control flags for 'cuModuleLoadDataEx_4' disable search path
: Ptx binary found for 'cuModuleLoadDataEx_4', architecture='compute_20'
: Ptx compilation for 'cuModuleLoadDataEx_4', for gpu='sm_20', ocg options=' '
warn("Build succeeded, but resulted in non-empty logs:\n"+message)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib64/python2.6/threading.py", line 532, in *bootstrap_inner
self.run()
File "/usr/lib64/python2.6/threading.py", line 484, in run
self.__target(_self.__args, _self.__kwargs)
File "/home/ec2-user/poclbm/BitcoinMiner.py", line 63, in mining_thread
self.load_kernel()
File "/home/ec2-user/poclbm/BitcoinMiner.py", line 179, in load_kernel
binaryW.write(self.miner.binaries[0])
File "/usr/lib64/python2.6/site-packages/pyopencl-2011.1.2-py2.6-linux-x86_64.egg/pyopencl/__init
.py", line 456, in getattr
"info attribute or as a kernel name" % attr)
AttributeError: 'binaries' was not found as a program info attribute or as a kernel name

Any ideas?

tydel commented Sep 10, 2011

Same here, using an Amazon EC2 GPU Cluster instance (Tesla M2050):

python poclbm.py -v -w 256 --device 0 http://tydel@tydel.com_0:XXXXXX@deepbit.net:8332

10/09/2011 14:17:56, Setting server (tydel@tydel.com_0 @ deepbit.net:8332)
deepbit.net:8332 10/09/2011 14:17:58, LP connected to deepbit.net:8332
/usr/lib64/python2.6/site-packages/pyopencl-2011.1.2-py2.6-linux-x86_64.egg/pyopencl/init.py:155: UserWarning: Build succeeded, but resulted in non-empty logs:
Build on <pyopencl.Device 'Tesla M2050' on 'NVIDIA CUDA' at 0x258fac0> succeeded, but said:

: Considering profile 'compute_20' for gpu='sm_20' in 'cuModuleLoadDataEx_4'
: Retrieving binary for 'cuModuleLoadDataEx_4', for gpu='sm_20', usage mode=' '
: Considering profile 'compute_20' for gpu='sm_20' in 'cuModuleLoadDataEx_4'
: Control flags for 'cuModuleLoadDataEx_4' disable search path
: Ptx binary found for 'cuModuleLoadDataEx_4', architecture='compute_20'
: Ptx compilation for 'cuModuleLoadDataEx_4', for gpu='sm_20', ocg options=' '
warn("Build succeeded, but resulted in non-empty logs:\n"+message)
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib64/python2.6/threading.py", line 532, in *bootstrap_inner
self.run()
File "/usr/lib64/python2.6/threading.py", line 484, in run
self.__target(_self.__args, _self.__kwargs)
File "/home/ec2-user/poclbm/BitcoinMiner.py", line 63, in mining_thread
self.load_kernel()
File "/home/ec2-user/poclbm/BitcoinMiner.py", line 179, in load_kernel
binaryW.write(self.miner.binaries[0])
File "/usr/lib64/python2.6/site-packages/pyopencl-2011.1.2-py2.6-linux-x86_64.egg/pyopencl/__init
.py", line 456, in getattr
"info attribute or as a kernel name" % attr)
AttributeError: 'binaries' was not found as a program info attribute or as a kernel name

Any ideas?

@theappleman

This comment has been minimized.

Show comment Hide comment
@theappleman

theappleman Sep 27, 2011

I came across this issue and decided to take a look at it.

The main problem above is pyOpenCL not exporting the info class variables; see here and here.

Changing line 179 in BitcoinMiner.py to:

`````` binaryW.write(self.miner.get_info(cl.program_info.BINARIES)[0]```
should fix the issue.

However, while that is easily remedied, it exposes bigger problems. These problems may be inherent only to my setup, but if you get something similar (or not) please tell me :)

The main big problem is a type incompatibility between pyOpenCL and the boost library providing the bindings to python concerning the pyopencl.Program.build() method.

build's options argument (or more precicely, _build which is called from build) needs to be a string type. However, pyopencl.Program.build converts strings to lists.

I modified line 465 in pyopencl/_init_.py to:
self._prg._build(' '.join(options), devices)
which converts it back into a string.

I came across this issue and decided to take a look at it.

The main problem above is pyOpenCL not exporting the info class variables; see here and here.

Changing line 179 in BitcoinMiner.py to:

`````` binaryW.write(self.miner.get_info(cl.program_info.BINARIES)[0]```
should fix the issue.

However, while that is easily remedied, it exposes bigger problems. These problems may be inherent only to my setup, but if you get something similar (or not) please tell me :)

The main big problem is a type incompatibility between pyOpenCL and the boost library providing the bindings to python concerning the pyopencl.Program.build() method.

build's options argument (or more precicely, _build which is called from build) needs to be a string type. However, pyopencl.Program.build converts strings to lists.

I modified line 465 in pyopencl/_init_.py to:
self._prg._build(' '.join(options), devices)
which converts it back into a string.

theappleman added a commit to theappleman/poclbm that referenced this issue Sep 27, 2011

luke-jr pushed a commit to luke-jr/poclbm that referenced this issue Feb 4, 2012

Merge pull request #40 from MtRed/master
Updated MtRed conf information
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment