Skip to content

Commit

Permalink
Merge pull request #15 from Aaronontheweb/v0.3
Browse files Browse the repository at this point in the history
major upgrade to DedicatedThreadPool performance
  • Loading branch information
Aaronontheweb committed Apr 5, 2016
2 parents b3fa9d6 + e095cda commit f6eb5f3
Show file tree
Hide file tree
Showing 6 changed files with 437 additions and 200 deletions.
38 changes: 11 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,35 +47,19 @@ task.Wait();

Latest benchmark on our build server (2 core Windows Azure A2 medium)

```xml
[20:27:48][Step 1/1] Comparing Helios.Concurrency.DedicatedThreadPool vs System.Threading.ThreadPool for 10000 items
[20:27:48][Step 1/1] DedicatedThreadFiber.NumThreads: 2
[20:27:48][Step 1/1] System.Threading.ThreadPool
[20:27:48][Step 1/1] 00:00:00.0070000
[20:27:48][Step 1/1] Helios.Concurrency.DedicatedThreadPool
[20:27:49][Step 1/1] 00:00:00.2100000
[20:27:49][Step 1/1] Comparing Helios.Concurrency.DedicatedThreadPool vs System.Threading.ThreadPool for 100000 items
[20:27:49][Step 1/1] DedicatedThreadFiber.NumThreads: 2
[20:27:49][Step 1/1] System.Threading.ThreadPool
[20:27:49][Step 1/1] 00:00:00.0600000
[20:27:49][Step 1/1] Helios.Concurrency.DedicatedThreadPool
[20:27:51][Step 1/1] 00:00:00.1900000
[20:27:51][Step 1/1] Comparing Helios.Concurrency.DedicatedThreadPool vs System.Threading.ThreadPool for 1000000 items
[20:27:51][Step 1/1] DedicatedThreadFiber.NumThreads: 2
[20:27:51][Step 1/1] System.Threading.ThreadPool
[20:27:55][Step 1/1] 00:00:00.6840000
[20:27:55][Step 1/1] Helios.Concurrency.DedicatedThreadPool
[20:27:58][Step 1/1] 00:00:00.5160000
[20:27:58][Step 1/1] Comparing Helios.Concurrency.DedicatedThreadPool vs System.Threading.ThreadPool for 10000000 items
[20:27:58][Step 1/1] DedicatedThreadFiber.NumThreads: 2
[20:27:58][Step 1/1] System.Threading.ThreadPool
[20:28:42][Step 1/1] 00:00:07.1590000
[20:28:42][Step 1/1] Helios.Concurrency.DedicatedThreadPool
[20:29:04][Step 1/1] 00:00:03.7330000
```
### Helios.DedicatedThreadPool v0.3

Metric | Units / s | Max / s | Average / s | Min / s | StdDev / s |
---------------- |---------------- |---------------- |---------------- |---------------- |---------------- |
[Counter] BenchmarkCalls | operations | 9,998,100.36 | 8,661,529.31 | 7,093,003.46 | 944,954.17 |

### System.Threading.ThreadPool
Metric | Units / s | Max / s | Average / s | Min / s | StdDev / s |
---------------- |---------------- |---------------- |---------------- |---------------- |---------------- |
[Counter] BenchmarkCalls | operations | 2,651,289.19 | 2,510,678.63 | 2,098,882.55 | 179,585.24 |

## License

See [LICENSE](LICENSE) for details.

Copyright (C) 2015 Roger Alsing, Aaron Stannard
Copyright (C) 2015-2016 Roger Alsing, Aaron Stannard, Jeff Cyr
16 changes: 16 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
#### 0.3.0 April 05 2016
Major upgrade to the performance and stability of `DedicatedThreadPool`.

Previous (v0.2) numbers:

Metric | Units / s | Max / s | Average / s | Min / s | StdDev / s |
---------------- |---------------- |---------------- |---------------- |---------------- |---------------- |
[Counter] BenchmarkCalls | operations | 2,381,933.51 | 2,335,262.42 | 2,123,061.11 | 75,849.97 |

Current (v0.3) numbers:

Metric | Units / s | Max / s | Average / s | Min / s | StdDev / s |
---------------- |---------------- |---------------- |---------------- |---------------- |---------------- |
[Counter] BenchmarkCalls | operations | 9,998,100.36 | 8,661,529.31 | 7,093,003.46 | 944,954.17 |


#### 0.2.0 Mar 26 2015
Added deadlock detection to the `DedicatedThreadPool` and other bug / performance fixes.

Expand Down
2 changes: 1 addition & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ mono $SCRIPT_PATH/tools/nuget/NuGet.exe update -self

mono $SCRIPT_PATH/tools/nuget/NuGet.exe install FAKE -OutputDirectory $SCRIPT_PATH/src/packages -ExcludeVersion

mono $SCRIPT_PATH/tools/nuget/NuGet.exe install NBench.Runner -OutputDirectory $SCRIPT_PATH/src/packages -ExcludeVersion
mono $SCRIPT_PATH/tools/nuget/NuGet.exe install NBench.Runner -OutputDirectory $SCRIPT_PATH/src/packages -ExcludeVersion -Version 0.1.6


if ! [ -e $SCRIPT_PATH/src/packages/SourceLink.Fake/tools/SourceLink.fsx ] ; then
Expand Down
Loading

0 comments on commit f6eb5f3

Please sign in to comment.