抄録/ポイント:
抄録/ポイント
文献の概要を数百字程度の日本語でまとめたものです。
部分表示の続きは、JDreamⅢ(有料)でご覧頂けます。
J-GLOBALでは書誌(タイトル、著者名等)登載から半年以上経過後に表示されますが、医療系文献の場合はMyJ-GLOBALでのログインが必要です。
スパース行列ベクトル乗算(SpMV)操作は,様々な科学および工学応用において一般的に使用される。SpMV動作の性能は,しばしばマトリックスにおける規則性パターンの利用に依存する。含まれる不規則なメモリアクセスパターンから生じるメモリ帯域幅ボトルネックを最小化するために,様々な表現と最適化技術が提案されている。最近の表現技術の中で,テンソル分解は非常に大きいがスパースな行列に使用される一般的なものである。スパーステンソル分解の後,新しい表現は間接アクセスを含み,マルチコアに対して最適化し,GPUsのような大規模並列アーキテクチャに対してさらに要求する。計算神経科学アルゴリズムはしばしばスパースデータセットを含み,一方,それらの上で長時間計算を行う。線形Fascicle評価(LiFE)アプリケーションは,脳連結性グラフを剪定するために使用される一般的な神経科学アルゴリズムである。ここで用いたデータセットは,Sparse Tucker分解(STD)-aが広く用いられているテンソル分解法を含む。この分解を用いて,多重間接アレイ基準に導き,マルチコアと多くのコアシステムの両方で最適化するのが非常に困難になった。LiFEアルゴリズムの最近の実装は,そのSpMV操作が性能とスケーリングのための重要なボトルネックであることを示した。本研究では,まず,STD技術を用いて分解されたLiFEのSpMV演算を最適化するためのターゲット独立最適化を提案し,次にCPUとGPUシステムのためのターゲット依存最適化を行った。ターゲットに依存しない技術を含む。(1)標準コンパイラ最適化は,不必要で冗長な計算,(2)間接アレイアクセスの影響を最小化するためのデータ再構成技術,および(3)低同期オーバヘッドで粗粒並列性を得るためにスレッド間の計算を分割する方法,の方法であった。次に,著者らは以下のようなCPUのための目標依存最適化を提示した。(1)効率的な同期フリースレッドマッピングと(2)BLAS利用はハードウェア固有速度を利用する。その後,著者らは,縦糸,スレッドブロック,および格子の粒度でスレッドを最適に写像するための様々なGPU特異的最適化を提示する。さらに,このアルゴリズム用に開発したCPUベース最適化を自動化するために,Pythonに埋め込まれたPolyMageドメイン固有言語を拡張した。高度に最適化され並列化したCPU実装は,16コアIntelキセノン銀(Skyakeベース)システム上で実行しているナイーブ並列CPU実装に対して6.3×の高速化を得る。さらに,この最適化GPU実装は,NVIDIAのGeForce RTX 2080 Ti GPU上の基準最適化GPUコードバージョンの5.2×の高速化と,著者らの高度に最適化され並列化したCPU実装の9.7×の高速化を達成した。Please refer to this article’s citation page on the publisher website for specific rights information. Translated from English into Japanese by JST.【JST・京大機械翻訳】