Scala测量编译时间

Mic*_*tte 5 performance profiler scala performance-testing

在Scala中,我需要分析同一文件的几个不同版本的编译时间,在运行时将产生相同的输出.

例:

time scalac foo1.scala
Run Code Online (Sandbox Code Playgroud)
  • 0m6.002s

time scalac foo2.scala
Run Code Online (Sandbox Code Playgroud)
  • 0m5.784s

time scalac foo3.scala
Run Code Online (Sandbox Code Playgroud)
  • 0m6.212s

这个项目似乎只是这样做,但我以前从未做过这样的事情,而且说明似乎不是很初学者友好.如果我不能让它工作,我可能会使用,但我认为宏编译基准测试只测量解析和类型检查所需的时间,而不是编译整个文件的时间.

理想情况下,我想知道从第一个编译阶段(解析器)到最后阶段(生成JVM字节码)需要多少次,不一定包括jvm"预热"时间.