LoopVectorization.jlを試す

最近 LoopVectorization.jlがすごいということで、 Julia界隈が盛り上がっているらしい。

単純なforループの前に@avxマクロをつけるだけでベクトル化されたコードを吐いてくれるとのこと。 行列演算のスピードでMKLを倒すのは難しいものがあるが、 十分匹敵するレベルのコードになるようだ。

これを裏で使った Gaius.jlというPure Juliaで書かれたBLAS likeなライブラリもできているらしい。 試そうと思ってインストールしたがうまく動いてくれなかったので、時間がある時にちゃんとしたベンチマークを取ろうと思う。

研究に使うレベルの大規模計算でどのくらいのパフォーマンスが出せるのかが気になるところ。できたらQiitaにでも投稿するかもしれない。

Avatar
Hayate Nakano
Ph.D. student

My research interests include tensor-network methods, quantum many-body physics and non-equilibrium dynamics.