Thanks for your information. I just had a try on a machine where I installed the latest opencl. With a simple test, the opencl can find 1 platform and 4 GPU devices. But finally I get following error message. Any suggestion? Thanks.
[wxw@cu01 2_cyl]$ python cylinder.py —backends=opencl
[ 1187 INFO Master/cu01] Machine master starting with PID 26431 at 2016-01-08 12:39:32 UTC
[ 1235 INFO Master/cu01] Sailfish version: 08b219240b900366df7fef0420a6d28d59cf366f
[ 1236 INFO Master/cu01] Handling subdomains: [0]
[ 1236 INFO Master/cu01] Subdomain -> GPU map: {0: 0}
[ 6028 INFO Subdomain/0] Initializing subdomain.
Process Subdomain/0:
Traceback (most recent call last):
File "/home/wxw/software/lib/python2.7/multiprocessing/process.py", line 232, in _bootstrap
self.run()
File "/home/wxw/software/lib/python2.7/multiprocessing/process.py", line 88, in run
self._target(*self._args, **self._kwargs)
File "/home/wxw/software/sailfish-cfd/sailfish/master.py", line 67, in _start_subdomain_runner
runner.run()
File "/home/wxw/software/sailfish-cfd/sailfish/subdomain_runner.py", line 1502, in run
self._sim.init_fields(self)
File "/home/wxw/software/sailfish-cfd/sailfish/lb_base.py", line 154, in init_fields
gpu_array=field.gpu_array)
File "/home/wxw/software/sailfish-cfd/sailfish/subdomain_runner.py", line 268, in make_scalar_field
buf = self.backend.alloc_async_host_buf(self.num_phys_nodes, dtype=dtype)
File "/home/wxw/software/sailfish-cfd/sailfish/backend_opencl.py", line 94, in alloc_async_host_buf
return host_buf.get_host_array(shape, dtype)
File "/home/wxw/software/lib/python2.7/site-packages/pyopencl-2015.2.4-py2.7-linux-x86_64.egg/pyopencl/cffi_cl.py", line 753, in get_host_array
_size))
File "/home/wxw/software/lib/python2.7/site-packages/pyopencl-2015.2.4-py2.7-linux-x86_64.egg/pyopencl/cffi_cl.py", line 549, in _handle_error
raise e
LogicError: memoryobject.get host array failed: INVALID_VALUE - Only MemoryObject with USE_HOST_PTR is supported.