Regular, shape-polymorphic, parallel arrays now in AUR

Repa, a new library for multi-dimensional automatically-parallel arrays in Haskell, is now available in Arch Linux via AUR.  Such arrays may be converted to and from bytestrings, and written out in various formats. Example algorithms are available, including fft2d, matmult, and laplace, along with an algorithm library. The library may prove useful for scientific and numerical computing, where high level languages, with good parallel performance, should shine.

More information about Repa is available:

The full set of packages are available in AUR:

About these ads

3 responses to “Regular, shape-polymorphic, parallel arrays now in AUR

  1. Felipe Lessa

    Hello!

    AFAIK, repa has poor performance with GHC 6.12. Shouldn’t this announcement say something like “this library will be great when GHC 6.14 comes out, but please be careful with GHC 6.12″?

    Cheers! =D

  2. Ben Lippmeier

    That’s right. Repa depends on properties of the head’s simplifier and inliner for decent performance. Using 6.12 will be at least 10x slower. The Hackage page states this. I’d hold off pushing it into other distros until GHC 6.14 comes out and we can release a stable version.

  3. uses two cores. (Strictly speaking, it uses two OS threads, which will be scheduled on two separate cores if available.) To determine the runtime of parallel code, measuring CPU time, as demonstrated in the timed variant of the dot product example , is not sufficient anymore. We need to measure wall clock times instead. For proper benchmarking, it is advisable to use a library, such as criterion .

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s