Skip to main content

Fujitsu

English | 日本語

China

本技术介绍参考了以下链接
English

2016年7月5日

软件运行功耗的可视化技术
以CPU内核单位为指标实现高能效的编程

株式会社富士通研究所(注1)(以下简称,富士通研究所)开发出了能够计算在服务器的CPU上运行各软件时所消耗的能量,并实现高能效编程的技术。目前,在配置CPU的Intel服务器上,可以通过功率控制机制测量CPU的整体功耗,但不能测量在各个CPU内核上运行的软件功耗,从而也难以采取基于软件的方法降低功耗。

开发背景

随着超级计算机和数据中心系统规模的扩大以及处理量的增加,耗电量也在增加。例如 ,据说顶级的超级计算机的耗电大约是18MW(兆瓦)左右,另据日本总务省的报告(注2)显示,日本数据中心的耗电量非常庞大,年均达77.2亿kWh(千瓦时),因此整体功耗都有待降低。

课题

为了降低功耗,除了通过传统的降低硬件功耗的方法外,还可以通过降低服务器上运行的程序功耗来实现。要实现降低功耗的编程,首先需要了解目前软件所消耗的功率。配置有CPU的Intel服务器采用了控制功率的RAPL(注3)机制,可以测量CPU整体的功耗,但不能测量各个CPU内核上运行软件的功耗,所以很难获得软件功耗的细节。

开发的技术

本次开发出了在配置CPU的Intel服务器上推算软件详细功耗的解析技术(图1)。

开发的技术具有以下特征:

  1. 基于性能指标功率分配的软件详细功耗解析

    在每个CPU内核上能测量到时钟数和高速缓冲命中率,富士通研究所将它们进行组合,提出了与功耗相关度高的性能指标。根据每个CPU内核的性能指标,将CPU功耗分配给每个内核,即可获得每个程序模块单位的详细功耗。

  2. 负载较小的功率信息计算

    将用于性能指标的每个CPU内核测量值缩小为有限的类型,并可以按毫秒级采集。另外,功耗计算的负荷只占总负荷的1%左右,因此测量不会显著影响性能。而且通过细粒度采样还能够高精度地获得软件功耗。

基于性能指标功耗分配的软件功耗解析

图1 基于性能指标功耗分配的软件功耗解析

效果

本次开发出的技术有望帮助软件开发人员优化他们的软件,降低功耗(省电编程),同时,通过减少服务器的整体功耗,以及利用空闲功耗,可以提高软件运行的并行度等,实现程序的高性能化。

今后

富士通研究所为了使该技术在2016年能够投入实际应用,目前正在进行通过软件降低功耗的验证。另外,为了实现数据中心的省电化,正研究将该技术应用于富士通数据中心,以便对功耗做进一步的详细分析。


注释

注1 株式会社富士通研究所:
社长 佐佐木 繁
总公司所在地 日本神奈川县川崎市
注2 总务省报告:
参考文献来源于总务省于2008年4月发布的《关于全面应对地球温暖化问题的ICT政策研究会报告》
注3 PAPL:
Running Average Power Limit的简称。具有Intel制式CPU的功耗控制以及测量的结构