comp.lang.ada
 help / color / mirror / Atom feed
* ANN: Paraffin 4.1, Parallelism Generics
@ 2013-05-04  6:33 Brad Moore
  2013-05-04  7:16 ` Pascal Obry
  0 siblings, 1 reply; 4+ messages in thread
From: Brad Moore @ 2013-05-04  6:33 UTC (permalink / raw)


The next release of Paraffin, Paraffin 4.1 is now available for download.

Paraffin is a suite of Ada 2012 generics that facilitates writing 
parallel programs featuring divide and conquer parallelism.

The generics includes support for parallel loops and
parallel recursive subprograms.

In addition, there are non-Ravenscar versions of the generics,
paraffinalia, and test programs, as well as Ravenscar versions. The 
Ravenscar versions satisy the restrictions
defined in the Ravenscar Profile.

Recursive parallelism also includes stack safe parallelism, which
provides assurances that recursion will not overflow the stack.
This feature also benefits single processor as well as multicore.

In addition, Paraffin comes with Paraffinalia, which is a suite
of parallel algorithms designed for reuse that includes;

- Parallel Integration of arbitrary functions
- Parallel solving of matrices
- Parallel Quicksort
- Parallel Fast Fourier Transform
- Parallel Red Black Tree
- Parallel Linked Lists
- Parallel cumulative sum


The main features of this new release are;

    - Fixed a bug in all the recursive work sharing generics that would
      cause the program to hang if the actual number of workers used is
      less than the number of requested workers.

    - If exceptions are raised in worker tasks, it is the first
      exception raised that is reraised in the sequential task when the
      parallelism completes, instead of the last exception raised.

    - Added Usage output for all the test drivers, which gets displayed
      if any app is executed without any command line parameters.

    - The Test_Parallel_Loops, and Test_Ravenscar_Parallel_Loops apps
      would hang without producing any output when run on Windows. This
      bug has been fixed.

    - Reducing_Doubly_Linked_Lists abstraction now has reducing functions
      for splicing at the beginning of the list and at the end. This
      allows for both forward and reverse parallel loops involving list
      concatentation, which is demonstrated in a test program.

    - The Parallel Integrate applet in Paraffinalia now accepts an
      accuracy parameter that controls how much processing needs to
      occur.

    - Pre and post conditions added to the Paraffinalia generics.
    - Quicksort now works on small arrays in parallel, as small as one
      element arrays.
    - global_pragma configuration file that turns on portability checks
      for all the paraffinalia apps and test drivers.
    - Stack Safe tests and generics now working for the quicksort and
      integrate parafinalia apps.
    - Red_Black_Tree container doesn't Clear list in parallel, which was
      causing problems when tree if finalized after main task completes.

The latest stable release and older releases may be downloaded from;

  https://sourceforge.net/projects/paraffin/files/

For those who want the current development versions of the source they
can download using git (http://git-scm.com/) by issuing the following
commands;

  mkdir sandbox
  cd sandbox
  git clone git://git.code.sf.net/p/paraffin/code paraffin-code

The current development version typically will correspond to the latest
stable release, but may at times be unstable when new features are being
worked on.

-- Brad



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ANN: Paraffin 4.1, Parallelism Generics
  2013-05-04  6:33 ANN: Paraffin 4.1, Parallelism Generics Brad Moore
@ 2013-05-04  7:16 ` Pascal Obry
  2013-05-04 17:14   ` Shark8
  0 siblings, 1 reply; 4+ messages in thread
From: Pascal Obry @ 2013-05-04  7:16 UTC (permalink / raw)



Hi Brad,

> The next release of Paraffin, Paraffin 4.1 is now available for download.

Great! I've seen those announcements since some time now but no time to
test or use this framework.

Just curious, how does it compares to the TBB?

Thanks,
Pascal.

-- 
  Pascal Obry /  Magny Les Hameaux (78)

  The best way to travel is by means of imagination

  http://v2p.fr.eu.org
  http://www.obry.net

  gpg --keyserver keys.gnupg.net --recv-key F949BD3B



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ANN: Paraffin 4.1, Parallelism Generics
  2013-05-04  7:16 ` Pascal Obry
@ 2013-05-04 17:14   ` Shark8
  2013-05-04 17:55     ` Pascal Obry
  0 siblings, 1 reply; 4+ messages in thread
From: Shark8 @ 2013-05-04 17:14 UTC (permalink / raw)


On Saturday, May 4, 2013 1:16:43 AM UTC-6, Pascal Obry wrote:
> 
> Great! I've seen those announcements since some time now but no time to
> test or use this framework.

My problem is I don't have any interesting project that I think *needs* parallelism.

> Just curious, how does it compares to the TBB?

Forgive the ignorance, but what is TBB?



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: ANN: Paraffin 4.1, Parallelism Generics
  2013-05-04 17:14   ` Shark8
@ 2013-05-04 17:55     ` Pascal Obry
  0 siblings, 0 replies; 4+ messages in thread
From: Pascal Obry @ 2013-05-04 17:55 UTC (permalink / raw)


Le 04/05/2013 19:14, Shark8 a �crit :
> Forgive the ignorance, but what is TBB?

It's Intel C++ Threading Building Blocks, it is using template heavily.
We can say that TBB is like the STL but for the parallelism.

Pascal.

-- 
  Pascal Obry /  Magny Les Hameaux (78)

  The best way to travel is by means of imagination

  http://v2p.fr.eu.org
  http://www.obry.net

  gpg --keyserver keys.gnupg.net --recv-key F949BD3B



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-05-04 17:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-04  6:33 ANN: Paraffin 4.1, Parallelism Generics Brad Moore
2013-05-04  7:16 ` Pascal Obry
2013-05-04 17:14   ` Shark8
2013-05-04 17:55     ` Pascal Obry

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox