Dear Python/OpenCL community,

I am pretty new (py)opencl and encountered a problem, maybe it a lack of 
understanding of openCL, but I found strange python seg-faults:
test program:

#!/usr/bin/python
import numpy, pyopencl
ctx = pyopencl.create_some_context()
data=numpy.random.random((1024,1024)).astype(numpy.float32)
img = pyopencl.image_from_array(ctx, ary=data, mode="r", norm_int=False, 
num_channels=1)
print img

System: debian sid: pyopencl2012.1 (the same code works with debian stable and 
v2011.2)

Here is the backtrace obtained with GDB:

0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007ffff340c253 in pyopencl::create_image_from_desc(pyopencl::context 
const&, unsigned long, _cl_image_format const&, _cl_image_desc&, 
boost::python::api::object) () from 
/usr/lib/python2.7/dist-packages/pyopencl/_cl.so
#2  0x00007ffff342de36 in _object* 
boost::python::detail::invoke<boost::python::detail::install_holder<pyopencl::image*>,
 pyopencl::image* (*)(pyopencl::context const&, unsigned long, _cl_image_format 
const&, _cl_image_desc&, boost::python::api::object), 
boost::python::arg_from_python<pyopencl::context const&>, 
boost::python::arg_from_python<unsigned long>, 
boost::python::arg_from_python<_cl_image_format const&>, 
boost::python::arg_from_python<_cl_image_desc&>, 
boost::python::arg_from_python<boost::python::api::object> 
>(boost::python::detail::invoke_tag_<false, false>, 
boost::python::detail::install_holder<pyopencl::image*> const&, 
pyopencl::image* (*&)(pyopencl::context const&, unsigned long, _cl_image_format 
const&, _cl_image_desc&, boost::python::api::object), 
boost::python::arg_from_python<pyopencl::context const&>&, 
boost::python::arg_from_python<unsigned long>&, 
boost::python::arg_from_python<_cl_image_format const&>&, 
boost::python::arg_from_python<_cl_image_desc&>&, 
boost::python::arg_from_python<boost::python::api::object>&) () from 
/usr/lib/python2.7/dist-packages/pyopencl/_cl.so
#3  0x00007ffff342e06f in 
boost::python::detail::caller_arity<5u>::impl<pyopencl::image* 
(*)(pyopencl::context const&, unsigned long, _cl_image_format const&, 
_cl_image_desc&, boost::python::api::object), 
boost::python::detail::constructor_policy<boost::python::default_call_policies>,
 boost::mpl::vector6<pyopencl::image*, pyopencl::context const&, unsigned long, 
_cl_image_format const&, _cl_image_desc&, boost::python::api::object> 
>::operator()(_object*, _object*) ()
   from /usr/lib/python2.7/dist-packages/pyopencl/_cl.so
#4  0x00007ffff311715b in boost::python::objects::function::call(_object*, 
_object*) const ()
   from /usr/lib/libboost_python-py27.so.1.49.0
#5  0x00007ffff3117378 in ?? () from /usr/lib/libboost_python-py27.so.1.49.0
#6  0x00007ffff3120593 in 
boost::python::detail::exception_handler::operator()(boost::function0<void> 
const&) const ()
   from /usr/lib/libboost_python-py27.so.1.49.0
#7  0x00007ffff3445983 in 
boost::detail::function::function_obj_invoker2<boost::_bi::bind_t<bool, 
boost::python::detail::translate_exception<pyopencl::error, void 
(*)(pyopencl::error const&)>, boost::_bi::list3<boost::arg<1>, boost::arg<2>, 
boost::_bi::value<void (*)(pyopencl::error const&)> > >, bool, 
boost::python::detail::exception_handler const&, boost::function0<void> 
const&>::invoke(boost::detail::function::function_buffer&, 
boost::python::detail::exception_handler const&, boost::function0<void> const&) 
() from /usr/lib/python2.7/dist-packages/pyopencl/_cl.so
#8  0x00007ffff3120373 in 
boost::python::handle_exception_impl(boost::function0<void>) ()
   from /usr/lib/libboost_python-py27.so.1.49.0
#9  0x00007ffff3115635 in ?? () from /usr/lib/libboost_python-py27.so.1.49.0

Thanks for your help.
If you are not able to reproduce this bug, I should mention it to debian.
Cheers,
-- 
Jérôme Kieffer
Data analysis unit - ESRF

_______________________________________________
PyOpenCL mailing list
[email protected]
http://lists.tiker.net/listinfo/pyopencl

Reply via email to