| 3 | | Repa provides high performance, regular, multi-dimensional, shape polymorphic parallel arrays. |
| 4 | | All numeric data is stored unboxed. Functions written with the Repa combinators |
| 5 | | are automatically parallel provided you supply +RTS -Nwhatever on the command |
| 6 | | line when running the program. Repa means "turnip" in Russian. If you don't like turnips then this library probably isn't for you. |
| 7 | | |
| 8 | | == Download == |
| 9 | | Repa is split up into a few packages to help control dependencies. |
| 10 | | |
| 11 | | * [http://hackage.haskell.org/package/repa repa] |
| 12 | | * [http://hackage.haskell.org/package/repa-bytestring repa-bytestring] |
| 13 | | * [http://hackage.haskell.org/package/repa-io repa-io] |
| 14 | | * [http://hackage.haskell.org/package/repa-algorithms repa-algorithms] |
| 15 | | * [http://hackage.haskell.org/package/repa-examples repa-examples] |
| 16 | | |
| 17 | | If you want the lot then just install the examples, and this will pull down the rest. |
| 18 | | {{{ |
| 19 | | cabal install repa-examples |
| 20 | | }}} |
| 21 | | |
| 22 | | == Report a bug == |
| 23 | | If you have a bug or feature request, please add a [http://trac.haskell.org/repa/newticket new ticket].[[br]] |
| 24 | | Note that for spam prevention you must first [http://trac.haskell.org/repa/register register] (takes 10 sec) before you can add a ticket. |
| 25 | | |
| 26 | | You can also send email to `repa@ouroborus.net` |
| 27 | | |
| 28 | | == Examples == |
| 29 | | Here is the output of some of the examples included in the [http://hackage.haskell.org/package/repa-examples repa-examples] package: |
| 30 | | |
| 31 | | || fft2d-highpass || Laplace || |
| 32 | | || [[Image(WikiStart:lena-high2-thumb.jpg)]] || [[Image(WikiStart:pls-400x400-out-thumb.jpg)]] || |
| 33 | | || [wiki:Examples/Fft2dHighpass more info] || [wiki:Examples/Laplace more info] || |
| 34 | | |
| 35 | | == Demo == |
| 36 | | There is also an OSX demo that does edge detection on a video stream: |
| 37 | | |
| 38 | | || [[Image(WikiStart:beholder-thumb.jpg)]] || |
| 39 | | || video: [http://code.ouroborus.net/beholder/video/Edge480.mov low(10MB)] [http://code.ouroborus.net/beholder/video/Edge720.mov high(40MB)] || |
| 40 | | |
| 41 | | * The [http://code.ouroborus.net/beholder/beholder-head/ source] should compile with XCode 3.2.1, GHC 7.0.3 and Repa 2.0.0, but you need to update and run the CONFIGURE.sh script to point it to your GHC install. |
| 42 | | * There are also prebuilt OSX i386 versions for [http://code.ouroborus.net/beholder/distro/beholder-N2.tgz two] [http://code.ouroborus.net/beholder/distro/beholder-N4.tgz four] and [http://code.ouroborus.net/beholder/distro/beholder-N6.tgz six] threads. These just have the corresponding +RTS -N# option baked in, you can set it in the main.m module. Some day I will make it so you can select this from the GUI. |
| 43 | | * You can also run the edge detector over a single uncompressed .bmp file using the repa-canny program from the [http://hackage.haskell.org/package/repa-examples repa-examples] package. |
| 44 | | |
| | 3 | This trac as moved to [http://repa.ouroborus.net] |