大規模最適化問題、グラフ探索、機械学習やデジタルツインなど

旧名:最適化問題に対する超高速&安定計算

SDPA-GMP

1月26日にも紹介した gmp を用いた SDPA だが仮に SDPA-GMP としておこう。gmp は評価の高いライブラリのようで Linux でもメジャーなディストリビューションではインストールされていることが多い。SDPA-GMP の場合では LAPACK/BLAS などのライブラリも手動で書き換えているのだが、この部分などはついでに OpenMP で並列化してしまうこともできるので、for ループで各反復の独立性の高いものはマルチスレッド化した。まず gcc(g++)で作成した SDPA-GMPIntel コンパイラを用いて再作成するとそれだけで 1.5 倍ぐらいの速度になる。さらに OpenMP でマルチスレッド化した SDPA-GMP を4スレッドで動作すると SDPA-GMP(Intel) の2倍以上高速になっている(解く問題に性能は依存するが)。ただこれでもまだ相当遅いことには変わりない。SIMD による高速化は結構効くと思われるのだが。