lsegal / barracuda Goto Github PK
View Code? Open in Web Editor NEWBarracuda is a Ruby wrapper library for the OpenCL architecture.
Home Page: http://gnuu.org
License: MIT License
Barracuda is a Ruby wrapper library for the OpenCL architecture.
Home Page: http://gnuu.org
License: MIT License
Here's one of them, 'to_float.rb',
ruby to_float.rb
Rehearsal -------------------------------------------
regular 0.150000 0.000000 0.150000 ( 0.159270)
opencl to_float.rb:21: [BUG] Segmentation fault
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0012 p:---- s:0047 b:0047 l:000046 d:000046 CFUNC :method_missing
c:0011 p:0017 s:0045 b:0045 l:0000f8 d:000044 BLOCK to_float.rb:21
c:0010 p:0043 s:0043 b:0043 l:000042 d:000042 METHOD /usr/lib/ruby/1.9.1/benchmark.rb:280
c:0009 p:0052 s:0035 b:0035 l:000017 d:000034 BLOCK /usr/lib/ruby/1.9.1/benchmark.rb:257
c:0008 p:---- s:0028 b:0028 l:000027 d:000027 FINISH
c:0007 p:---- s:0026 b:0026 l:000021 d:000025 IFUNC
c:0006 p:---- s:0024 b:0024 l:000023 d:000023 CFUNC :each
c:0005 p:---- s:0022 b:0022 l:000021 d:000021 CFUNC :inject
c:0004 p:0146 s:0018 b:0018 l:000017 d:000017 METHOD /usr/lib/ruby/1.9.1/benchmark.rb:255
c:0003 p:0173 s:0010 b:0010 l:0000f8 d:0007c8 EVAL to_float.rb:19
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:0000f8 d:0000f8 TOP
-- Ruby level backtrace information ----------------------------------------
to_float.rb:19:in <main>' /usr/lib/ruby/1.9.1/benchmark.rb:255:in
bmbm'
/usr/lib/ruby/1.9.1/benchmark.rb:255:in inject' /usr/lib/ruby/1.9.1/benchmark.rb:255:in
each'
/usr/lib/ruby/1.9.1/benchmark.rb:257:in block in bmbm' /usr/lib/ruby/1.9.1/benchmark.rb:280:in
measure'
to_float.rb:21:in block (2 levels) in <main>' to_float.rb:21:in
method_missing'
-- C level backtrace information -------------------------------------------
/usr/lib/libruby-1.9.1.so.1.9(+0x155529) [0x7f16c9dfc529]
/usr/lib/libruby-1.9.1.so.1.9(+0x5968d) [0x7f16c9d0068d] vfscanf.c:2643
/usr/lib/libruby-1.9.1.so.1.9(rb_bug+0xb3) [0x7f16c9d00e03] vfscanf.c:1933
/usr/lib/libruby-1.9.1.so.1.9(+0xf6d66) [0x7f16c9d9dd66] res_init.c:155
/lib/x86_64-linux-gnu/libpthread.so.0(+0xf210) [0x7f16c9a9a210] ../nptl/sysdeps/pthread/funlockfile.c:29
/usr/lib/x86_64-linux-gnu/libOpenCL.so.1(clReleaseMemObject+0) [0x7f16c858c290] barracuda.c:754
/var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so(+0x3690) [0x7f16c8793690] barracuda.c:329
/usr/lib/libruby-1.9.1.so.1.9(+0x149ba3) [0x7f16c9df0ba3] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:3023
/usr/lib/libruby-1.9.1.so.1.9(+0x14b799) [0x7f16c9df2799] ../sysdeps/x86_64/multiarch/memcmp-sse4.S:1004
/usr/lib/libruby-1.9.1.so.1.9(+0x14bdce) [0x7f16c9df2dce] ../sysdeps/x86_64/multiarch/memcmp-sse4.S:1462
/usr/lib/libruby-1.9.1.so.1.9(+0x146405) [0x7f16c9ded405] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:584
/usr/lib/libruby-1.9.1.so.1.9(+0x1496fe) [0x7f16c9df06fe] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:2699
/usr/lib/libruby-1.9.1.so.1.9(+0x14aabc) [0x7f16c9df1abc] ../sysdeps/x86_64/multiarch/memcmp-sse4.S:158
/usr/lib/libruby-1.9.1.so.1.9(rb_yield_values+0xec) [0x7f16c9df86fc]
/usr/lib/libruby-1.9.1.so.1.9(+0x551c4) [0x7f16c9cfc1c4] vfscanf.c:971
/usr/lib/libruby-1.9.1.so.1.9(+0x143d97) [0x7f16c9dead97] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:879
/usr/lib/libruby-1.9.1.so.1.9(rb_yield+0x7f0) [0x7f16c9df8150] thread-freeres.c:29
/usr/lib/libruby-1.9.1.so.1.9(rb_ary_each+0x52) [0x7f16c9cd2842] gconv_dl.c:134
/usr/lib/libruby-1.9.1.so.1.9(+0x149ba3) [0x7f16c9df0ba3] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:3023
/usr/lib/libruby-1.9.1.so.1.9(rb_iterate+0xc9) [0x7f16c9dea4b9] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:180
/usr/lib/libruby-1.9.1.so.1.9(rb_block_call+0x2b) [0x7f16c9dea66b] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:315
/usr/lib/libruby-1.9.1.so.1.9(+0x53c2f) [0x7f16c9cfac2f] vfscanf.c:2824
/usr/lib/libruby-1.9.1.so.1.9(+0x14bb43) [0x7f16c9df2b43] ../sysdeps/x86_64/multiarch/memcmp-sse4.S:1282
/usr/lib/libruby-1.9.1.so.1.9(+0x146405) [0x7f16c9ded405] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:584
/usr/lib/libruby-1.9.1.so.1.9(+0x1496fe) [0x7f16c9df06fe] ../sysdeps/x86_64/multiarch/strcpy-ssse3.S:2699
/usr/lib/libruby-1.9.1.so.1.9(rb_iseq_eval_main+0x9f) [0x7f16c9df91cf]
/usr/lib/libruby-1.9.1.so.1.9(+0x5ca3a) [0x7f16c9d03a3a] vfprintf.c:2050
/usr/lib/libruby-1.9.1.so.1.9(ruby_exec_node+0x1d) [0x7f16c9d0487d] vfprintf.c:1649
/usr/lib/libruby-1.9.1.so.1.9(ruby_run_node+0x1e) [0x7f16c9d0632e] vfprintf.c:1648
ruby() [0x4008ab]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f16c8dbf995] libc-start.c:276
ruby() [0x4008d9]
-- Other runtime information -----------------------------------------------
Loaded script: to_float.rb
Loaded features:
0 enumerator.so
1 /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
2 /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
3 /usr/lib/ruby/1.9.1/rubygems/defaults.rb
4 /usr/lib/ruby/1.9.1/x86_64-linux/rbconfig.rb
5 /usr/lib/ruby/1.9.1/rubygems/deprecate.rb
6 /usr/lib/ruby/1.9.1/rubygems/exceptions.rb
7 /usr/lib/ruby/vendor_ruby/rubygems/defaults/operating_system.rb
8 /usr/lib/ruby/1.9.1/rubygems/custom_require.rb
9 /usr/lib/ruby/1.9.1/rubygems.rb
10 /usr/lib/ruby/1.9.1/rubygems/version.rb
11 /usr/lib/ruby/1.9.1/rubygems/requirement.rb
12 /usr/lib/ruby/1.9.1/rubygems/platform.rb
13 /usr/lib/ruby/1.9.1/rubygems/specification.rb
14 /usr/lib/ruby/1.9.1/rubygems/path_support.rb
15 /usr/lib/ruby/1.9.1/rubygems/dependency.rb
16 /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so
17 /usr/lib/ruby/1.9.1/benchmark.rb
Process memory map:
00400000-00401000 r-xp 00000000 08:21 3699041 /usr/bin/ruby1.9.1
00600000-00601000 r--p 00000000 08:21 3699041 /usr/bin/ruby1.9.1
00601000-00602000 rw-p 00001000 08:21 3699041 /usr/bin/ruby1.9.1
007ae000-025a9000 rw-p 00000000 00:00 0 [heap]
7f16bc000000-7f16bc4ec000 rw-p 00000000 00:00 0
7f16bc4ec000-7f16c0000000 ---p 00000000 00:00 0
7f16c298d000-7f16c2ea5000 rw-p 00000000 00:00 0
7f16c2ea5000-7f16c3198000 rw-p 00000000 00:00 0
7f16c330e000-7f16c331e000 rw-s 001fd000 00:05 14930 /dev/ati/card0
7f16c331e000-7f16c332e000 rw-s 001fc000 00:05 14930 /dev/ati/card0
7f16c332e000-7f16c333e000 rw-s 001fb000 00:05 14930 /dev/ati/card0
7f16c333e000-7f16c334f000 rw-s 001f9000 00:05 14930 /dev/ati/card0
7f16c334f000-7f16c3350000 ---p 00000000 00:00 0
7f16c3350000-7f16c3390000 rw-p 00000000 00:00 0 [stack:15486]
7f16c3390000-7f16c33d0000 rw-s 0005b000 00:05 14931 /dev/ati/card1
7f16c33d0000-7f16c3ad0000 rw-s 0001c000 00:05 14931 /dev/ati/card1
7f16c3ad0000-7f16c3b10000 rw-s 0003e000 00:05 14930 /dev/ati/card0
7f16c3b10000-7f16c4210000 rw-s 00006000 00:05 14930 /dev/ati/card0
7f16c4210000-7f16c4410000 rw-p 00000000 00:00 0
7f16c4410000-7f16c44aa000 r-xp 00000000 08:21 3809928 /usr/lib/x86_64-linux-gnu/fglrx/fglrx-libGL.so.1.2
7f16c44aa000-7f16c45aa000 ---p 0009a000 08:21 3809928 /usr/lib/x86_64-linux-gnu/fglrx/fglrx-libGL.so.1.2
7f16c45aa000-7f16c45d2000 rwxp 0009a000 08:21 3809928 /usr/lib/x86_64-linux-gnu/fglrx/fglrx-libGL.so.1.2
7f16c45d2000-7f16c45ef000 rwxp 00000000 00:00 0
7f16c45ef000-7f16c45f1000 r-xp 00000000 08:21 3808211 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0
7f16c45f1000-7f16c47f0000 ---p 00002000 08:21 3808211 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0
7f16c47f0000-7f16c47f1000 rw-p 00001000 08:21 3808211 /usr/lib/x86_64-linux-gnu/libXinerama.so.1.0.0
7f16c47f1000-7f16c48d9000 r-xp 00000000 08:21 3809210 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7f16c48d9000-7f16c4ad9000 ---p 000e8000 08:21 3809210 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7f16c4ad9000-7f16c4ae1000 r--p 000e8000 08:21 3809210 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7f16c4ae1000-7f16c4ae3000 rw-p 000f0000 08:21 3809210 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17
7f16c4ae3000-7f16c4af8000 rw-p 00000000 00:00 0
7f16c4af8000-7f16c4b98000 r-xp 00000000 08:21 3809925 /usr/lib/x86_64-linux-gnu/libatiadlxx.so
7f16c4b98000-7f16c4c98000 ---p 000a0000 08:21 3809925 /usr/lib/x86_64-linux-gnu/libatiadlxx.so
7f16c4c98000-7f16c4c9b000 rw-p 000a0000 08:21 3809925 /usr/lib/x86_64-linux-gnu/libatiadlxx.so
7f16c4c9b000-7f16c4cab000 rw-p 00000000 00:00 0
7f16c4cab000-7f16c4cbc000 r-xp 00000000 08:21 3808195 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f16c4cbc000-7f16c4ebc000 ---p 00011000 08:21 3808195 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f16c4ebc000-7f16c4ebd000 rw-p 00011000 08:21 3808195 /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
7f16c4ebd000-7f16c4ec2000 r-xp 00000000 08:21 3808191 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f16c4ec2000-7f16c50c1000 ---p 00005000 08:21 3808191 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f16c50c1000-7f16c50c2000 rw-p 00004000 08:21 3808191 /usr/lib/x86_64-linux-gnu/libXdmcp.so.6.0.0
7f16c50c2000-7f16c50c4000 r-xp 00000000 08:21 3808172 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f16c50c4000-7f16c52c4000 ---p 00002000 08:21 3808172 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f16c52c4000-7f16c52c5000 rw-p 00002000 08:21 3808172 /usr/lib/x86_64-linux-gnu/libXau.so.6.0.0
7f16c52c5000-7f16c52e4000 r-xp 00000000 08:21 3809427 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f16c52e4000-7f16c54e3000 ---p 0001f000 08:21 3809427 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f16c54e3000-7f16c54e4000 r--p 0001e000 08:21 3809427 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f16c54e4000-7f16c54e5000 rw-p 0001f000 08:21 3809427 /usr/lib/x86_64-linux-gnu/libxcb.so.1.1.0
7f16c54e5000-7f16c561a000 r-xp 00000000 08:21 3808166 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f16c561a000-7f16c581a000 ---p 00135000 08:21 3808166 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f16c581a000-7f16c5820000 rw-p 00135000 08:21 3808166 /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0
7f16c5820000-7f16c582f000 r-xp 00000000 08:21 3809923 /usr/lib/x86_64-linux-gnu/libatiuki.so.1.0
7f16c582f000-7f16c592f000 ---p 0000f000 08:21 3809923 /usr/lib/x86_64-linux-gnu/libatiuki.so.1.0
7f16c592f000-7f16c593c000 rw-p 0000f000 08:21 3809923 /usr/lib/x86_64-linux-gnu/libatiuki.so.1.0
7f16c593c000-7f16c593d000 rw-p 00000000 00:00 0
7f16c593d000-7f16c5952000 r-xp 00000000 08:21 2360518 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f16c5952000-7f16c5b52000 ---p 00015000 08:21 2360518 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f16c5b52000-7f16c5b53000 rw-p 00015000 08:21 2360518 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f16c5b53000-7f16c7f9b000 r-xp 00000000 08:21 3809938 /usr/lib/x86_64-linux-gnu/libamdocl64.so
7f16c7f9b000-7f16c819b000 ---p 02448000 08:21 3809938 /usr/lib/x86_64-linux-gnu/libamdocl64.so
7f16c819b000-7f16c8468000 rw-p 02448000 08:21 3809938 /usr/lib/x86_64-linux-gnu/libamdocl64.so
7f16c8468000-7f16c8588000 rw-p 00000000 00:00 0
7f16c8588000-7f16c858f000 r-xp 00000000 08:21 3809934 /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
7f16c858f000-7f16c878e000 ---p 00007000 08:21 3809934 /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
7f16c878e000-7f16c878f000 r--p 00006000 08:21 3809934 /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
7f16c878f000-7f16c8790000 rw-p 00007000 08:21 3809934 /usr/lib/x86_64-linux-gnu/libOpenCL.so.1.0.0
7f16c8790000-7f16c8795000 r-xp 00000000 08:21 2504887 /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so
7f16c8795000-7f16c8995000 ---p 00005000 08:21 2504887 /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so
7f16c8995000-7f16c8996000 r--p 00005000 08:21 2504887 /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so
7f16c8996000-7f16c8997000 rw-p 00006000 08:21 2504887 /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so
7f16c8997000-7f16c8999000 r-xp 00000000 08:21 4610264 /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f16c8999000-7f16c8b99000 ---p 00002000 08:21 4610264 /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f16c8b99000-7f16c8b9a000 r--p 00002000 08:21 4610264 /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f16c8b9a000-7f16c8b9b000 rw-p 00003000 08:21 4610264 /usr/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f16c8b9b000-7f16c8b9d000 r-xp 00000000 08:21 4610242 /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f16c8b9d000-7f16c8d9c000 ---p 00002000 08:21 4610242 /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f16c8d9c000-7f16c8d9d000 r--p 00001000 08:21 4610242 /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f16c8d9d000-7f16c8d9e000 rw-p 00002000 08:21 4610242 /usr/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f16c8d9e000-7f16c8f41000 r-xp 00000000 08:21 2365707 /lib/x86_64-linux-gnu/libc-2.17.so
7f16c8f41000-7f16c9140000 ---p 001a3000 08:21 2365707 /lib/x86_64-linux-gnu/libc-2.17.so
7f16c9140000-7f16c9144000 r--p 001a2000 08:21 2365707 /lib/x86_64-linux-gnu/libc-2.17.so
7f16c9144000-7f16c9146000 rw-p 001a6000 08:21 2365707 /lib/x86_64-linux-gnu/libc-2.17.so
7f16c9146000-7f16c914a000 rw-p 00000000 00:00 0
7f16c914a000-7f16c9246000 r-xp 00000000 08:21 2365713 /lib/x86_64-linux-gnu/libm-2.17.so
7f16c9246000-7f16c9446000 ---p 000fc000 08:21 2365713 /lib/x86_64-linux-gnu/libm-2.17.so
7f16c9446000-7f16c9447000 r--p 000fc000 08:21 2365713 /lib/x86_64-linux-gnu/libm-2.17.so
7f16c9447000-7f16c9448000 rw-p 000fd000 08:21 2365713 /lib/x86_64-linux-gnu/libm-2.17.so
7f16c9448000-7f16c9450000 r-xp 00000000 08:21 2365712 /lib/x86_64-linux-gnu/libcrypt-2.17.so
7f16c9450000-7f16c964f000 ---p 00008000 08:21 2365712 /lib/x86_64-linux-gnu/libcrypt-2.17.so
7f16c964f000-7f16c9650000 r--p 00007000 08:21 2365712 /lib/x86_64-linux-gnu/libcrypt-2.17.so
7f16c9650000-7f16c9651000 rw-p 00008000 08:21 2365712 /lib/x86_64-linux-gnu/libcrypt-2.17.so
7f16c9651000-7f16c967f000 rw-p 00000000 00:00 0
7f16c967f000-7f16c9682000 r-xp 00000000 08:21 2365706 /lib/x86_64-linux-gnu/libdl-2.17.so
7f16c9682000-7f16c9881000 ---p 00003000 08:21 2365706 /lib/x86_64-linux-gnu/libdl-2.17.so
7f16c9881000-7f16c9882000 r--p 00002000 08:21 2365706 /lib/x86_64-linux-gnu/libdl-2.17.so
7f16c9882000-7f16c9883000 rw-p 00003000 08:21 2365706 /lib/x86_64-linux-gnu/libdl-2.17.so
7f16c9883000-7f16c988a000 r-xp 00000000 08:21 2361327 /lib/x86_64-linux-gnu/librt-2.17.so
7f16c988a000-7f16c9a89000 ---p 00007000 08:21 2361327 /lib/x86_64-linux-gnu/librt-2.17.so
7f16c9a89000-7f16c9a8a000 r--p 00006000 08:21 2361327 /lib/x86_64-linux-gnu/librt-2.17.so
7f16c9a8a000-7f16c9a8b000 rw-p 00007000 08:21 2361327 /lib/x86_64-linux-gnu/librt-2.17.so
7f16c9a8b000-7f16c9aa2000 r-xp 00000000 08:21 2365700 /lib/x86_64-linux-gnu/libpthread-2.17.so
7f16c9aa2000-7f16c9ca1000 ---p 00017000 08:21 2365700 /lib/x86_64-linux-gnu/libpthread-2.17.so
7f16c9ca1000-7f16c9ca2000 r--p 00016000 08:21 2365700 /lib/x86_64-linux-gnu/libpthread-2.17.so
7f16c9ca2000-7f16c9ca3000 rw-p 00017000 08:21 2365700 /lib/x86_64-linux-gnu/libpthread-2.17.so
7f16c9ca3000-7f16c9ca7000 rw-p 00000000 00:00 0
7f16c9ca7000-7f16c9e9e000 r-xp 00000000 08:21 3670673 /usr/lib/libruby-1.9.1.so.1.9.1
7f16c9e9e000-7f16ca09d000 ---p 001f7000 08:21 3670673 /usr/lib/libruby-1.9.1.so.1.9.1
7f16ca09d000-7f16ca0a5000 rw-p 001f6000 08:21 3670673 /usr/lib/libruby-1.9.1.so.1.9.1
7f16ca0a5000-7f16ca0c1000 rw-p 00000000 00:00 0
7f16ca0c1000-7f16ca0e2000 r-xp 00000000 08:21 2365698 /lib/x86_64-linux-gnu/ld-2.17.so
7f16ca0e5000-7f16ca0f6000 rw-s 001f8000 00:05 14930 /dev/ati/card0
7f16ca0f6000-7f16ca116000 rw-s 0001a000 00:05 14931 /dev/ati/card1
7f16ca116000-7f16ca196000 rw-p 00000000 00:00 0
7f16ca196000-7f16ca1b6000 rw-s 00004000 00:05 14930 /dev/ati/card0
7f16ca1b6000-7f16ca2bc000 rw-p 00000000 00:00 0
7f16ca2c4000-7f16ca2c5000 rw-p 00000000 00:00 0
7f16ca2c5000-7f16ca2d6000 rw-s 001f7000 00:05 14930 /dev/ati/card0
7f16ca2d6000-7f16ca2d7000 rw-s 0001b000 00:05 14931 /dev/ati/card1
7f16ca2d7000-7f16ca2d9000 rw-s 00018000 00:05 14931 /dev/ati/card1
7f16ca2d9000-7f16ca2da000 rw-s 00005000 00:05 14930 /dev/ati/card0
7f16ca2da000-7f16ca2dc000 rw-s 00002000 00:05 14930 /dev/ati/card0
7f16ca2dc000-7f16ca2dd000 ---p 00000000 00:00 0
7f16ca2dd000-7f16ca2e2000 rw-p 00000000 00:00 0 [stack:15485]
7f16ca2e2000-7f16ca2e3000 r--p 00021000 08:21 2365698 /lib/x86_64-linux-gnu/ld-2.17.so
7f16ca2e3000-7f16ca2e5000 rw-p 00022000 08:21 2365698 /lib/x86_64-linux-gnu/ld-2.17.so
7fffa3f62000-7fffa3f83000 rw-p 00000000 00:00 0
7fffa3ffe000-7fffa4000000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
require 'barracuda'
irb: symbol lookup error: /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/barracuda.so: undefined symbol: clGetDeviceIDs
(then dumps me out to shell)
Also: on my system OpenCL/OpenCL.h is /usr/include/CL/opencl.h
I was hoping to try out Barracuda, and was neither able to run it from the gem, or when building it from the source off of GitHub. Here's the test output (it's complaining about rb_ary_replace).
RockLobster:barracuda netghost$ ruby --version
ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
RockLobster:barracuda netghost$ rake test
(in /Users/netghost/Projects/open_cl/barracuda)
cd ext && make
make: Nothing to be done for `all'.
Loaded suite /Library/Ruby/Gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader
Started
...dyld: lazy symbol binding failed: Symbol not found: _rb_ary_replace
Referenced from: /Users/netghost/Projects/open_cl/barracuda/ext/barracuda.bundle
Expected in: flat namespace
dyld: Symbol not found: _rb_ary_replace
Referenced from: /Users/netghost/Projects/open_cl/barracuda/ext/barracuda.bundle
Expected in: flat namespace
rake aborted!
Command failed with status (): [/System/Library/Frameworks/Ruby.framework/...]
The v1.3 gem will install but NOT run with 1.9.2 on OS X Snow Leopard, however, when I clone the source, `cd ext; make distclean; ruby extconf; make', all is well. Not sure why exactly, but maybe it's because the binaries are actually committed to the repo? It's that's the case, this is failing for everyone on Ruby 1.9
I am a Ruby beginner and I am trying to get this to work on Ubuntu. I downloaded the Intel OpenCL SDK, which put a bunch of files in /usr/lib64.
When I run rake, here is what I get:
rake/gempackagetask is deprecated. Use rubygems/package_task instead
cd ext && ruby extconf.rb
checking for CL/cl.h... yes
checking for main() in -lOpenCL... yes
checking for libOpenCL() in -llibOpenCL... no
creating Makefile
cd ext && make
gcc -shared -o barracuda.so barracuda.o -L. -L/home/ericm/.rvm/rubies/ruby-1.9.2-p290/lib -Wl,-R/home/ericm/.rvm/rubies/ruby-1.9.2-p290/lib -L. -rdynamic -Wl,-export-dynamic -Wl,-R -Wl,/home/ericm/.rvm/rubies/ruby-1.9.2-p290/lib -L/home/ericm/.rvm/rubies/ruby-1.9.2-p290/lib -lruby -lOpenCL -lpthread -lrt -ldl -lcrypt -lm -lc
internal:lib/rubygems/custom_require:29:in require': libOpenCL.so: cannot open shared object file: No such file or directory - /home/ericm/tmp/rubyStuff/barracuda/ext/barracuda.so (LoadError) from <internal:lib/rubygems/custom_require>:29:in
require'
from /home/ericm/tmp/rubyStuff/barracuda/test/test_program.rb:4:in <top (required)>' from <internal:lib/rubygems/custom_require>:29:in
require'
from internal:lib/rubygems/custom_require:29:in require' from /home/ericm/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:10:in
block (2 levels) in
each' from /home/ericm/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:9:in
block in 'select' from /home/ericm/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:4:in
'libOpenCL.so exists in /usr/lib64/libOpenCL.so. How do I get the tests to run and see that file?
$ which ruby
/Users/clundquist/.rvm/rubies/ruby-1.9.3-p0/bin/ruby
$ ruby extconf.rb
creating Makefile
Chriss-MacBook-Pro:ext clundquist$ make
compiling barracuda.c
barracuda.c: In function ‘array_data_type_get’:
barracuda.c:129: warning: ISO C90 forbids mixed declarations and code
barracuda.c: In function ‘type_to_native’:
barracuda.c:194: warning: implicit conversion shortens 64-bit value into a 32-bit value
barracuda.c: In function ‘buffer_dirty’:
barracuda.c:307: warning: comparison between signed and unsigned
barracuda.c: In function ‘print_buffer’:
barracuda.c:351: warning: comparison between signed and unsigned
barracuda.c: In function ‘buffer_write’:
barracuda.c:370: warning: implicit conversion shortens 64-bit value into a 32-bit value
barracuda.c: In function ‘buffer_read’:
barracuda.c:398: warning: implicit conversion shortens 64-bit value into a 32-bit value
barracuda.c: In function ‘program_method_missing’:
barracuda.c:558: warning: comparison between signed and unsigned
linking shared-object barracuda.bundle
The error is thus:
rake install
sudo gem install pkg/barracuda-1.3.gem --local
Building native extensions. This could take a while...
ERROR: Error installing pkg/barracuda-1.3.gem:
ERROR: Failed to build gem native extension.
/usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require': cannot load such file -- mkmf (LoadError) from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in
require'
from extconf.rb:1:in `
Gem files will remain installed in /var/lib/gems/1.9.1/gems/barracuda-1.3 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/barracuda-1.3/ext/gem_make.out
rake aborted!
Command failed with status (1): [sudo gem install pkg/barracuda-1.3.gem --l...]
/home/Shellcat/Downloads/barracuda/Rakefile:27:in block in <top (required)>' /home/Shellcat/.rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in
eval'
/home/Shellcat/.rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in `
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.