haskell-jp / random #105 at 2023-12-14 23:00:21 +0900

Hiromi ISHII / mr_konn
先々月の Linear Haskell に関する拙稿が余りにも長く趣旨がわかりづらかったので、題材を絞って「どれくらい Haskell が Rust に近づくのか」という点があるていど伝わるといいな……と思いながら補遺を書きました。9年ぶりの Haskell Advent Calendar 参加記事ですが、御笑覧ください。

https://zenn.dev/konn/articles/2023-12-14-pure-parallel-fft-in-linear-haskell
誤字を見つけました
2. 分割倒置法なので、二分割した再帰のフェーズはそれぞれ並列にできる
分割統治法ですよね
Hiromi ISHII / mr_konn
うおーありがとうございます!
あ、ここもですね
(2)(3)が分割倒置法の心臓部ですね。
in-place FFT のアルゴリズムが並列化できるという件は古傷が痛みますw(修論で自動並列化の判定を扱おうとして結構苦しんだ…)
Hiromi ISHII / mr_konn
このあたりは実用しようと思うと直列実行のスレッショルドとかスケジューリングをちゃんと考える必要があって大変そうですねえ……今回のケースだとGHCのスケジューラに任せっきりでなんとかなってしまいましたが
私の修論は、たんなるFortran3重ループで書かれたものをベクトル化できるかどうかをコンパイラが判定するというものでした^^;
ベクトル化なので基本的にどんなに細かくても直列実行よりは速くなるという前提の話でしたね…
まあ、もう〇十年前の話です^^;