Skip to content

Instantly share code, notes, and snippets.

@lsmithmier
Created November 29, 2019 19:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lsmithmier/030db852a99e7e0e31610cc90b579d78 to your computer and use it in GitHub Desktop.
Save lsmithmier/030db852a99e7e0e31610cc90b579d78 to your computer and use it in GitHub Desktop.
C:\Users\larry\source\repos\StringsVSStringBuilder\StringsVSStringBuilder\bin\Release\netcoreapp3.0>dotnet StringsVSStringBuilder.dll
// Validating benchmarks:
// ***** BenchmarkRunner: Start *****
// ***** Found 2 benchmark(s) in total *****
// ***** Building 1 exe(s) in Parallel: Start *****
// start dotnet restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 in C:\Users\larry\source\repos\StringsVSStringBuilder\StringsVSStringBuilder\bin\Release\netcoreapp3.0\e5bf7e3c-2770-46c2-a2d4-1950815a271d
// command took 3.4s and exited with 0
// start dotnet build -c Release --no-restore /p:UseSharedCompilation=false /p:BuildInParallel=false /m:1 in C:\Users\larry\source\repos\StringsVSStringBuilder\StringsVSStringBuilder\bin\Release\netcoreapp3.0\e5bf7e3c-2770-46c2-a2d4-1950815a271d
// command took 4.84s and exited with 0
// ***** Done, took 00:00:08 (8.45 sec) *****
// Found 2 benchmarks:
// StringVSStringBuilderTest.'Concat method': DefaultJob
// StringVSStringBuilderTest.'StringBuilder method': DefaultJob
// **************************
// Benchmark: StringVSStringBuilderTest.'Concat method': DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet "e5bf7e3c-2770-46c2-a2d4-1950815a271d.dll" --benchmarkName "StringsVSStringBuilder.StringVSStringBuilderTest.CallConcatMethod" --job "Default" --benchmarkId 0 in C:\Users\larry\source\repos\StringsVSStringBuilder\StringsVSStringBuilder\bin\Release\netcoreapp3.0\e5bf7e3c-2770-46c2-a2d4-1950815a271d\bin\Release\netcoreapp3.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// Runtime=.NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT
// GC=Concurrent Workstation
// Job: DefaultJob
OverheadJitting 1: 1 op, 312700.00 ns, 312.7000 us/op
WorkloadJitting 1: 1 op, 106962000.00 ns, 106.9620 ms/op
WorkloadPilot 1: 2 op, 185065300.00 ns, 92.5327 ms/op
WorkloadPilot 2: 3 op, 268380800.00 ns, 89.4603 ms/op
WorkloadPilot 3: 4 op, 341183400.00 ns, 85.2959 ms/op
WorkloadPilot 4: 5 op, 422065000.00 ns, 84.4130 ms/op
WorkloadPilot 5: 6 op, 506590900.00 ns, 84.4318 ms/op
WorkloadWarmup 1: 6 op, 516354000.00 ns, 86.0590 ms/op
WorkloadWarmup 2: 6 op, 510335700.00 ns, 85.0559 ms/op
WorkloadWarmup 3: 6 op, 519724900.00 ns, 86.6208 ms/op
WorkloadWarmup 4: 6 op, 508611300.00 ns, 84.7686 ms/op
WorkloadWarmup 5: 6 op, 508137400.00 ns, 84.6896 ms/op
WorkloadWarmup 6: 6 op, 509923000.00 ns, 84.9872 ms/op
WorkloadWarmup 7: 6 op, 510082600.00 ns, 85.0138 ms/op
WorkloadWarmup 8: 6 op, 506460600.00 ns, 84.4101 ms/op
// BeforeActualRun
WorkloadActual 1: 6 op, 508692100.00 ns, 84.7820 ms/op
WorkloadActual 2: 6 op, 503121500.00 ns, 83.8536 ms/op
WorkloadActual 3: 6 op, 503002100.00 ns, 83.8337 ms/op
WorkloadActual 4: 6 op, 509924600.00 ns, 84.9874 ms/op
WorkloadActual 5: 6 op, 501927400.00 ns, 83.6546 ms/op
WorkloadActual 6: 6 op, 503140300.00 ns, 83.8567 ms/op
WorkloadActual 7: 6 op, 515262800.00 ns, 85.8771 ms/op
WorkloadActual 8: 6 op, 503297100.00 ns, 83.8829 ms/op
WorkloadActual 9: 6 op, 505479100.00 ns, 84.2465 ms/op
WorkloadActual 10: 6 op, 502691000.00 ns, 83.7818 ms/op
WorkloadActual 11: 6 op, 501791300.00 ns, 83.6319 ms/op
WorkloadActual 12: 6 op, 508507800.00 ns, 84.7513 ms/op
WorkloadActual 13: 6 op, 506352100.00 ns, 84.3920 ms/op
WorkloadActual 14: 6 op, 502688800.00 ns, 83.7815 ms/op
WorkloadActual 15: 6 op, 500456300.00 ns, 83.4094 ms/op
// AfterActualRun
WorkloadResult 1: 6 op, 508692100.00 ns, 84.7820 ms/op
WorkloadResult 2: 6 op, 503121500.00 ns, 83.8536 ms/op
WorkloadResult 3: 6 op, 503002100.00 ns, 83.8337 ms/op
WorkloadResult 4: 6 op, 509924600.00 ns, 84.9874 ms/op
WorkloadResult 5: 6 op, 501927400.00 ns, 83.6546 ms/op
WorkloadResult 6: 6 op, 503140300.00 ns, 83.8567 ms/op
WorkloadResult 7: 6 op, 515262800.00 ns, 85.8771 ms/op
WorkloadResult 8: 6 op, 503297100.00 ns, 83.8829 ms/op
WorkloadResult 9: 6 op, 505479100.00 ns, 84.2465 ms/op
WorkloadResult 10: 6 op, 502691000.00 ns, 83.7818 ms/op
WorkloadResult 11: 6 op, 501791300.00 ns, 83.6319 ms/op
WorkloadResult 12: 6 op, 508507800.00 ns, 84.7513 ms/op
WorkloadResult 13: 6 op, 506352100.00 ns, 84.3920 ms/op
WorkloadResult 14: 6 op, 502688800.00 ns, 83.7815 ms/op
WorkloadResult 15: 6 op, 500456300.00 ns, 83.4094 ms/op
// AfterAll
// Benchmark Process 9768 has exited with code 0
Mean = 84.1815 ms, StdErr = 0.1715 ms (0.20%); N = 15, StdDev = 0.6643 ms
Min = 83.4094 ms, Q1 = 83.7815 ms, Median = 83.8567 ms, Q3 = 84.7513 ms, Max = 85.8771 ms
IQR = 0.9698 ms, LowerFence = 82.3267 ms, UpperFence = 86.2061 ms
ConfidenceInterval = [83.4714 ms; 84.8916 ms] (CI 99.9%), Margin = 0.7101 ms (0.84% of Mean)
Skewness = 1.09, Kurtosis = 3.27, MValue = 2
// **************************
// Benchmark: StringVSStringBuilderTest.'StringBuilder method': DefaultJob
// *** Execute ***
// Launch: 1 / 1
// Execute: dotnet "e5bf7e3c-2770-46c2-a2d4-1950815a271d.dll" --benchmarkName "StringsVSStringBuilder.StringVSStringBuilderTest.CallAppendMethod" --job "Default" --benchmarkId 1 in C:\Users\larry\source\repos\StringsVSStringBuilder\StringsVSStringBuilder\bin\Release\netcoreapp3.0\e5bf7e3c-2770-46c2-a2d4-1950815a271d\bin\Release\netcoreapp3.0
// BeforeAnythingElse
// Benchmark Process Environment Information:
// Runtime=.NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT
// GC=Concurrent Workstation
// Job: DefaultJob
OverheadJitting 1: 1 op, 383600.00 ns, 383.6000 us/op
WorkloadJitting 1: 1 op, 91210800.00 ns, 91.2108 ms/op
WorkloadPilot 1: 2 op, 171164200.00 ns, 85.5821 ms/op
WorkloadPilot 2: 3 op, 253123200.00 ns, 84.3744 ms/op
WorkloadPilot 3: 4 op, 334555600.00 ns, 83.6389 ms/op
WorkloadPilot 4: 5 op, 418729200.00 ns, 83.7458 ms/op
WorkloadPilot 5: 6 op, 496028300.00 ns, 82.6714 ms/op
WorkloadPilot 6: 7 op, 580568300.00 ns, 82.9383 ms/op
WorkloadWarmup 1: 7 op, 592684500.00 ns, 84.6692 ms/op
WorkloadWarmup 2: 7 op, 574627700.00 ns, 82.0897 ms/op
WorkloadWarmup 3: 7 op, 579973700.00 ns, 82.8534 ms/op
WorkloadWarmup 4: 7 op, 579563100.00 ns, 82.7947 ms/op
WorkloadWarmup 5: 7 op, 573899000.00 ns, 81.9856 ms/op
WorkloadWarmup 6: 7 op, 572156100.00 ns, 81.7366 ms/op
WorkloadWarmup 7: 7 op, 570894700.00 ns, 81.5564 ms/op
WorkloadWarmup 8: 7 op, 571199100.00 ns, 81.5999 ms/op
WorkloadWarmup 9: 7 op, 581618800.00 ns, 83.0884 ms/op
WorkloadWarmup 10: 7 op, 572391800.00 ns, 81.7703 ms/op
// BeforeActualRun
WorkloadActual 1: 7 op, 576516500.00 ns, 82.3595 ms/op
WorkloadActual 2: 7 op, 572107000.00 ns, 81.7296 ms/op
WorkloadActual 3: 7 op, 584564200.00 ns, 83.5092 ms/op
WorkloadActual 4: 7 op, 574563900.00 ns, 82.0806 ms/op
WorkloadActual 5: 7 op, 571003900.00 ns, 81.5720 ms/op
WorkloadActual 6: 7 op, 572896500.00 ns, 81.8424 ms/op
WorkloadActual 7: 7 op, 577799300.00 ns, 82.5428 ms/op
WorkloadActual 8: 7 op, 585397900.00 ns, 83.6283 ms/op
WorkloadActual 9: 7 op, 573123300.00 ns, 81.8748 ms/op
WorkloadActual 10: 7 op, 590056200.00 ns, 84.2937 ms/op
WorkloadActual 11: 7 op, 579062700.00 ns, 82.7232 ms/op
WorkloadActual 12: 7 op, 570147200.00 ns, 81.4496 ms/op
WorkloadActual 13: 7 op, 576457200.00 ns, 82.3510 ms/op
WorkloadActual 14: 7 op, 588596700.00 ns, 84.0852 ms/op
WorkloadActual 15: 7 op, 598422700.00 ns, 85.4890 ms/op
// AfterActualRun
WorkloadResult 1: 7 op, 576516500.00 ns, 82.3595 ms/op
WorkloadResult 2: 7 op, 572107000.00 ns, 81.7296 ms/op
WorkloadResult 3: 7 op, 584564200.00 ns, 83.5092 ms/op
WorkloadResult 4: 7 op, 574563900.00 ns, 82.0806 ms/op
WorkloadResult 5: 7 op, 571003900.00 ns, 81.5720 ms/op
WorkloadResult 6: 7 op, 572896500.00 ns, 81.8424 ms/op
WorkloadResult 7: 7 op, 577799300.00 ns, 82.5428 ms/op
WorkloadResult 8: 7 op, 585397900.00 ns, 83.6283 ms/op
WorkloadResult 9: 7 op, 573123300.00 ns, 81.8748 ms/op
WorkloadResult 10: 7 op, 590056200.00 ns, 84.2937 ms/op
WorkloadResult 11: 7 op, 579062700.00 ns, 82.7232 ms/op
WorkloadResult 12: 7 op, 570147200.00 ns, 81.4496 ms/op
WorkloadResult 13: 7 op, 576457200.00 ns, 82.3510 ms/op
WorkloadResult 14: 7 op, 588596700.00 ns, 84.0852 ms/op
WorkloadResult 15: 7 op, 598422700.00 ns, 85.4890 ms/op
// AfterAll
// Benchmark Process 21148 has exited with code 0
Mean = 82.7687 ms, StdErr = 0.3049 ms (0.37%); N = 15, StdDev = 1.1809 ms
Min = 81.4496 ms, Q1 = 81.8424 ms, Median = 82.3595 ms, Q3 = 83.6283 ms, Max = 85.4890 ms
IQR = 1.7859 ms, LowerFence = 79.1635 ms, UpperFence = 86.3071 ms
ConfidenceInterval = [81.5062 ms; 84.0312 ms] (CI 99.9%), Margin = 1.2625 ms (1.53% of Mean)
Skewness = 0.8, Kurtosis = 2.47, MValue = 2
// ***** BenchmarkRunner: Finish *****
// * Export *
BenchmarkDotNet.Artifacts\results\StringsVSStringBuilder.StringVSStringBuilderTest-report.csv
BenchmarkDotNet.Artifacts\results\StringsVSStringBuilder.StringVSStringBuilderTest-report-github.md
BenchmarkDotNet.Artifacts\results\StringsVSStringBuilder.StringVSStringBuilderTest-report.html
// * Detailed results *
StringVSStringBuilderTest.'Concat method': DefaultJob
Runtime = .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT; GC = Concurrent Workstation
Mean = 84.1815 ms, StdErr = 0.1715 ms (0.20%); N = 15, StdDev = 0.6643 ms
Min = 83.4094 ms, Q1 = 83.7815 ms, Median = 83.8567 ms, Q3 = 84.7513 ms, Max = 85.8771 ms
IQR = 0.9698 ms, LowerFence = 82.3267 ms, UpperFence = 86.2061 ms
ConfidenceInterval = [83.4714 ms; 84.8916 ms] (CI 99.9%), Margin = 0.7101 ms (0.84% of Mean)
Skewness = 1.09, Kurtosis = 3.27, MValue = 2
-------------------- Histogram --------------------
[83.174 ms ; 86.113 ms) | @@@@@@@@@@@@@@@
---------------------------------------------------
StringVSStringBuilderTest.'StringBuilder method': DefaultJob
Runtime = .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT; GC = Concurrent Workstation
Mean = 82.7687 ms, StdErr = 0.3049 ms (0.37%); N = 15, StdDev = 1.1809 ms
Min = 81.4496 ms, Q1 = 81.8424 ms, Median = 82.3595 ms, Q3 = 83.6283 ms, Max = 85.4890 ms
IQR = 1.7859 ms, LowerFence = 79.1635 ms, UpperFence = 86.3071 ms
ConfidenceInterval = [81.5062 ms; 84.0312 ms] (CI 99.9%), Margin = 1.2625 ms (1.53% of Mean)
Skewness = 0.8, Kurtosis = 2.47, MValue = 2
-------------------- Histogram --------------------
[81.146 ms ; 83.062 ms) | @@@@@@@@@@
[83.062 ms ; 85.908 ms) | @@@@@
---------------------------------------------------
// * Summary *
BenchmarkDotNet=v0.12.0, OS=Windows 10.0.18362
Intel Core i7-4800MQ CPU 2.70GHz (Haswell), 1 CPU, 8 logical and 4 physical cores
.NET Core SDK=3.0.100
[Host] : .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT
DefaultJob : .NET Core 3.0.0 (CoreCLR 4.700.19.46205, CoreFX 4.700.19.46214), X64 RyuJIT
| Method | Mean | Error | StdDev |
|----------------------- |---------:|---------:|---------:|
| 'Concat method' | 84.18 ms | 0.710 ms | 0.664 ms |
| 'StringBuilder method' | 82.77 ms | 1.262 ms | 1.181 ms |
// * Legends *
Mean : Arithmetic mean of all measurements
Error : Half of 99.9% confidence interval
StdDev : Standard deviation of all measurements
1 ms : 1 Millisecond (0.001 sec)
// ***** BenchmarkRunner: End *****
// ** Remained 0 benchmark(s) to run **
Run time: 00:00:31 (31.29 sec), executed benchmarks: 2
Global total time: 00:00:39 (39.75 sec), executed benchmarks: 2
// * Artifacts cleanup *
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment