1+ using BenchmarkDotNet . Columns ;
2+ using BenchmarkDotNet . Configs ;
3+ using BenchmarkDotNet . Diagnosers ;
4+ using BenchmarkDotNet . Exporters ;
5+ using BenchmarkDotNet . Exporters . Csv ;
6+ using BenchmarkDotNet . Jobs ;
7+ using BenchmarkDotNet . Loggers ;
8+ using Perfolizer . Models ;
9+
10+ namespace Benchmark . Benchmarks
11+ {
12+ public class Config : ManualConfig
13+ {
14+ public Config ( )
15+ {
16+ AddLogger ( ConsoleLogger . Default ) ;
17+
18+ AddExporter ( CsvExporter . Default ) ;
19+ AddExporter ( MarkdownExporter . GitHub ) ;
20+ AddExporter ( HtmlExporter . Default ) ;
21+
22+ AddDiagnoser ( MemoryDiagnoser . Default ) ;
23+ AddColumn ( TargetMethodColumn . Method ) ;
24+
25+ AddColumn ( JobCharacteristicColumn . AllColumns ) ;
26+ AddColumnProvider ( DefaultColumnProviders . Params ) ;
27+ AddColumn ( StatisticColumn . Mean ) ;
28+
29+ AddColumn ( StatisticColumn . StdDev ) ;
30+ AddColumn ( StatisticColumn . Error ) ;
31+
32+ AddColumn ( BaselineRatioColumn . RatioMean ) ;
33+ AddColumnProvider ( DefaultColumnProviders . Metrics ) ;
34+
35+ string [ ] targetVersions = [
36+ "7.4.0" ,
37+ "9.0.0-pre01" ,
38+ ] ;
39+
40+ foreach ( var version in targetVersions )
41+ {
42+ AddJob ( Job . ShortRun
43+ . WithLaunchCount ( 1 )
44+ . WithWarmupCount ( 2 )
45+ . WithIterationCount ( 10 )
46+ . WithMsBuildArguments ( $ "/p:SciVersion={ version } ")
47+ . WithId ( $ "v{ version } ")
48+ ) ;
49+ }
50+
51+ Options |= ConfigOptions . JoinSummary ;
52+ }
53+ }
54+ }
0 commit comments