Getting started with parallel programming

Discussion about Parallella (and Epiphany) Software Development

Moderators: amylaar, jeremybennett, simoncook

Getting started with parallel programming

Postby Man3 » Mon Dec 22, 2014 6:49 pm

Hello everyone.

I'm new to this forum, and generally I'm new to parallel programming. Some of my questions may be stupid to members of this forum, but I don't have too much experience working on Linux, so every advice is very helpful for me.
Few days ago i received my Parallella board (Parallella 16 older version), and I succeed to format properly SD card of parallella. :)
Next step is to download SDK needed for programming on Parallella (correct me if I am wrong). Should I download SDK using this link: https://github.com/adapteva/epiphany-sd ... ng-the-SDK ?
After i download SDK for Parallella, do I have every needed to compile and run simple "Hello World" program that runs on main ARM proccessor, and equaly on Epiphany co-proccessor?

I have found some simple examples of programming Parallella using stdcl. As I can see, there is CLCC compiler used along with GCC compiler, so how can I download tools needed to compile kernel code.
http://www.browndeertechnology.com/docs ... _stdcl.pdf

If there is simpler way of running and understanding simple examples, I would appreciate that.

P.s: I hope there is not same topic opened.

Thanks everyone,
Eman.
Man3
 
Posts: 2
Joined: Wed Dec 17, 2014 1:48 pm

Re: Getting started with parallel programming

Postby 9600 » Mon Dec 22, 2014 8:04 pm

Hi Eman,

The standard SD card image provides Ubuntu with the SDK pre-installed. If you log in as the linaro user you will find the examples and should be able to build and run these without having to install anything else.

Regards,

Andrew
Andrew Back (a.k.a. 9600 / carrierdetect)
User avatar
9600
 
Posts: 997
Joined: Mon Dec 17, 2012 3:25 am

Re: Getting started with parallel programming

Postby Man3 » Tue Dec 23, 2014 7:22 pm

Thank you Andrew for response.
I had problems with variable PATHs, but it's past now. :)
As I showed in my previous post, i have found simple examples of parallel programs based on CL.
Link: http://www.browndeertechnology.com/docs ... _stdcl.pdf
I made 2 simple programs, and I have 2 questions. :)
1.)
First implementation si based on C language, and it calculates sum on main processor (page 10 from the link above).
Second one has both - host side and kernel side (pages 11 and 12 from link).
When i measure times of execution of both programs (for a huge number of elements), a first implementation is faster for about 5-6 times. I expected to be different situation because problem of counting partial sums is "embarrassingly parallel". Is second one implementation slower due to communication between main processor and cores, or it's due to CL ?

2.)
When i compile and run second programme (based on CL), i get very huge output in console. I've found almost same output in another topic of this forum, but no one answered.
viewtopic.php?f=18&t=1019
First post c) part.

Thanks again,
Eman.
Man3
 
Posts: 2
Joined: Wed Dec 17, 2014 1:48 pm


Return to Programming Q & A

Who is online

Users browsing this forum: No registered users and 7 guests