[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
Parallella Community • View topic - Getting started ...

Getting started ...

Moderator: dar

Getting started ...

Postby shawnallen » Fri Dec 05, 2014 8:04 pm

Howdy, all!

I've had a pair of the Parallella boards (16 core) since the Kickstarter project shipment.

Anyway, I've setup the SD cards, etc., with the latest image, I've also added an entry for browndeer/lib to ldconfig so the libraries can be found.

Aside from that, and updating the PATH env variable, what does one need to do, to get OpenCL to work?

After making those two changes, anything OpenCL still fails, for various reasons, mostly due to the OpenCL object file doesn't contain the vast majority of what the example code (in the browndeer folder) wants to use.

I hope that all makes sense and any help would be greatly appreciated, and to be honest, I would expect this stuff to work out of the box ... is that too much?

Thanks!
Shawn
shawnallen
 
Posts: 5
Joined: Mon Dec 17, 2012 3:29 am
Location: Saint Louis, MO

Re: Getting started ...

Postby nickoppen » Sat Dec 06, 2014 6:32 am

Hi Shawn,

There are a number of things about the parallella software that need a little work. They are working on them but a degree of patience is required.

Please post some compiler output and your environment. That will help to tell what's wrong.

nick
Sharing is what makes the internet Great!
User avatar
nickoppen
 
Posts: 266
Joined: Mon Dec 17, 2012 3:21 am
Location: Sydney NSW, Australia

Re: Getting started ...

Postby shawnallen » Mon Dec 08, 2014 3:37 pm

ldconfig conf: /etc/ld.so.conf.d/browndeer.conf
/usr/local/browndeer/lib

ldconfig was ran as root via sudo, no issues.

Bash PATH: /usr/local/browndeer/bin:/opt/adapteva/esdk/tools/host/bin:/opt/adapteva/esdk/tools/e-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

-----

"clcc: Command not found"
-----

ENIAIRO:/usr/local/browndeer/examples> sudo make
echo

make -C hello_stdcl
make[1]: Entering directory `/usr/local/browndeer/examples/hello_stdcl'
cc -O3 -I/home/linaro/bdt-code/stable-1.6/coprthr/include -I/usr/local/browndeer/include -c hello_stdcl.c
In file included from /usr/local/browndeer/include/stdcl_host.h:220:0,
from /usr/local/browndeer/include/stdcl.h:37,
from hello_stdcl.c:4:
hello_stdcl.c: In function ‘main’:
/usr/local/browndeer/include/clforka.h:183:60: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
else { fprintf(stderr,"__clarg_set: unrecognized type\n"); exit(-1); } \
^
/usr/local/browndeer/include/clforka.h:67:49: note: in expansion of macro ‘__clarg_set’
#define __clarg_set4(cp,krn,n,a0,a1,a2,a3) do { __clarg_set(cp,krn,n,a0);__clarg_set3(cp,krn,n+1,a1,a2,a3); } while(0)
^
/usr/local/browndeer/include/clforka.h:53:30: note: in expansion of macro ‘__clarg_set4’
#define __concat(func,nargs) func ## nargs
^
/usr/local/browndeer/include/clforka.h:61:28: note: in expansion of macro ‘__concat’
#define __clarg_set_(nargs)__concat(__clarg_set,nargs)
^
/usr/local/browndeer/include/clforka.h:56:2: note: in expansion of macro ‘__clarg_set_’
__clarg_set_(__VA_NARGS__(__VA_ARGS__)) \
^
hello_stdcl.c:45:4: note: in expansion of macro ‘clforka’
clforka(cp,devnum,krn,&ndr,CL_EVENT_NOWAIT,n,aa,b,c);
^
/usr/local/browndeer/include/clforka.h:183:60: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
else { fprintf(stderr,"__clarg_set: unrecognized type\n"); exit(-1); } \
^
/usr/local/browndeer/include/clforka.h:66:46: note: in expansion of macro ‘__clarg_set’
#define __clarg_set3(cp,krn,n,a0,a1,a2) do { __clarg_set(cp,krn,n,a0);__clarg_set2(cp,krn,n+1,a1,a2); } while(0)
^
/usr/local/browndeer/include/clforka.h:67:74: note: in expansion of macro ‘__clarg_set3’
#define __clarg_set4(cp,krn,n,a0,a1,a2,a3) do { __clarg_set(cp,krn,n,a0);__clarg_set3(cp,krn,n+1,a1,a2,a3); } while(0)
^
/usr/local/browndeer/include/clforka.h:53:30: note: in expansion of macro ‘__clarg_set4’
#define __concat(func,nargs) func ## nargs
^
/usr/local/browndeer/include/clforka.h:61:28: note: in expansion of macro ‘__concat’
#define __clarg_set_(nargs)__concat(__clarg_set,nargs)
^
/usr/local/browndeer/include/clforka.h:56:2: note: in expansion of macro ‘__clarg_set_’
__clarg_set_(__VA_NARGS__(__VA_ARGS__)) \
^
hello_stdcl.c:45:4: note: in expansion of macro ‘clforka’
clforka(cp,devnum,krn,&ndr,CL_EVENT_NOWAIT,n,aa,b,c);
^
/usr/local/browndeer/include/clforka.h:183:60: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
else { fprintf(stderr,"__clarg_set: unrecognized type\n"); exit(-1); } \
^
/usr/local/browndeer/include/clforka.h:65:43: note: in expansion of macro ‘__clarg_set’
#define __clarg_set2(cp,krn,n,a0,a1) do { __clarg_set(cp,krn,n,a0);__clarg_set1(cp,krn,n+1,a1); } while(0)
^
/usr/local/browndeer/include/clforka.h:66:71: note: in expansion of macro ‘__clarg_set2’
#define __clarg_set3(cp,krn,n,a0,a1,a2) do { __clarg_set(cp,krn,n,a0);__clarg_set2(cp,krn,n+1,a1,a2); } while(0)
^
/usr/local/browndeer/include/clforka.h:67:74: note: in expansion of macro ‘__clarg_set3’
#define __clarg_set4(cp,krn,n,a0,a1,a2,a3) do { __clarg_set(cp,krn,n,a0);__clarg_set3(cp,krn,n+1,a1,a2,a3); } while(0)
^
/usr/local/browndeer/include/clforka.h:53:30: note: in expansion of macro ‘__clarg_set4’
#define __concat(func,nargs) func ## nargs
^
/usr/local/browndeer/include/clforka.h:61:28: note: in expansion of macro ‘__concat’
#define __clarg_set_(nargs)__concat(__clarg_set,nargs)
^
/usr/local/browndeer/include/clforka.h:56:2: note: in expansion of macro ‘__clarg_set_’
__clarg_set_(__VA_NARGS__(__VA_ARGS__)) \
^
hello_stdcl.c:45:4: note: in expansion of macro ‘clforka’
clforka(cp,devnum,krn,&ndr,CL_EVENT_NOWAIT,n,aa,b,c);
^
/usr/local/browndeer/include/clforka.h:183:60: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
else { fprintf(stderr,"__clarg_set: unrecognized type\n"); exit(-1); } \
^
/usr/local/browndeer/include/clforka.h:63:45: note: in expansion of macro ‘__clarg_set’
#define __clarg_set1( cp, krn, n, a0 ) do { __clarg_set(cp,krn,n,a0); } while(0)
^
/usr/local/browndeer/include/clforka.h:65:68: note: in expansion of macro ‘__clarg_set1’
#define __clarg_set2(cp,krn,n,a0,a1) do { __clarg_set(cp,krn,n,a0);__clarg_set1(cp,krn,n+1,a1); } while(0)
^
/usr/local/browndeer/include/clforka.h:66:71: note: in expansion of macro ‘__clarg_set2’
#define __clarg_set3(cp,krn,n,a0,a1,a2) do { __clarg_set(cp,krn,n,a0);__clarg_set2(cp,krn,n+1,a1,a2); } while(0)
^
/usr/local/browndeer/include/clforka.h:67:74: note: in expansion of macro ‘__clarg_set3’
#define __clarg_set4(cp,krn,n,a0,a1,a2,a3) do { __clarg_set(cp,krn,n,a0);__clarg_set3(cp,krn,n+1,a1,a2,a3); } while(0)
^
/usr/local/browndeer/include/clforka.h:53:30: note: in expansion of macro ‘__clarg_set4’
#define __concat(func,nargs) func ## nargs
^
/usr/local/browndeer/include/clforka.h:61:28: note: in expansion of macro ‘__concat’
#define __clarg_set_(nargs)__concat(__clarg_set,nargs)
^
/usr/local/browndeer/include/clforka.h:56:2: note: in expansion of macro ‘__clarg_set_’
__clarg_set_(__VA_NARGS__(__VA_ARGS__)) \
^
hello_stdcl.c:45:4: note: in expansion of macro ‘clforka’
clforka(cp,devnum,krn,&ndr,CL_EVENT_NOWAIT,n,aa,b,c);
^
clcc -c -o ocl_kernels.o matvecmult.cl
make[1]: clcc: Command not found
make[1]: *** [ocl_kernels.o] Error 127
make[1]: Leaving directory `/usr/local/browndeer/examples/hello_stdcl'
make: *** [hello_stdcl] Error 2
ENIAIRO:/usr/local/browndeer/examples>

-----

clcc does exist ...

ENIAIRO:/usr/local/browndeer/examples> clcc
[5298] clmesg ERROR: clcc.c(718): clcc: clld returned non-zero exit status 11
ENIAIRO:/usr/local/browndeer/examples>

-----

CL library issues ...

-----

ENIAIRO:/usr/local/browndeer/examples/clopen_example> sudo make
cc -O3 -I/home/linaro/bdt-code/stable-1.6/coprthr/include -I/usr/local/browndeer/include -c clopen_example1.c
clopen_example1.c: In function ‘main’:
clopen_example1.c:22:59: warning: incompatible implicit declaration of built-in function ‘exit’ [enabled by default]
if (!krn) { fprintf(stderr,"error: no OpenCL kernel\n"); exit(-1); }
^
cc -O3 -I/home/linaro/bdt-code/stable-1.6/coprthr/include -I/usr/local/browndeer/include -o clopen_example1.x clopen_example1.o -L/home/linaro/bdt-code/stable-1.6/coprthr/src/libocl -locl -L/usr/local/browndeer/lib -lstdcl
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clBuildProgram'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetContextInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateProgramWithSource'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateFromGLBuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseKernel'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clFlush'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateBuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseProgram'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetDeviceIDs'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetDeviceInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetMemObjectInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueCopyImage'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueNDRangeKernel'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateCommandQueue'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetPlatformIDs'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateFromGLTexture2D'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetPlatformInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueCopyBuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateContext'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetKernelInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateKernelsInProgram'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseCommandQueue'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateFromGLRenderbuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueWriteImage'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueReadBuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueReleaseGLObjects'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseContext'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateContextFromType'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueReadImage'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseMemObject'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateFromGLTexture3D'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clReleaseEvent'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clWaitForEvents'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateProgramWithBinary'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueAcquireGLObjects'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clSetKernelArg'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateImage2D'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueWriteBuffer'
collect2: error: ld returned 1 exit status
make: *** [clopen_example1.x] Error 1
ENIAIRO:/usr/local/browndeer/examples/clopen_example>

-----

Many thanks for the help! :-)
shawnallen
 
