{"id":21701241,"url":"https://github.com/poolifier/benchmark","last_synced_at":"2026-05-15T23:42:05.114Z","repository":{"id":196318230,"uuid":"695199962","full_name":"poolifier/benchmark","owner":"poolifier","description":"Poolifier benchmark versus other worker pools","archived":false,"fork":false,"pushed_at":"2026-05-08T13:55:30.000Z","size":2359,"stargazers_count":4,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-05-08T15:46:49.157Z","etag":null,"topics":["benchmark","node"],"latest_commit_sha":null,"homepage":"https://bencher.dev/perf/poolifier-benchmark","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/poolifier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-09-22T15:14:58.000Z","updated_at":"2026-05-08T13:55:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"e34507c6-47f1-480d-88ea-d27d457fb703","html_url":"https://github.com/poolifier/benchmark","commit_stats":null,"previous_names":["poolifier/benchmark"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/poolifier/benchmark","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poolifier%2Fbenchmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poolifier%2Fbenchmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poolifier%2Fbenchmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poolifier%2Fbenchmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/poolifier","download_url":"https://codeload.github.com/poolifier/benchmark/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/poolifier%2Fbenchmark/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33083993,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T20:25:35.270Z","status":"ssl_error","status_checked_at":"2026-05-15T20:25:34.732Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["benchmark","node"],"created_at":"2024-11-25T20:18:39.372Z","updated_at":"2026-05-15T23:42:05.097Z","avatar_url":"https://github.com/poolifier.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Poolifier benchmark versus other worker pools\n\n## Table of contents\n\n- [Description](#description)\n- [Usage](#usage)\n- [Results](#results)\n\n## Description\n\nTo compare poolifier pools performance vs other pools performance we chose to use [hyperfine](https://github.com/sharkdp/hyperfine).  \nWe chose to use this tool because it allows to run isolated Node.js processes so each pool does not impact each other.\n\n- External pools with which we compare the poolifier results:\n\n  - [piscina](https://github.com/piscinajs/piscina)\n  - [tinypool](https://github.com/tinylibs/tinypool)\n  - [workerpool](https://github.com/josdejong/workerpool)\n  - [worker-nodes](https://github.com/allegro/node-worker-nodes)\n  - [concurrent.js](https://github.com/bitair-org/concurrent.js)\n  - [nanothreads](https://github.com/snuffyDev/nanothreads)\n\n- External pools with which we used to compare the poolifier results:\n\n  - [node-worker-threads-pool](https://github.com/SUCHMOKUO/node-worker-threads-pool): removed because it does not support dynamic modules import or import outside the task function. The task function is expected to be self-contained, which makes it difficult to use in real world application without ugly hacks.\n  - [worker-threads-pool](https://github.com/watson/worker-threads-pool): removed because unmaintained since more than 4 years.\n  - [threadwork](https://github.com/kevlened/threadwork): removed because unmaintained since more than 3 years.\n  - [microjob](https://github.com/wilk/microjob): removed because unmaintained since more than 5 years.\n  - [threads.js](https://github.com/andywer/threads.js): removed because not a threads pool.\n\n\u003e :warning: **We would need funds to run our benchmark more often and on Cloud VMs, please consider to sponsor the poolifier project**\n\n## Usage\n\nTo run the benchmark versus other worker pools you will need to:\n\n- [Install hyperfine](https://github.com/sharkdp/hyperfine#installation)\n- Clone the [benchmark repository](https://github.com/poolifier/benchmark)\n- Run `pnpm install` in the benchmark cloned repository\n- Run the `./bench.sh` script\n\n\u003e :warning: **Please be sure to use a quiet PC when you run the benchmark**\n\n## [Results](https://bencher.dev/perf/poolifier-benchmark)\n\nCPU intensive task with 100k `factorial(1000)` operations submitted to each pool: [https://bencher.dev/perf/poolifier-benchmark](https://bencher.dev/perf/poolifier-benchmark).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoolifier%2Fbenchmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoolifier%2Fbenchmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoolifier%2Fbenchmark/lists"}