Programming Multi-core using FastFlow

From Gridkaschool
Revision as of 19:32, 27 August 2014 by Torquati (talk | contribs) (Requirements)

FastFlow

FastFlow is an open-source, structured parallel programming framework originally conceived to support efficient stream parallel computation while targeting shared memory multi-core. It provides the parallel applications programmer with a set of ready-to-use, parametric algorithmic skeletons modelling the most common parallelism exploitation patterns. The skeletons provided may be almost freely nested to model more and more complex parallelism exploitation patterns.

FastFlow is provided as a set of header files. The last version of the FastFlow code can be download from the Sourceforge svn repository this way:

"svn co https://svn.code.sf.net/p/mc-fastflow/code fastflow"

Web

The FastFlow project web site is: http://calvados.di.unipi.it/fastflow

Requirements

  • Linux operating system (it is possible to use also a Mac OS and Windows OSs but it is not recommended for the tutorial session).
  • A c++11 compiler (gcc 4.7.x or icc 13.x).
  • For running some of the tests provided in the tutorial session it is need OpenCV (http://www.opencv.org) and ImageMagick (http://www.imagemagick.org).

Everything you need to compile and run the tests is prepared in the Virtual Machine provided during the session.

VM access

ssh -p 24 fastflow@gks-XXX.scc.kit.edu

Tutorial

  • Available as pdf soon together with all tests and examples.