• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2020 年度 実施状況報告書

マルチコアCPU向けに最適化された高速任意精度線形計算ライブラリの開発

研究課題

研究課題/領域番号 20K11843
研究機関静岡理工科大学

研究代表者

幸谷 智紀  静岡理工科大学, 情報学部, 教授 (80319152)

研究期間 (年度) 2020-04-01 – 2023-03-31
キーワード多倍長浮動小数点演算 / 基本線型計算 / 並列化 / SIMD / OpenMP / マルチコアCPU
研究実績の概要

本研究は現在主流のマルチコアCPUにおいて多倍長精度浮動小数点演算に基づく線形計算を最適化し,最大の性能を発揮させるソフトウェア技法を追求するものである。
多倍長精度浮動小数点演算の実装方法法は大きくマルチコンポーネント型と多数桁方式の2種類ある。本研究が行われる以前に,OpenMPを用いた並列化は,どちらの方式の多倍長精度計算でも有効で,その成果物はBNCmatmulというライブラリにまとめてある。本研究はこれに加えてCPUの性能を最大限発揮すべく,特にSIMD命令を活用した高速化を行っていくことを主要目的と定めた。
2020年度の研究実績としては,Binary64を複数使用するマルチコンポーネント型のDD(Double-Double),TD(Triple-Double),QD(Quad-Double)精度の基本線型計算について,SIMD化による基本線型計算の高速化を達成したことが挙げられる。現在最も後半に使用されているx86_64環境を構築すべく,科研費では24コアのAMD EPYCマシンを導入し,既存のCorei9環境でも共通に使用できるAVX2を用いての基本線型計算のSIMD化を行った。その結果,いずれの精度計算でも高速化できることを実装とベンチマークテストで示すことができた。特にTD精度は,オリジナルの加算実装方法よりもQDの加算をTD化した方が高速になることを示すことができ,学術的にも高い貢献を果たすことができたと考えている。半面,従来最も高速であることを期待したStrassen, Winogradアルゴリズムを用いた行列乗算は,特にOpenMPによる並列化の効果が限定的であり,8スレッド以上では高速化できないことが判明した。現状,我々の実装では,ブロック化による行列乗算が,メニーコア上ではSIMD化による効果も手伝って最も高速である。

現在までの達成度 (区分)
現在までの達成度 (区分)

2: おおむね順調に進展している

理由

多倍長精度浮動小数点演算のうち,Binary64を複数使用するマルチコンポーネント型のDD(Double-Double),TD(Triple-Double),QD(Quad-Double)精度の基本線型計算をAVX2を用いて高速化することは2020年度内に達成でき,特にTDは,オリジナルの加算実装方法よりもQDの加算をTD化した方が高速になることを示すことができた。その成果は情報処理学会HPC研究会(含むSWoPP2020)と日本応用数理学会年会にて公表済みである。2021年度中には本成果を査読付き国際研究集会に投稿する。

今後の研究の推進方策

次の3点を明確化すべく,研究を推進していきたいと考えている。
(1) マルチコンポーネント型多倍長精度浮動小数点演算を用いた線型計算については,本年度内にGPU環境との比較を行い,CPU環境との差異を明確化する予定である。
(2) 行列乗算については尾崎スキームの利用を検討し,高速化に寄与できる範囲を明確化しておきたい。
(3) 多数桁方式の多倍長浮動小数点演算を用いた高速化がどの程度可能なのか,検討の余地がある。OpenMPを用いた並列化は一定の効果があるものの,QD精度を越え,筆算方式の乗算アルゴリズムが最も高速な範囲でのSIMD化の方策については今後検討を行っていきたい。

次年度使用額が生じた理由

コロナ化のため,国内外全ての研究集会がオンライン化された結果,旅費が発生しなかった。そのためマルチコアCPUマシンのGPUスペックを上げて当初予算より高いものを購入したが,それでも使いきれずに10万円ほど残額がでた。これについては次年度以降の旅費および諸経費に使用していきたいと考えている。

  • 研究成果

    (6件)

すべて 2021 2020

すべて 雑誌論文 (2件) (うち査読あり 2件、 オープンアクセス 1件) 学会発表 (3件) 図書 (1件)

  • [雑誌論文] Performance Evaluation of Strassen Matrix Multiplication Supporting Triple-Double Precision Floating-Point Arithmetic2020

    • 著者名/発表者名
      Kouya Tomonori
    • 雑誌名

      ICCSA 2020

      巻: 12253 ページ: 163~176

    • DOI

      10.1007/978-3-030-58814-4_12

    • 査読あり
  • [雑誌論文] Python プログラミング環境における多倍長精度数値計算について2020

    • 著者名/発表者名
      幸谷智紀
    • 雑誌名

      静岡理工科大学紀要

      巻: 28 ページ: 23~31

    • 査読あり / オープンアクセス
  • [学会発表] AVX2を用いたマルチコンポーネント型多倍長精度行列乗算の高速化2021

    • 著者名/発表者名
      幸谷智紀
    • 学会等名
      情報処理学会第178回HPC研究会
  • [学会発表] 3倍精度演算を用いた高速行列乗算2020

    • 著者名/発表者名
      幸谷智紀
    • 学会等名
      日本応用数理学会2020年度年会
  • [学会発表] SIMD命令を用いた3倍精度行列乗算の性能評価2020

    • 著者名/発表者名
      幸谷智紀
    • 学会等名
      情報処理学会第176回HPC研究会 (SWoPP2020)
  • [図書] Python数値計算プログラミング2021

    • 著者名/発表者名
      幸谷 智紀
    • 総ページ数
      272
    • 出版者
      講談社
    • ISBN
      978-4065227350

URL: 

公開日: 2021-12-27  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi