2014 Fiscal Year Annual Research Report
コア数と動作周波数の動的変更によるメニーコア・プロセッサ性能向上手法の提案
Project/Area Number |
13J02888
|
Research Institution | Kyushu University |
Principal Investigator |
今村 智史 九州大学, システム情報科学府, 特別研究員(DC1)
|
Project Period (FY) |
2013-04-01 – 2016-03-31
|
Keywords | メニーコアサーバシステム / パワーキャッピング / NUMA アーキテクチャ / 並列アプリケーション / DVFS / スレッドアロケーション |
Outline of Annual Research Achievements |
本研究では、実行対象である並列アプリケーションの特性に応じて最適な動作周波数とスレッド配置を選択することで、消費電力制約下においてそのアプリケーション実行時のサーバ性能を最大化する手法を提案している。去年度には、アプリケーション実行中にサンプリングしたデータを基に性能と消費電力を予測する統計モデルを作成した。本年度の上半期には、この統計モデルを使用して最適な動作周波数とスレッド配置を選択する手法をユーザレベルのランタイムシステムとして実装した。具体的には、動作周波数とスレッド配置の全組み合わせの性能と消費電力を統計モデルを用いて予測し、ユーザによって設定された消費電力下で性能を最大化すると予想される組み合わせを選択する。この選択を一定時間ごとに行うことで、実行アプリケーションの動的な振る舞いの変化に応じて動作周波数とスレッド配置を制御できる。
ランタイムシステムの実装後、64 コアを搭載した 8 ノード NUMA システムにおいて提案手法の性能と消費電力を評価した。12 個のベンチマーク・アプリケーションを使用し、電力制約下でのアプリケーション実行を動作周波数のみの制御で実現する従来手法と比較した結果、最大で 67% の性能向上を達成した。この結果から、NUMA システムにおいて動作周波数とスレッド配置の同時最適化を行うことの有効性を示すことができた。また、下半期には、上記の研究内容に関して論文を執筆し、コンピュータ設計に関する著名な国際会議である International Conference on Computer Design 2014 へ投稿した。査読の結果無事採録され、去年の10月に韓国のソウルにて発表を行った。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
昨年度に引き続き、メニーコア・サーバシステムにおける「消費電力制約下での並列アプリケーション実行性能最大化手法」の提案と実装・評価を行った。具体的には、NUMA(Non-Uniform Memory Access)アーキテクチャにおいて、プロセッサの動作周波数とスレッド配置を最適化するアルゴリズムを考案し、実機上にてユーザレベルのランタイムシステムとして実装している。定量的評価を行った結果、プロセッサの動作周波数のみを最適化する従来手法と比較して最大 67% の性能向上を達成できることを示した。これは同一ハードウェアにおいて、計算性能と記憶性能を同時に考慮することの重要性を明かにしたものであり、それぞれ個別最適化を主な手法としてきた従来の研究に対して優位なものである。なお、本研究の成果は、コンピュータ設計に関する著名な国際会議である International Conference on Computer Design 2014 にて発表している。また、次年度の研究活動を加速すべく、NUMAアーキテクチャにおける性能向上手法を新たに検討中である。
|
Strategy for Future Research Activity |
近年のデータセンタ等で使用されるサーバシステムには、高いスケーラビリティを達成するために NUMA (Non-Uniform Memory Access) アーキテクチャがしばしば採用される。これは、メインメモリを共有する複数のプロセッサチップとプロセッサチップと同じ数に分割されたメインメモリの組(この組はノードと呼ばれる)がインターコネクトで接続されたアーキテクチャである。このアーキテクチャにおいては、並列アプリケーションのスレッドやそのスレッドがアクセスするデータをどのノードに配置するかによって性能が大きく左右される。そのため、サーバシステムの性能最大化を達成するためには、スレッドとデータの配置を最適化する必要がある。
そこで今後の研究では、NUMA アーキテクチャにおいて並列アプリケーションを実行する際に、スレッドとデータの配置を最適化することでサーバシステムの性能を最大化する手法の検討を計画している。スレッドやデータの管理は一般的にオペレーティング・システム(OS)が管理するため、多くの既存研究では、OS を改良することでスレッドとデータ配置の最適化が実現されている。しかしながら、NUMA アーキテクチャにおける並列アプリケーションの実行性能は、ハードウェアキャッシュや DRAM で構成されているメインメモリの row-buffer 等のハードウェアによって大きく影響を受ける。そこで、本研究では OS とハードウェアを協調動作させることで、どちらか一方のみの最適化に比べさらなる性能の向上を狙う。
|
Research Products
(1 results)