多要素協調型Approximate Computing基盤の創出に向けた研究開発

コンピュータシステムは今後も継続した性能向上が望まれる一方,半導体集積技術向上の鈍化や電力供給の限界など,さまざまな観点から,性能の向上を達成するためのハードルはより高くなってきています.
この問題を克服し,今後も継続的にコンピュータシステムの性能を向上させるための方法として,””Approximate Computing””という手法が注目を集めています.
これは,アプリケーションの実行結果・演算結果にある程度の誤りが含まれることを許容し(つまり,わざと間違える),その誤差と引き換えに,アプリケーション実行性能の向上や消費電力の削減を行い,トレードオフ最適化を行うものです.
このApproximate Computingをより積極的かつ適切に適用するためには,ハードウェア・システムソフトウェア・アプリケーション等,コンピュータシステムを構成する多くの要素を連携・協調させる必要があります.
和田研究室では,他大学の研究者と連携し,従来,Approximate Computingの適用が困難と思われていた分野のアプリケーションにおいても,この手法を効果的に活用するための手法・フレームワークの実現に向けて研究開発を行なっています.

動的かつ細粒度な演算精度コントロール

多くのアプリケーションは,さまざまな処理を組み合わせて実現されており,各処理ごとにそれぞれの特徴があります.
また,複数のプロセッサで処理を分担してアプリケーションの実行性能を向上させる並列処理を適用した場合,それぞれの処理の流れ(プロセスやスレッド)ごとに負荷が異なる場合があります.
このようなアプリケーション実行時の不均一さ・不均衡を解消しつつApproximate Computingを適用し,実行性能を向上させるためには,より細かく演算制度の切り替えを行う必要があり,そのための技術について検討を行なっています.
(筑波大学計算科学研究センター2021年度学際共同利用プログラム「Load Balancing among Compute Nodes with Dynamic Precision Adjustment」による取り組み)

 

Approximate Computingのためのアプリケーション解析・モデル化技術

Approximate Computingを効果的に適用するためには,対象とするアプリケーション内部で扱われる個々のデータが,それぞれどの程度実行結果に影響を与えるのかを知る必要があります.
コンパイラによるプログラム解析手法を発展させ,アプリケーションの構造を解析することで,その関係を事前に把握する手法について研究開発を行なっています.
(科研費・基盤研究(C):「多要素協調型Approximate Computing実現に向けたHPCアプリケーション解析手法」による取り組み)

Approximate Computingを実現するための通信最適化

 

多数のコンピュータ(ノード)がネットワークで接続されて形成されるHPC(High-Performance Computing)システム上でアプリケーションを実行する際は,演算・計算はもちろんのこと,ノード間の通信も実行性能に大きな影響を与えます.
HPCシステム上で効果的にApproximate Computingを適用するためには,通信時にその対象となるデータの精度を変換するなどの操作が必要かつ有効となるため,それを実現する仕組みについても研究開発を行なっています.
(筑波大学計算科学研究センター2021年度学際共同利用プログラム「Load Balancing among Compute Nodes with Dynamic Precision Adjustment」による取り組み)