elima / gocl Goto Github PK
View Code? Open in Web Editor NEWGLib/GObject wrapper for OpenCL
License: GNU Lesser General Public License v3.0
GLib/GObject wrapper for OpenCL
License: GNU Lesser General Public License v3.0
Running gaussian-blur with pocl (master+events branch) or with the AMD opencl sdk leads to a segfault.
$ libtool --mode=execute gdb gaussian-blur
...
(gdb) r
Starting program: /home/fdeutsch/dev/opencl/gocl/gocl/examples/.libs/lt-gaussian-blur
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
clReleaseContext (context=0x0) at ocl_icd_loader_gen.c:71
71 RETURN(((struct _cl_context *)context)->dispatch->clReleaseContext(context));
(gdb) bt
#0 clReleaseContext (context=0x0) at ocl_icd_loader_gen.c:71
#1 0x00007ffff7df3929 in gocl_context_finalize (obj=0x8f9170) at gocl-context.c:236
#2 0x0000003114c1441b in g_object_unref (_object=0x8f9170) at gobject.c:3024
#3 0x0000003115456670 in g_initable_new_valist (object_type=<optimized out>,
first_property_name=first_property_name@entry=0x7ffff7df7d47 "device-type",
var_args=var_args@entry=0x7fffffffdc98, cancellable=cancellable@entry=0x0,
error=error@entry=0x7ffff7ffb468 <last_error>) at ginitable.c:233
#4 0x000000311545670c in g_initable_new (object_type=<optimized out>,
cancellable=cancellable@entry=0x0, error=error@entry=0x7ffff7ffb468 <last_error>,
first_property_name=first_property_name@entry=0x7ffff7df7d47 "device-type") at ginitable.c:149
#5 0x00007ffff7df3a1c in gocl_context_gpu_new_sync (gl_context=gl_context@entry=0x6324c0,
gl_display=0x624000) at gocl-context.c:352
#6 0x0000000000401da7 in main (argc=<optimized out>, argv=<optimized out>) at gaussian-blur.c:168
(gdb)
The helpful pocl devs found out that:
<kraiskil> fabiand, fwiw, I got gocl to compile, and it segfaults when calling clReleaseContext
<kraiskil> - when running on AMD opencl...
<fabiand> ahhh
<fabiand> :)
<kraiskil> and context==0, so this does smell like a gocl issue.
While building gocl for fedora I noticed that it fails on i686:
http://kojipkgs.fedoraproject.org//work/tasks/7331/6727331/build.log
Snippet:
make[3]: Entering directory `/builddir/build/BUILD/gocl-0.2.0/gocl'
CC libgocl-0.2_la-gocl-error.lo
CC libgocl-0.2_la-gocl-context.lo
CC libgocl-0.2_la-gocl-device.lo
CC libgocl-0.2_la-gocl-buffer.lo
gocl-error.c: In function 'gocl_error_check_opencl':
gocl-error.c:111:20: error: format not a string literal and no format arguments [-Werror=format-security]
get_error_code_description (err_code));
^
gocl-error.c: In function 'gocl_error_check_opencl_internal':
gocl-error.c:130:20: error: format not a string literal and no format arguments [-Werror=format-security]
get_error_code_description (err_code));
^
cc1: some warnings being treated as errors
make[3]: *** [libgocl-0.2_la-gocl-error.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/builddir/build/BUILD/gocl-0.2.0/gocl'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/builddir/build/BUILD/gocl-0.2.0/gocl'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/builddir/build/BUILD/gocl-0.2.0'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.FRc6sc (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.FRc6sc (%build)
Child return code was: 1
Hey,
is there actually some (showcase) application using gocl which can be used to test gocl with some opencl implementation.
$ gjs /usr/share/doc/gocl-0.1.4/helloWorld.js
JS ERROR: !!! Exception was: TypeError: Gocl.Context.get_default_cpu is not a constructor
JS ERROR: !!! message = '"Gocl.Context.get_default_cpu is not a constructor"'
JS ERROR: !!! fileName = '"/usr/share/doc/gocl-0.1.4/helloWorld.js"'
JS ERROR: !!! lineNumber = '24'
JS ERROR: !!! stack = '"@/usr/share/doc/gocl-0.1.4/helloWorld.js:24
"'
TypeError: Gocl.Context.get_default_cpu is not a constructor
That's what I see.
But I can tell that gocl is working with pocl (when using sync).
There have been a few changes since 0.2, but there hasn't been a release in ages...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.