有某种方法可以使用JRAPL或类似工具来测量单位测试内部的能量消耗?
类似:
public class FooTest{
@Before
public void startUp(){
double beginning = EnergyCheck.statCheck();
}
@After
public void tearDown(){
double end = EnergyCheck.statCheck();
System.out.println(end - beginning);
}
@Test
public void FooTest(){
//TODO
}
}
使用Eclipse IDE,我应该采用哪种配置来这样使用JRAPL?
最好的问候。
看过代码,只要查询花费了足够长的时间,以下内容可能适用于给定方法。
@Test
public void FooTest(){
double beginning = EnergyCheck.statCheck();
//TODO
double end = EnergyCheck.statCheck();
System.out.println(end - beginning);enter code here
}
当执行持续时间很小时,使用RAPL存在一些问题。请参阅:http://os.inf.tu-dresden.de/papers_ps/greenmetrics2012-rapl.pdf
您需要的配置是在Linux上运行,指令表示您应该使用命令:
sudo modprobe msr
启用用于监视基于RAPL的说明的内核模块。
另一种工具是:https://github.com/tango-project/code-optimiser-plugin当前正在开发中。它可以提供功率值,但尚未提供直接的方法来校准其用于计算功耗的模型。