Skip to content
Andrey Akinshin edited this page Sep 19, 2016 · 38 revisions

0.10.0 (soon)

  • Job and Column API refactoring (see new documentation)
  • Measurement engine improvements
  • Horology enhancement (see TimeInterval and Frequency)
  • Introduced RankColumn which is based on WelchTTest (see 157aabc3)
  • JsonExporters refactoring (see the Exporters/Json section in the documentation)
    • Renamed JsonExporters classed and attributes
    • JsonExporters with custom settings
    • JsonExporters now includes information about the target type namespace (see #246).
  • Add JetBrains.Annotations (see #253)
  • RFC 4180 support in CSV exporters (see #241)

Milestone: v0.9.10

0.9.9

  • Attribute config style (see #166)
  • Online documentation (see #219)
  • Mono LLVM support (see #226)
  • Async method support (see #236)
  • NuGet packages and repo layout restructuring (see #225, #228)
  • [Cleanup] attribute (see #215)
  • New statistics columns: Skewness, Kurtosis, WelchTTestPValue, Improved math for the Scaled column
  • Now current default branch is master
  • Minor improvements and bug fixes

Date: August 18, 2016

Milestone: v0.9.9

NuGet Packages:

Online Documentation: https://perfdotnet.github.io/BenchmarkDotNet/

0.9.8

  • CoreCLR RTM support (see #216). Breaking change: we have dropped dnx451 and dnxcore50 support.
  • Migration from MSBuild to Roslyn, which supports Mono on Linux and MacOS (see #149). Breaking change: we have dropped .NET 4.0 support.
  • Ability to manage GC mode: turn on/off the Server/Concurrent GC modes, extend to CPU groups, set gcAllowVeryLargeObjects and avoid BenchmarkDotNet from forcing GC.Collect (see #188, #76 and #211)
  • Support CopyToOutput (see #212). Now you can use native dependencies as well as custom files.
  • Copying custom settings from app.config (see #108). It means we support assembly binding redirects as well as custom connection strings etc.
  • AsciiDocExporter (see #169)
  • Framework setting in Job has been removed (see #194)
  • Minor bugfixes and improvements

Milestone: v0.9.8

Date: July 07, 2016

NuGet Packages:

0.9.7

  • .NET Core RC2 support (see #187)
  • Bugfixes

Milestone: v0.9.7

Date: May 29, 2016

NuGet Packages:

0.9.6

  • Added Percentiles (see #164)
  • Added support for Json export (see #84)
  • Bugfixes

Milestone: v0.9.6

Date: May 11, 2016

NuGet Packages:


0.9.5

  • Added validators, JitOptimizationsValidator detects all non-optimzied dlls that were referenced #134
  • Strong naming #101
  • Add IOrderProvider #107
  • Putting all the generated artifacts in a separate folder: ./BenchmarkDotNet.Artifacts/results and ./BenchmarkDotNet.Artifacts/bin #94
  • Printing dotnet cli version for .NET Core and Dnx451, informing user when not installed. Closed #128
  • Supporting assembly redirects #67
  • Changed used msbuild version: 12 for .NET 4.5 (VS 2013), 14 for .NET 4.6 (VS 2015). Closed #132 and #137
  • Switched to new ‘dotnet’ target framework monikers (dotnet5.4 instead of dnxcore50), why
  • dnx452, dnx46, net462 support added
  • Executing single Benchmark for multiple Runtimes also with Diagnoser attached (see #117)
  • Misc minor changes

Milestone: v0.9.5

Date: May 02, 2016

NuGet Packages:


0.9.4

  • Improved messages about error in benchmarks, see #104
  • Natural sort order, see #92, #95, #97
  • Improved double/float/decimal/enum support for Params, see #96, #105, #116
  • Now environment info includes information about HardwareTimerKind and JitModules
  • Added DryConfig
  • Improved export performance, closed #119, merged #124
  • Better cmd-line discoverability (see #78), e.g. run Benchmark.exe --help and some useful information will be printed
  • Supporting all kinds of references for generated project (exact version, custom paths, GAC, sub-folders, dependent assemblies not copied), closed #41, #49, #72, #123, merged #125
  • Friendliness to LinqPad restored, closed #66, merged #125

Milestone: v0.9.4

Date: March 24, 2016

NuGet Packages:


0.9.3

  • CoreCLR support (Closed #52, Merged #113)

Milestone: v0.9.3

Date: March 13, 2016

NuGet Packages:


0.9.2

  • Dnx451 support (Closed #51, Merged #87)

Milestone: v0.9.2

Date: March 5, 2016

NuGet Packages:


0.9.1

Date: February 10, 2016

NuGet Packages:


0.9.0

  • New API
  • Autodetermination of amount iteration for warmup/target idle/main iterations, duration of iteration, amount of CLR launches.

Date: February 9, 2016

NuGet Packages:


0.8.2

  • Changes in the Summary table
    • Summary table now supports ResultExtenders that can add new column to the table
    • Now we use StandardError (aka Error) as the main accuracy metric
    • Columns op/s, StdDev are disabled by default (you can add it via ResultExtenders)
  • Statistic improvements, now you have detailed statistic in the console log like follows:
Mean = 118.5298 us, StdError = 1.2863 us (N = 30, StdDev = 7.0454 us)
Min = 109.1602 us, Median = 117.1794 us, Max = 132.5764 us
IQR = 10.1244 us, LowerFence = 98.0834 us, UpperFence = 138.5810 us
ConfidenceInterval = [116.0086 us; 121.0510 us] (CI 95%)
  • Added the Baseline feature, see #64
  • Export improvements, now you have files <BenchmarkName>-report-github.md, <BenchmarkName>-report-stackoverflow.md for easy publishing results on GitHub and StackOverflow.
  • Basic plotting. Added new BenchmarkRPlotExporter that creates BuildPlots.R in the bin directory. It is an R script that generates boxplot and barplot for your benchmarks (you should have installed R with defined R_HOME environment variable)
  • Updated environment info
    • Added Stopwatch Frequency and Resolution
    • Split common benchmark properties (like Mode, Platform, Runtime) in several lines (3 properties per line)
  • Log improvements: add total time, statistics, list of exported files
  • Bug fixes

Date: January 19, 2016

NuGet Packages:

Clone this wiki locally