Skip to content

Commit

Permalink
Added documentation source and output based on readme.md
Browse files Browse the repository at this point in the history
The documentation is created from the readme.md file and uses docnet
v0.13 or higher to generate its output. Documentation\UserGuideSource is
the folder which contains the markdown. Run generatehtml.cmd which will
generate html files from the md files into documentation\userguidehtml.
I committed the html output as well so there's an initial batch.
Configure where the files are generated in
documentation\userguidesource\docnet.json as well as other things
related to the html generation process.

For #219
  • Loading branch information
FransBouma committed Aug 6, 2016
1 parent 3ab5784 commit d1db7de
Show file tree
Hide file tree
Showing 155 changed files with 14,563 additions and 0 deletions.
178 changes: 178 additions & 0 deletions documentation/UserGuideHtml/Advanced/Baseline.htm
@@ -0,0 +1,178 @@
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!-->
<html class="no-js" lang="en">
<!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Baseline - BenchmarkDotNet Documentation</title>
<link rel="shortcut icon" href="../favicon.ico">
<link rel="stylesheet" href="../css/theme.css" type="text/css" />
<link rel="stylesheet" href="../css/theme_colors.css" type="text/css" />
<link rel="stylesheet" href="../css/styles/vs.css">
<link rel="stylesheet" href="../css/font-awesome.4.5.0.min.css">
</head>
<body role="document">
<div class="grid-for-nav">
<nav data-toggle="nav-shift" class="nav-side stickynav">
<div class="side-nav-search">
<a href="../index.htm"><i class="fa fa-home"></i> BenchmarkDotNet Documentation</a>
<div role="search">
<form id="search-form" class="form" action="../Docnet_search.htm" method="get">
<input type="text" name="q" placeholder="Search docs" />
</form>
</div>
</div>
<div class="menu menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul>
<li class="tocentry"><a href="../index.htm">Home</a>
</li>

<li class="tocentry"><a href="../GettingStarted.htm">Getting Started</a>
</li>
<li class="tocentry">
<span class="navigationgroup"><i class="fa fa-caret-right"></i> <a href="../Configuration.htm">Configuration</a></span>
</li>
<li class="tocentry"><a href="../HowToRun.htm">How to run your benchmarks</a>
</li>
<li class="tocentry">
<ul>
<li><span class="navigationgroup"><i class="fa fa-caret-down"></i> <a href="../Advancedfeatures.htm">Advanced features</a></span></li>
<li class="tocentry"><a href="../Advanced/Params.htm">Params</a>
</li>
<li class="tocentry"><a href="../Advanced/Setup.htm">Setup</a>
</li>
<li class="tocentry current"><a class="current" href="../Advanced/Baseline.htm">Baseline</a>
<ul class="currentrelative">
<li class="tocentry"><a href="#example">Example</a></li>
</ul>
<li class="tocentry"><a href="../Advanced/Percentiles.htm">Percentiles</a>
</li>

</ul>
</li>
<li class="tocentry"><a href="../HowItWorks.htm">How it works</a>
</li>
<li class="tocentry"><a href="../RulesOfBenchmarking.htm">Rules of benchmarking</a>
</li>
<li class="tocentry"><a href="../faq.htm">FAQ</a>
</li>
<li class="tocentry"><a href="../Team.htm">Team</a>
</li>
<li class="tocentry">
<span class="navigationgroup"><i class="fa fa-caret-right"></i> <a href="../Contributing.htm">Contributing</a></span>
</li>
<li class="tocentry"><a href="../license.htm">License</a>
</li>
</ul>
<div class="toc-footer">
<span class="text-small">
<hr/>
<a href="https://github.com/FransBouma/DocNet" target="_blank">Made with <i class="fa fa-github"></i> DocNet</a>
</span>
</div>
</div>
&nbsp;
</nav>
<section data-toggle="nav-shift" class="nav-content-wrap">
<nav class="nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="nav-top" class="fa fa-bars"></i>
<a href="../index.htm">BenchmarkDotNet Documentation</a>
</nav>
<div class="nav-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<div class="breadcrumbs">
<ul><li><a href="../index.htm">Home</a></li> / <li><a href="../Advancedfeatures.htm">Advanced features</a></li> / <li><a href="../Advanced/Baseline.htm">Baseline</a></li></ul>

</div>
<hr />
</div>
<div role="main">
<div class="section">
<h1 id="baseline">Baseline<a class="headerlink" href="#baseline" title="Permalink to this headline"><i class="fa fa-link" aria-hidden="true"></i></a></h1>
<p>In order to scale your results you need to mark one of your benchmark methods as a baseline. Only one method in class can have <code>Baseline = true</code> applied.</p>
<h2 id="example">Example<a class="headerlink" href="#example" title="Permalink to this headline"><i class="fa fa-link" aria-hidden="true"></i></a></h2>
<pre><code class="cs">public class Sleeps
{
[Benchmark]
public void Time50()
{
Thread.Sleep(50);
}

[Benchmark(Baseline = true)]
public void Time100()
{
Thread.Sleep(100);
}

[Benchmark]
public void Time150()
{
Thread.Sleep(150);
}
}
</code></pre>

<p>As a result, you will have additional column in the summary table:</p>
<pre><code class="ini">BenchmarkDotNet=v0.9.0.0
OS=Microsoft Windows NT 6.2.9200.0
Processor=Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz, ProcessorCount=8
Frequency=2728067 ticks, Resolution=366.5599 ns
HostCLR=MS.NET 4.0.30319.42000, Arch=64-bit RELEASE [RyuJIT]

Type=Sleeps Mode=Throughput
</code></pre>

<table class="table table-bordered-all table-responsive">
<thead>
<tr>
<th>Method</th>
<th>Median</th>
<th>StdDev</th>
<th>Scaled</th>
</tr>
</thead>
<tbody>
<tr>
<td>Time100</td>
<td>100.2640 ms</td>
<td>0.1238 ms</td>
<td>1.00</td>
</tr>
<tr>
<td>Time150</td>
<td>150.2093 ms</td>
<td>0.1034 ms</td>
<td>1.50</td>
</tr>
<tr>
<td>Time50</td>
<td>50.2509 ms</td>
<td>0.1153 ms</td>
<td>0.50</td>
</tr>
</tbody>
</table>

</div>
</div>
<footer>
<hr />
<div role="contentinfo">
BenchmarkDotNet Documentation. &copy;2013-2016. <a href='https://github.com/PerfDotNet/BenchmarkDotNet' target='_blank'>GitHub</a> | <a href='https://www.nuget.org/packages/BenchmarkDotNet/' target='_blank'>NuGet</a>.
</div>
</footer>
</div>
</section>
</div>
<script src="../js/jquery-2.1.1.min.js"></script>
<script src="../js/modernizr-2.8.3.min.js"></script>
<script src="../js/highlight.pack.js"></script>
<script src="../js/theme.js"></script>

</body>
</html>
174 changes: 174 additions & 0 deletions documentation/UserGuideHtml/Advanced/Params.htm
@@ -0,0 +1,174 @@
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!-->
<html class="no-js" lang="en">
<!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Params - BenchmarkDotNet Documentation</title>
<link rel="shortcut icon" href="../favicon.ico">
<link rel="stylesheet" href="../css/theme.css" type="text/css" />
<link rel="stylesheet" href="../css/theme_colors.css" type="text/css" />
<link rel="stylesheet" href="../css/styles/vs.css">
<link rel="stylesheet" href="../css/font-awesome.4.5.0.min.css">
</head>
<body role="document">
<div class="grid-for-nav">
<nav data-toggle="nav-shift" class="nav-side stickynav">
<div class="side-nav-search">
<a href="../index.htm"><i class="fa fa-home"></i> BenchmarkDotNet Documentation</a>
<div role="search">
<form id="search-form" class="form" action="../Docnet_search.htm" method="get">
<input type="text" name="q" placeholder="Search docs" />
</form>
</div>
</div>
<div class="menu menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul>
<li class="tocentry"><a href="../index.htm">Home</a>
</li>

<li class="tocentry"><a href="../GettingStarted.htm">Getting Started</a>
</li>
<li class="tocentry">
<span class="navigationgroup"><i class="fa fa-caret-right"></i> <a href="../Configuration.htm">Configuration</a></span>
</li>
<li class="tocentry"><a href="../HowToRun.htm">How to run your benchmarks</a>
</li>
<li class="tocentry">
<ul>
<li><span class="navigationgroup"><i class="fa fa-caret-down"></i> <a href="../Advancedfeatures.htm">Advanced features</a></span></li>
<li class="tocentry current"><a class="current" href="../Advanced/Params.htm">Params</a>
<ul class="currentrelative">
<li class="tocentry"><a href="#example">Example</a></li>
</ul>
<li class="tocentry"><a href="../Advanced/Setup.htm">Setup</a>
</li>
<li class="tocentry"><a href="../Advanced/Baseline.htm">Baseline</a>
</li>
<li class="tocentry"><a href="../Advanced/Percentiles.htm">Percentiles</a>
</li>

