- 889 名前:デフォルトの名無しさん [2020/07/08(水) 11:33:16.98 ID:KjpryZA9.net]
- >>876
Haskellそのものは前から趣味で触ってた。 マルチスレッドもJavaとかで触ってはいる。 Haskellは遅延評価が故にマルチスレッドに(関数型言語としては)向かない方だけど、 遅延評価が故にチャンクと言う単位で処理の粒度を分けられる。 例えば、その数字が素数か判定する関数をリストなり配列なりに適用するとする。 この関数は大きな数字になる程、処理が重くなるので均等に振り分けるとか無理。 そこでチャンク単位で分割しておけば、早く終わったコアは次のチャンクを処理すると言う風に ある程度の均等化が出来る・・・みたい。 Javaとかだと、チャンク相当の粒度に分けるのは手動だったけど、Haskellは何個のチャンクに分けるって指定するだけだから、 楽だなぁ・・・と。
|

|