Parallel Programming Resources

Any technical questions about the Epiphany chip and Parallella HW Platform.

Moderator: aolofsson

Parallel Programming Resources

Postby aolofsson » Wed Sep 24, 2014 11:21 am

As part of the Parallella Kickstarter campaign, I committed to writing a book about parallel programming. I haven't forgotten and I am working on it. Now that we are finally into production and distribution safely with the Parallella board, education is becoming the #1 priority, so my writing pace WILL improve by a couple of orders of magnitude over the next few months. In the meantime, here are a number of pretty good free online resources:

An introduction to parallel programming from LLNL:
https://computing.llnl.gov/tutorials/parallel_comp/

Is Parallel Programming Hard, And, If So, What Can You Do About It?
https://www.kernel.org/pub/linux/kernel ... ook-e1.pdf

Programming on Parallel Machines.
http://heather.cs.ucdavis.edu/~matloff/ ... ocBook.pdf

Journeyman's Programming Tour
http://grid.hust.edu.cn/wusong/file/Par ... puting.pdf

An Introduction to Parallel Programming with OpenMP
http://www.roe.ac.uk/ifa/postgrad/pedag ... ssling.pdf

An Introduction to MPI from LLNL
https://computing.llnl.gov/tutorials/mpi/

Programming for the transputer in C. [historical]
http://cs.smith.edu/~thiebaut/transputer/toc.html

If you know of other high quality free resources, please respond to this topic.

Andreas
User avatar
aolofsson
 
Posts: 1005
Joined: Tue Dec 11, 2012 6:59 pm
Location: Lexington, Massachusetts,USA

Re: Parallel Programming Resources

Postby theover » Wed Sep 24, 2014 4:40 pm

Hi Andreas,

I've looked at your impressive list of PP resources, and couldn't help but feel a few mismatches might be at stake here. First, the Parallella isn't (yet) a big*ss memory, convoluted caching structure mini/supercomputer in the traditional, towards which most of these papers seem to have a bias.
Maybe it would be interesting in the context of the first two and more specifically the third papers kind of academic realm (where I worked some years) to define more specifically what the difference is between the general concepts of modern computers and structural ordering in all kinds of ways (sensible and less sensible like all kinds of C++ hierarchies without much useful meaning,except that they exist and do something), what the technical basis is and how most of the actually efficient parallel programs work in practice.

Of course the Parallella with the Epiphany is a great parallel processing implementation vehicle, in some ways revolutionary, so I'd hope it can act as a good educational tool, which in my opinion will fail if the people who just want some opportunistic edge (of whom I met ample instances in the academic realm) get too much of the teaching floor. In good tradition, I think both at hard work-level and more theoretically, the technical scientists and engineers that work proper with the technological givens at hand achieve useful knowledge levels the easiest, and are the most respectable in their jobs. I mean some of the articles I browsed over are a bit far from the Parallella reality.

I learned about Thrust for Cuda 4.0+ and TBB going over the literature list above, thanks for that.

Theo V.
theover
 
Posts: 181
Joined: Mon Dec 17, 2012 4:50 pm


Return to Epiphany and Parallella Q & A

Who is online

Users browsing this forum: No registered users and 16 guests

cron