Posts: 5
Joined: Mon Dec 17, 2012 3:29 am
Location: Saint Louis, MO

Re: Getting started ...

Postby nickoppen » Mon Dec 08, 2014 9:58 pm

Hi Shawn,

There's something major wrong here. Rather than try and tweak it, I suggest that you the Brown Deer OpenCL system rebuild from scratch. Also, the installation in the standard image has a problem with the linker which will be fixed after the rebuild.

The getting started guide is here: . It was written for version 1.5 but section 2.3 is relevant to version 1.6 as well.

Get the sources: git clone https://github.com/browndeer/coprthr.git and pay careful attention to the prerequisites, libconfig, libelf and libevent (GCC will be installed already). When I ran configure it could not find event.h. If this happens to you, first check if you can find the library with whereis:

linaro-nano:~> whereis libevent
libevent: /usr/lib/libevent.so /usr/lib/libevent.la /usr/lib/libevent.a

This shows that libevent was installed but I had to look into configure to discover that it was expecting event.h to be in .../include/event2. The ... turned out to be /usr so I had to use the --with-libevent=/usr. So my final configure command was:

./configure --enable-epiphany --with-libevent=/usr

As with anything on Linux, if it does not work first time you have to sniff around a bit.

The make and sudo make install worked fine for me.

Good luck with that. (I'm not a linux person so luck always plays a role)

nick
Sharing is what makes the internet Great!
User avatar
nickoppen
 
Posts: 266
Joined: Mon Dec 17, 2012 3:21 am
Location: Sydney NSW, Australia

Re: Getting started ...

Postby shawnallen » Tue Dec 09, 2014 6:47 pm

Nick,

That worked out pretty well, I think I had one change (libevent was in /usr/local rather than /usr) and everything else ran mostly okay (one or two issues popped up when going through the examples, but more things are running overall).

Many, many thanks!
Shawn
shawnallen
 
Posts: 5
Joined: Mon Dec 17, 2012 3:29 am
Location: Saint Louis, MO


Return to OpenCL

Who is online

Users browsing this forum: No registered users and 4 guests

cron