研究課題/領域番号 |
23K16856
|
研究種目 |
若手研究
|
配分区分 | 基金 |
審査区分 |
小区分60040:計算機システム関連
|
研究機関 | 北海道大学 |
研究代表者 |
安藤 洸太 北海道大学, 情報科学研究院, 准教授 (20855324)
|
研究期間 (年度) |
2023-04-01 – 2028-03-31
|
研究課題ステータス |
交付 (2023年度)
|
配分額 *注記 |
4,550千円 (直接経費: 3,500千円、間接経費: 1,050千円)
2027年度: 650千円 (直接経費: 500千円、間接経費: 150千円)
2026年度: 910千円 (直接経費: 700千円、間接経費: 210千円)
2025年度: 650千円 (直接経費: 500千円、間接経費: 150千円)
2024年度: 1,040千円 (直接経費: 800千円、間接経費: 240千円)
2023年度: 1,300千円 (直接経費: 1,000千円、間接経費: 300千円)
|
キーワード | 再構成型プロセッサ / 再構成可能プロセッサ / ニューラルネットワーク / メモリシステム / 並列処理 / 動的再構成 |
研究開始時の研究の概要 |
ニューラルネットワーク(NN)を高効率に処理する並列プロセッサが多数提案されているが、近年のNNモデル構造の多様化により、積和演算を行う乗算アキュムレータを並列化したこれまで主流の形式が最適とは限らなくなった。不規則な接続を持つモデル等、NN構造をそのままハードウェア実現する全展開型が優れる場合がある。本研究では、処理ユニット内部の接続やメモリの役割を切り替えることによってデータフローを可変とする再構成型アーキテクチャとそのマッピングアルゴリズムの提案を通し、種々の並列機構に内在する共通の計算構造を明らかにし、並列性を任意に選択可能な新たな並列処理機構の可能性を提示することを目指す。
|
研究実績の概要 |
ニューラルネットワーク(NN)推論処理は規則的データパタンを有する積和演算であるが、モデルごとや単一モデル内であっても層ごとに規則性が異なっており、それらに広く対応する並列プロセッサを実現することが効率化の鍵であった。近年においてNN層構造の多様化は一層進んでおり、従来のように単一構造の積和演算の並列化のみでは全体通しての効率を求めることが難しくなった。そこで、本研究ではこのNN層に内在する並列性を任意に選んで用いることのできる再構成型並列プロセッサを検討してきた。本年度はまず従来の並列乗算アキュムレータ型アーキテクチャを出発点とし、NN層の入力・出力・部分和のそれぞれを逐次処理・並列処理のどの部分にマップするかを、演算器にデータを供給するメモリを起点として整理した結果、各演算機内のローカルメモリと乗算・加算器、レジスタの接続のみを切り替えることで多くの並列性に対応可能なアーキテクチャを考えるに至った。それぞれの並列性(トポロジ・ステーショナリティ)の選択によってメモリ要求バンド幅・平均アクセス間隔・データ再利用性(算術強度)を作為的に制御することが可能となり、NN層とハードウェア制約を考慮した最適制御によりそれぞれの処理フェーズにおいて演算器の占有率向上が期待される。併せて、連続した複数層の処理に際してのメモリ上でのデータ形式の一貫性(単一モデル内での総合効率の向上のために必要)を保ちつつ、制御の複雑性を高めないため、個別のローカルメモリをまとめて制御可能なデータパタンを見出した。この結果をまとめ、現在国内外の発表を準備中である。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
レジスタ接続を可変とすることによる可変並列性アーキテクチャの検討が初年度の計画であった。これに関して、1層分の処理に関してのみ複数のデータフローに対応できることをシミュレーションで確認しており、順調に進行しているといえる。さらに、これが連続処理で一貫性を保つ(これはニューラルネットワークの単一モデル内でトポロジが異なることに対応するための必要条件である)方法を提唱中であるため、可変並列性アーキテクチャの一提案としては想定以上に進展したといえる。一方、これを実際に任意のモデルで使用するためのソフトウェアスタック(現状は制御パラメータを手動計算した)、スパース係数・スキップコネクション・アテンション等の近代的NNの構成要素への対応、ならびにレジスタ可変以外の方法による可変並列性・動的再構成技術については未完であるため、この評価とした。
|
今後の研究の推進方策 |
実際のニューラルネットワーク(NN)のアプリケーションを想定したハードウェア実装・検討を進め、性能評価を行う。またPyTorch等のNN学習フレームワークの学習結果やONNXなどの共通形式を入力として自動的に最適な並列性とその制御パラメータを設定するコンバータ・マッピングアルゴリズムを含めたソフトウェアスタックの検討を開始する。層ごと・処理ごとに異なる要求バンド幅等に応じてハードウェア資源を配当するアルゴリズムの確立には、これまでに得られている並列アーキテクチャと典型的NN層構造の理論的定式化が必要である。先述の通り異なる並列性選択の間でデータ構造の一貫性を保つ検討が完成しつつあるため、次段階として異なる並列性を含む複数層を連続動作させるための動的再構成アーキテクチャへ発展させる。 これと並行し、スパース係数・アテンション等の近代的NN構成要素に対応するためのハードウェア必要条件を探索する。ここには制御の容易性と実効効率(ハードウェア占有率)のトレードオフが存在し、一般に複雑な制御が必要な部分を逐次処理に追いやって並列プロセッサの占有率を保つ方策が考えられる。これは並列性・トポロジをレジスタ・メモリ接続の動的に制御する本方式と相性が良いと考えられるが、ここまで検討したレジスタ接続可変方式以外の可変並列性アーキテクチャの可能性も除外しない。
|