Page 1 of 1

Fresh Install, mpi_lock_example won't make.

PostPosted: Tue Jun 13, 2017 6:13 pm
by Nerded
Hi,

I just did a fresh install of the Parallella software onto an SD card, got it running, and now I am getting issue while trying to make a browndeer example program.

The error follows:

/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueWriteImage'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueWriteImage'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateCommandQueue'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clGetMemObjectInfo'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clEnqueueReadBuffer'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateProgramWithSource'
/usr/local/browndeer/lib/libstdcl.so: undefined reference to `clCreateFromGLBuffer'
...
collect2: error: ld returned 1 exit status
Makefile:27: recipe for target 'mpi_lock_example.x' failed

Anyone have a clue?

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Wed Jun 14, 2017 2:40 pm
by Nerded
*Shameful bump from lack of better ideas

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Wed Jun 14, 2017 4:12 pm
by jar
This is a linking problem. It looks like it's not finding libocl.so. Check the path in the Makefile (the one with -locl) and that the library exists.

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Thu Jun 15, 2017 12:17 pm
by Nerded
Thank you,

I checked, but to no avail. The library is in the correct place. When I try to compile the parallella MPI examples I am getting similar errors, just with the libcoprthr.so. I checked my $PATH and $LD_LIBRARY_PATH and they have the correct directories in them. I have had nothing but bad luck >.<

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Thu Jun 15, 2017 9:46 pm
by jar
Sorry about your troubles.

Which Linux image did you use for your board? Each image should have the COPRTHR 1.0 SDK installed, which supports OpenCL/STDCL

I have been using the 2015.1 image for a lot of development which uses the COPRTHR 2.0 SDK (and abandons OpenCL). I've been developing OpenSHMEM as the one-sided message passing API. Combined with the COPRTHR 2.0, it's a pretty good programming model to address the Parallella configuration of having the Epiphany coprocessor for offload, but which looks like a cluster on a chip. OpenCL just isn't a good model for Epiphany for anything trivially parallel code.

There was a showstopping bug with GCC in the 2016.11 image that hindered COPRTHR 2.0 SDK development for the image. My understanding is that it has been fixed, but there's no new image. So GCC will have to be redistributed with COPRTHR 2.0 or a new Parallella linux image will need to be bundled up (I don't believe there are any plans).

So how does this help you? I'm not sure.

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Fri Jun 16, 2017 1:18 pm
by Nerded
So is there a way to still get the older versions of the software? On this link, https://github.com/parallella/parabuntu/releases they only have the headless versions, and I am looking for the HDMI version.

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Fri Jun 16, 2017 5:11 pm
by jar
The 2015.1 image only came headless: http://ftp.parallella.org/ubuntu/dists/trusty/image/
The 2016.11 image brought back HDMI, but also that infernal compiler bug.

If you SSH into the board and use X forwarding (ssh -Y ...) then you can use X Windows applications on the headless images. I don't know if that workaround solves your problem.

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Fri Jun 16, 2017 7:50 pm
by Nerded
Thank you! Might you know simple instructions on SSH'ing into the board? Like the address and whatnot.

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Fri Jun 16, 2017 9:13 pm
by jar
There are a number of ways to figure out the IP address of your device, depending on your setup. You might log into your router.

Once you have the IP address of your Parallella board, from a terminal:
Code: Select all
ssh -Y parallella@[IP address]


Or, if you're logging in from a windows machine, you can use Putty (https://www.chiark.greenend.org.uk/~sgt ... atest.html)

Re: Fresh Install, mpi_lock_example won't make.

PostPosted: Tue Jun 20, 2017 4:20 pm
by olajep
jar wrote:There was a showstopping bug with GCC in the 2016.11 image that hindered COPRTHR 2.0 SDK development for the image. My understanding is that it has been fixed, but there's no new image. So GCC will have to be redistributed with COPRTHR 2.0 or a new Parallella linux image will need to be bundled up (I don't believe there are any plans).

Fix here for reference:
https://github.com/adapteva/epiphany-gc ... f3283f68b4

Unfortunately no new release plans atm. :(

// Ola