【问题标题】:Using jRAPL in JUnit unit test在 JUnit 单元测试中使用 jRAPL
【发布时间】:2016-11-30 12:12:58
【问题描述】:

有什么方法可以在单元测试中使用 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?

最好的问候。

【问题讨论】:

    标签: java eclipse junit4 energy


    【解决方案1】:

    查看代码后,以下可能适用于给定方法,只要查询花费的时间足够长。

    @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,目前正在开发中。它可以给出功率值,但还没有提供直接的方法来校准它用来计算功耗的模型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2015-07-08
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2013-07-11
      相关资源
      最近更新 更多