富士通研究所は2015年7月29日、米Intel製CPUを搭載するサーバー上で、ソフトウェアの各処理によって消費される電力を詳細に算出する技術を開発したと発表した。省電力のためのプログラミングを効率化でき、サーバー全体の低消費電力化や、余剰電力の活用によるプログラムの高性能化などに活用できる。
開発したのは、プログラムのモジュール単位などで消費電力を詳細に推定する手法。CPUコアごとに取得可能なクロック数やキャッシュヒット率などの計測値を組み合わせて算出。その値に従ってCPUの消費電力を各コアに配分することで、プログラムのモジュール単位などでの消費電力を把握する。
性能指標に使用するCPUコアごとの計測値を数種類に絞ることで、1ミリ秒単位でデータを取得できるほか、電力情報算出時のオーバーヘッドを全体の1%程度に抑えられ、計測が性能値に与える影響を軽微にした。細粒度のサンプリングにより、ソフトウェアの消費電力を高精度で把握できる。
ソフトウェア開発者が消費電力を削減するチューニングに活用でき、サーバー全体の低消費電力化や、余剰電力を活用して並列度を上げるなどのプログラムの高性能化に応用できる。Intel製CPUの搭載機は、「RAPL(Running Average Power Limit)」という電力制御および計測のための機構を使って、CPU全体の消費電力を把握できる。だが、各CPUコア上で実行されるソフトウェアの消費電力までは分析できなかった。
今後は、同技術の2016年度の実用化を目指し、ソフトウェアによる消費電力削減の実証を進める。
なお、同技術の詳細は、2015年8月4日から大分県別府市で開催される、並列処理関係の学会「SWoPP 2015(Summer United Workshops on Parallel, Distributed and Cooperative Processing 2015)」で発表する。