X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=benchmarks%2FREADME.md;h=e47bb2b28b3493c9f570364b3e5632f25accb523;hb=c4216735df38e44ec4f7aee04e18955adb919c3f;hp=def05f58e8823bae5a5504a29fde9f5c0b8eb213;hpb=546c39178f69aa640ee07c35a2df659e422adc90;p=poolifier.git diff --git a/benchmarks/README.md b/benchmarks/README.md index def05f58..e47bb2b2 100644 --- a/benchmarks/README.md +++ b/benchmarks/README.md @@ -10,25 +10,31 @@ The [versus-external-pools](./versus-external-pools) folder contains benchmarks ## Poolifier vs other pools benchmark To compare poolifier pools performance vs other pools performance we chose to use [hyperfine](https://github.com/sharkdp/hyperfine). -We chose to use this tool because it allows to run isolated Node.js processes so each pool does not impact each other. -External pools with which we compared the poolifier results: +We chose to use this tool because it allows to run isolated Node.js processes so each pool does not impact each other. -- [piscina](https://github.com/piscinajs/piscina) -- [tinypool](https://github.com/tinylibs/tinypool) -- [node-worker-threads-pool](https://github.com/SUCHMOKUO/node-worker-threads-pool): removed from the benchmark because does not support dynamic ESM modules import or import outside of the worker function, which makes it pretty hard to use without tricks to make the worker function self-contained. -- [workerpool](https://github.com/josdejong/workerpool) -- [worker-nodes](https://github.com/allegro/node-worker-nodes) -- [threads.js](https://github.com/andywer/threads.js/) -- [threadwork](https://github.com/kevlened/threadwork) -- [microjob](https://github.com/wilk/microjob) +- External pools with which we compare the poolifier results: -Those are our results: + - [piscina](https://github.com/piscinajs/piscina) + - [tinypool](https://github.com/tinylibs/tinypool) + - [workerpool](https://github.com/josdejong/workerpool) + - [worker-nodes](https://github.com/allegro/node-worker-nodes) + - [node-worker-threads-pool](https://github.com/SUCHMOKUO/node-worker-threads-pool) + - [nanothreads](https://github.com/snuffyDev/nanothreads) -- CPU Intensive task with 100k operations submitted to each pool [BENCH-100000.md](./versus-external-pools/BENCH-100000.md). + Those are our results: -> :warning: **We would need funds to run our benchmarks more often and on Cloud VMs, please consider to sponsor this project** + - CPU Intensive task with 100k operations submitted to each pool [BENCH-100000.md](./versus-external-pools/BENCH-100000.md). + +- External pools with which we used to compare the poolifier results: + + -## How to run benchmarks + - [worker-threads-pool](https://github.com/watson/worker-threads-pool): removed because unmaintained since more than 4 years. + - [threadwork](https://github.com/kevlened/threadwork): removed because unmaintained since more than 3 years. + - [microjob](https://github.com/wilk/microjob): removed because unmaintained since more than 5 years. + - [threads.js](https://github.com/andywer/threads.js/): removed because not a threads pool. + +> :warning: **We would need funds to run our benchmarks more often and on Cloud VMs, please consider to sponsor this project** ### Internal