FastFlow
SVN-r182-Aug-14-2014
A high-level, lock-less, parallel programming (shared-memory) and distributed programming (distributed-memory) framework for multi-cores and many-cores systems
|
The principal namespace for the FastFlow library. More...
Classes | |
class | Barrier |
Blocking barrier - Used only to start all nodes synchronously. More... | |
class | ff_allocator |
The ff_allocator, based on the idea of the Slab allocator More... | |
class | ff_dinout |
A ff::ff_dnode serving both Input and Output to the network. More... | |
class | ff_dnode |
Defines ff::ff_dnode. More... | |
class | ff_farm |
The Farm skeleton, with Emitter (lb_t ) and Collector (gt_t ). More... | |
class | ff_gatherer |
A class representing the Collector node in a Farm skeleton. More... | |
class | ff_loadbalancer |
A class representing the Emitter node in a typical Farm skeleton. More... | |
class | ff_mdf |
Macro Data Flow executor. More... | |
class | ff_minode |
Multiple input ff_node (the MPSC mediator) More... | |
class | ff_monode |
Multiple output ff_node (the SPMC mediator) More... | |
class | ff_node |
The FastFlow abstract contanier for a parallel activity (actor). More... | |
class | ff_oclNode |
OpenCL implementation of FastFlow node. More... | |
class | ff_ofarm |
The ordered Farm skeleton. More... | |
class | ff_pipe |
Pipeline pattern (high-level pattern syntax) More... | |
class | ff_pipeline |
The Pipeline skeleton (low-level syntax) More... | |
class | ff_thread |
thread container for (leaves) ff_node More... | |
class | FFAllocator |
A user-space parallel allocator (process-wide) More... | |
class | Lamport_Buffer |
Implementation of the well-known Lamport's wait-free circular buffer. Not currently used. More... | |
class | MPMC_Ptr_Queue |
An implementation of the bounded Multi-Producer/Multi-Consumer queue. Not currently used. More... | |
class | MSqueue |
Michael and Scott MPMC. Not currently used. More... | |
class | ofarm_gt |
Ordered farm Collector. More... | |
class | ofarm_lb |
Ordered farm emitter. More... | |
class | ParallelFor |
Parallel for loop. Run automatically. More... | |
class | ParallelForPipeReduce |
ParallelForPipeReduce class. More... | |
class | ParallelForReduce |
Parallel for and reduce. Run automatically. More... | |
class | poolEvolution |
The pool evolution parallel pattern. More... | |
class | spinBarrier |
Nonblocking barrier - Used only to start all nodes synchronously. More... | |
class | squeue |
Unbound sequential FIFO queue. More... | |
class | svector |
Simple yet efficient dynamic vector. More... | |
class | SWSR_Ptr_Buffer |
SPSC bound channel (Single-Writer/Single-Reader) More... | |
class | threadMapper |
The thread mapper allows to map threads to specific core using a predefined mapping policy. More... | |
class | uSWSR_Ptr_Buffer |
Unbounded Single-Writer/Single-Reader buffer (FastFlow unbound channel) More... | |
Functions | |
static unsigned int | address_hash_function (void *address) |
template<typename Function > | |
static void | parallel_for (long first, long last, const Function &body, const long nw=FF_AUTO) |
Parallel loop over a range of indexes (step=1) | |
template<typename Function > | |
static void | parallel_for (long first, long last, long step, const Function &body, const long nw=FF_AUTO) |
Parallel loop over a range of indexes using a given step. | |
template<typename Function > | |
static void | parallel_for (long first, long last, long step, long grain, const Function &body, const long nw=FF_AUTO) |
Parallel loop over a range of indexes using a given step and granularity. | |
Variables | |
static const size_t | FF_EOS_NOFREEZE = (FF_EOS-0x1) |
automatically propagated | |
static const size_t | FF_GO_ON = (FF_EOS-0x2) |
non automatically propagated | |
static const size_t | FF_GO_OUT = (FF_EOS-0x3) |
non automatically propagated | |
The principal namespace for the FastFlow library.
All classes and functions in the FastFlow library are contained within this namespace.
|
inlinestatic |
Hash function to map addresses, cut into "long" size chunks, then XOR. The result will be matched to hash table size using mod in the hash table implementation