</ul>
</li>
<li class="tocentry"><a href="../HowItWorks.htm">How it works</a>
</li>
<li class="tocentry"><a href="../RulesOfBenchmarking.htm">Rules of benchmarking</a>
</li>
<li class="tocentry"><a href="../faq.htm">FAQ</a>
</li>
<li class="tocentry"><a href="../Team.htm">Team</a>
</li>
<li class="tocentry">
<span class="navigationgroup"><i class="fa fa-caret-right"></i> <a href="../Contributing.htm">Contributing</a></span>
</li>
<li class="tocentry"><a href="../license.htm">License</a>
</li>
</ul>
<div class="toc-footer">
<span class="text-small">
<hr/>
<a href="https://github.com/FransBouma/DocNet" target="_blank">Made with <i class="fa fa-github"></i> DocNet</a>
</span>
</div>
</div>
&nbsp;
</nav>
<section data-toggle="nav-shift" class="nav-content-wrap">
<nav class="nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="nav-top" class="fa fa-bars"></i>
<a href="../index.htm">BenchmarkDotNet Documentation</a>
</nav>
<div class="nav-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<div class="breadcrumbs">
<ul><li><a href="../index.htm">Home</a></li> / <li><a href="../Advancedfeatures.htm">Advanced features</a></li> / <li><a href="../Advanced/Params.htm">Params</a></li></ul>

</div>
<hr />
</div>
<div role="main">
<div class="section">
<h1 id="params">Params<a class="headerlink" href="#params" title="Permalink to this headline"><i class="fa fa-link" aria-hidden="true"></i></a></h1>
<p>You can mark one or several fields or properties in your class by the <code>Params</code> attribute. In this attribute, you can specify set of values.
As a result, you will get results for each combination of params values.</p>
<h2 id="example">Example<a class="headerlink" href="#example" title="Permalink to this headline"><i class="fa fa-link" aria-hidden="true"></i></a></h2>
<pre><code class="cs">public class IntroParams
{
[Params(100, 200)]
public int A { get; set; }

[Params(10, 20)]
public int B { get; set; }

[Benchmark]
public void Benchmark()
{
Thread.Sleep(A + B + 5);
}
}
</code></pre>

<table class="table table-bordered-all table-responsive">
<thead>
<tr>
<th>Method</th>
<th>Median</th>
<th>StdDev</th>
<th>A</th>
<th>B</th>
</tr>
</thead>
<tbody>
<tr>
<td>Benchmark</td>
<td>115.3325 ms</td>
<td>0.0242 ms</td>
<td>100</td>
<td>10</td>
</tr>
<tr>
<td>Benchmark</td>
<td>125.3282 ms</td>
<td>0.0245 ms</td>
<td>100</td>
<td>20</td>
</tr>
<tr>
<td>Benchmark</td>
<td>215.3024 ms</td>
<td>0.0375 ms</td>
<td>200</td>
<td>10</td>
</tr>
<tr>
<td>Benchmark</td>
<td>225.2710 ms</td>
<td>0.0434 ms</td>
<td>200</td>
<td>20</td>
</tr>
</tbody>
</table>

</div>
</div>
<footer>
<hr />
<div role="contentinfo">
BenchmarkDotNet Documentation. &copy;2013-2016. <a href='https://github.com/PerfDotNet/BenchmarkDotNet' target='_blank'>GitHub</a> | <a href='https://www.nuget.org/packages/BenchmarkDotNet/' target='_blank'>NuGet</a>.
</div>
</footer>
</div>
</section>
</div>
<script src="../js/jquery-2.1.1.min.js"></script>
<script src="../js/modernizr-2.8.3.min.js"></script>
<script src="../js/highlight.pack.js"></script>
<script src="../js/theme.js"></script>

</body>
</html>

0 comments on commit d1db7de

Please sign in to comment.