Benchmarks and performance enhancements (#209)
[poolifier.git] / benchmarks / README.md
1 # Poolifier Benchmarks
2
3 Welcome to poolifier benchmarks and thanks to look into this project.
4
5 ## Folder Structure
6
7 The internal folder contains poolifier internal benchmarks.
8 The versus-external-pools folder contains benchmarks versus other Node.js pools.
9
10 ## Poolifier vs other pools benchmark
11
12 To compare poolifier pools performance vs other pools performance we chose to use [hyperfine](https://github.com/sharkdp/hyperfine).
13 We chose to use this tool because it allows to run isolated Node.js processes so that each pool does not impact each other.
14
15 We will add more details on each function that we benchmark.
16
17 Those are our results:
18
19 - CPU Intensive task with 100k operations submitted to each pool [BENCH-100000.MD](./versus-external-pools/BENCH-100000.MD)
20
21 ## How to run benchmarks
22
23 ### Internal
24
25 To run the internal benchmark you just need to navigate to the root of poolifier project and run `npm run benchmark`
26
27 ## Versus other pools
28
29 To run the benchmark versus other pools you will need to:
30
31 - [Install hyperfine](https://github.com/sharkdp/hyperfine#installation)
32 - Run the `./bench.sh` into the `versus-external-pools` folder