BenchmarkDotNet - Jobs

BenchmarkDotNet 的 Job 是用來描述 benchmark 是怎樣運行的。


內建的 Job 有:

  • DryJob
  • ClrJob
  • CoreJob
  • MonoJob
  • LegacyJitX86Job
  • LegacyJitX64
  • RyuJitX64Job
  • SimpleJob
  • LongRunJob
  • MediumRunJob
  • ShortRunJob
  • VeryLongRunJob


Job 在使用上只要透過 Attribute 的方式加到要 benchmark 的類別即可。像是這邊想要跑短一點的 benchmark 就可以為 benchmark 類別加掛 ShortRunJobAttribute:

1
2
3
4
5
6
7
using BenchmarkDotNet.Attributes; 
using BenchmarkDotNet.Attributes.Jobs;
...
[ShortRunJob]
public class ProgramBenchmarker {
...
}


運行結果如下: