repa

    4

    1答えて

    サイズkの2次元行列をn + 1(例えば)だけ横切るアルゴリズムを書いてみたい配列の要素は要素のリストです。これらのリストは、サイズが異なり、長さ1,2、...、kであってもよい。私は、確かに、最初の行では、2行目で長さ1、長さ2、...、k行目で長さkと言います。私はハスケルが "k-tuples"のための何らかの仕組みを持っていると想像しています。私はそれが何であるか分かりません。たとえタイプ

    15

    2答えて

    ここにはRepaとは無関係の基本的なモナド問題といくつかのRepa固有の質問があります。 私はRepa3を使用しているライブラリで作業しています。効率的な並列コードを取得するのに問題があります。私の関数が遅延配列を返すようにすると、非常にうまくゆっくりとコードが8コアまで伸びます。このコードは、GHCプロファイラごとに20GB以上のメモリを占有し、基本的なHaskellのボックス化されていないベク

    6

    2答えて

    Repa?の過去の値(すなわち、より小さなインデックス)に依存する配列を計算することは可能ですか?アレイの最初の部分(例えば、a[0])が与えられる。 (配列の要素を示すにはCのような表記法を使用していますが、混同しないでください) 私はtutorialを読んですぐにハックをチェックしましたが、それを行う機能が見つかりませんでした。 (私はあなたがそれを並列化できないため、1次元配列で計算のこの種

    19

    1答えて

    私は、標準的な配列パッケージの境界付き配列に似た何かを実現するが、repa配列を使用したい。 これを達成するうえで、どのような良い方法がありますか? これは私が試したものですが、境界を確認するカスタム関数のすべてを包むよりも良い方法がなければならない: import Data.Array.Repa data C = A | F | L deriving (Eq,Enum,Ord,Bounded

    7

    1答えて

    私は実際にはその同時性の能力にかかわらず、Repaのインターフェイスが好きです。実際には、配列は比較的小さいので並列化が必要であり、並列化は役に立たず、有害です。 私は自分のプログラムでparallel-ioを使用しているので、-threadedをコンパイルし、+RTS -Nxで実行します。これにより、repaの並列化が可能になります。 repaの並行処理機能を無効にする方法はありますか? Hm、

    11

    2答えて

    私はGHC 7.4.1を使ってRepaを使用するプログラムをコンパイルしようとしています。しかし、編集の途中で、私は記憶が不足しています。 ghc -vでは、SpecConstrフェーズに陥っていることがわかります。 SpecConstrは、GHCのCore-to-Core変換の1つです。 Simon Peyton Jonesの説明はhereで、コードはhereですが、GHCの内部動作にはあまり慣