Jérôme Benoit [Sun, 9 Apr 2023 17:03:51 +0000 (19:03 +0200)]
Merge branch 'master' of github.com:jerome-benoit/poolifier
Jérôme Benoit [Sun, 9 Apr 2023 17:02:53 +0000 (19:02 +0200)]
perf: optimize runtime worker choice strategy change
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 9 Apr 2023 16:22:33 +0000 (18:22 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Sun, 9 Apr 2023 12:49:44 +0000 (14:49 +0200)]
chore: v2.4.5
github-actions[bot] [Sun, 9 Apr 2023 12:46:58 +0000 (12:46 +0000)]
chore: generate documentation
Jérôme Benoit [Sun, 9 Apr 2023 12:44:57 +0000 (14:44 +0200)]
docs: refine tasks response handling documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 9 Apr 2023 12:16:22 +0000 (14:16 +0200)]
refactor: change tasks queue helpers scope
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Sun, 9 Apr 2023 11:44:55 +0000 (11:44 +0000)]
chore: generate documentation
Jérôme Benoit [Sun, 9 Apr 2023 11:42:19 +0000 (13:42 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Sun, 9 Apr 2023 11:41:28 +0000 (13:41 +0200)]
docs: enhance worker choice strategy option
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Sun, 9 Apr 2023 11:34:08 +0000 (11:34 +0000)]
chore: generate documentation
Jérôme Benoit [Sun, 9 Apr 2023 11:31:16 +0000 (13:31 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Sun, 9 Apr 2023 11:30:15 +0000 (13:30 +0200)]
fix: add missing worker choice strategy options export
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Sun, 9 Apr 2023 11:02:06 +0000 (11:02 +0000)]
chore: generate documentation
Jérôme Benoit [Sun, 9 Apr 2023 10:53:59 +0000 (12:53 +0200)]
feat: add pool option to enable median runtime
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sun, 9 Apr 2023 09:51:08 +0000 (11:51 +0200)]
feat: add option to enable worker tasks queue
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 21:45:23 +0000 (23:45 +0200)]
docs: comment cleanup
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 21:34:50 +0000 (23:34 +0200)]
refactor: prepare the code to handle task abstraction at execute
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 19:26:07 +0000 (21:26 +0200)]
feat: add tasks queue to pool data structure
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 13:28:03 +0000 (15:28 +0200)]
refactor: switch Date.now() -> performance.now() where appropriate
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 13:20:09 +0000 (15:20 +0200)]
fix: fix eslint spelling warnings
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 13:03:31 +0000 (15:03 +0200)]
feat: use monotonic high resolution timer for worker tasks statistics
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 12:06:56 +0000 (14:06 +0200)]
feat: add median task run time statistic
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 10:37:13 +0000 (12:37 +0200)]
docs: sync worker choice context constructor comment
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 08:16:01 +0000 (10:16 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Sat, 8 Apr 2023 08:11:42 +0000 (10:11 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
github-actions[bot] [Fri, 7 Apr 2023 22:03:13 +0000 (22:03 +0000)]
chore: generate documentation
Jérôme Benoit [Fri, 7 Apr 2023 22:00:22 +0000 (00:00 +0200)]
build: fix new files handling at documentation generation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 21:31:54 +0000 (23:31 +0200)]
docs: update changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 21:30:08 +0000 (23:30 +0200)]
chore: v2.4.4
github-actions[bot] [Fri, 7 Apr 2023 21:19:16 +0000 (21:19 +0000)]
chore: generate documentation
Jérôme Benoit [Fri, 7 Apr 2023 21:15:34 +0000 (23:15 +0200)]
refactor: add PoolEvents/PoolEvent types
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 18:08:05 +0000 (20:08 +0200)]
docs: updates changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 18:06:32 +0000 (20:06 +0200)]
test: fix a UT
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 18:00:27 +0000 (20:00 +0200)]
fix: destroy worker only on check alive checks
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 17:12:57 +0000 (19:12 +0200)]
refactor: limit properties scope on worker choosing code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 16:46:42 +0000 (18:46 +0200)]
refactor: untangle worker choosing code from worker creation code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Fri, 7 Apr 2023 15:13:21 +0000 (15:13 +0000)]
chore: generate documentation
Jérôme Benoit [Fri, 7 Apr 2023 15:08:02 +0000 (17:08 +0200)]
docs: fix findFreeWorkerKey() return value
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 14:54:03 +0000 (16:54 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 14:39:50 +0000 (16:39 +0200)]
chore: v2.4.3
github-actions[bot] [Fri, 7 Apr 2023 14:28:01 +0000 (14:28 +0000)]
chore: generate documentation
Jérôme Benoit [Fri, 7 Apr 2023 14:25:20 +0000 (16:25 +0200)]
refactor: refine worker options scope
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 13:55:28 +0000 (15:55 +0200)]
docs: update changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Fri, 7 Apr 2023 12:51:59 +0000 (12:51 +0000)]
chore: generate documentation
Jérôme Benoit [Fri, 7 Apr 2023 12:49:45 +0000 (14:49 +0200)]
docs: fix typedoc generation with inheritance
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 11:46:58 +0000 (13:46 +0200)]
test: ensure the worker choice context class is properly initialized
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Fri, 7 Apr 2023 10:08:40 +0000 (12:08 +0200)]
refactor: check for null and undefined
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 6 Apr 2023 20:41:56 +0000 (22:41 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Thu, 6 Apr 2023 17:25:36 +0000 (19:25 +0200)]
docs: update benchmarks vs. external thread pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Thu, 6 Apr 2023 14:04:59 +0000 (16:04 +0200)]
chore: v2.4.2
github-actions[bot] [Thu, 6 Apr 2023 14:01:26 +0000 (14:01 +0000)]
chore: generate documentation
Jérôme Benoit [Thu, 6 Apr 2023 07:58:45 +0000 (09:58 +0200)]
test: enhance worker selection strategies UTs
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 6 Apr 2023 06:59:35 +0000 (08:59 +0200)]
refactor: remove unused method argument
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 6 Apr 2023 06:53:39 +0000 (08:53 +0200)]
perf: remove unneeded nullish checks in hot code paths
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Thu, 6 Apr 2023 06:40:41 +0000 (08:40 +0200)]
perf: pre-instantiate worker choice strategies
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 22:35:53 +0000 (00:35 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Apr 2023 22:17:24 +0000 (00:17 +0200)]
docs: refine changelog entries
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 22:14:49 +0000 (00:14 +0200)]
fix: ensure worker key can't be negative in worker choice strategies
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 21:32:13 +0000 (23:32 +0200)]
docs: refine documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 21:12:28 +0000 (23:12 +0200)]
feat: cache in a map worker choice strategy to allow conditionnal reuse
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 19:24:58 +0000 (21:24 +0200)]
refactor: move worker choice instance helper into the context class
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 17:40:46 +0000 (19:40 +0200)]
refactor: use class property if appropriate
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 17:36:58 +0000 (19:36 +0200)]
refactor: conditionally reset strategy internals
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 16:25:11 +0000 (18:25 +0200)]
build: refine editorconfig configuration
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 15:49:50 +0000 (17:49 +0200)]
feat: add 'full' event on dynamic pool emitter
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 15:06:56 +0000 (17:06 +0200)]
refactor: apply stricter strategy design pattern requirements on worker
choice code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 13:51:41 +0000 (15:51 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Wed, 5 Apr 2023 13:36:11 +0000 (15:36 +0200)]
test: cleanup worker function
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 12:54:41 +0000 (14:54 +0200)]
refactor: cleanup type import
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 12:10:44 +0000 (14:10 +0200)]
chore: v2.4.1
Jérôme Benoit [Wed, 5 Apr 2023 12:03:41 +0000 (14:03 +0200)]
perf: optimize a pool type test
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 11:53:40 +0000 (13:53 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Wed, 5 Apr 2023 11:34:34 +0000 (11:34 +0000)]
chore: generate documentation
Jérôme Benoit [Wed, 5 Apr 2023 11:28:24 +0000 (13:28 +0200)]
docs: fix pool internal interface documentation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 10:49:29 +0000 (12:49 +0200)]
refactor: propagate generics type
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 10:40:40 +0000 (12:40 +0200)]
perf: remove unneeded class indirection for dynamic pool in worker
selection code
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Wed, 5 Apr 2023 09:16:00 +0000 (09:16 +0000)]
chore: generate documentation
Jérôme Benoit [Wed, 5 Apr 2023 08:44:05 +0000 (10:44 +0200)]
fix: fix dynamic pool busy semantic
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Wed, 5 Apr 2023 00:21:50 +0000 (02:21 +0200)]
fix: check worker aliveness in all case
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 23:25:18 +0000 (01:25 +0200)]
docs: refine README.md
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 22:47:47 +0000 (00:47 +0200)]
fix: only pickup a free worker with dynamic pool if the worker selection
strategy says so
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 21:57:55 +0000 (23:57 +0200)]
docs: fix code example
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 21:54:17 +0000 (23:54 +0200)]
perf: bind to this some methods in the tasks execution code path
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 17:14:26 +0000 (19:14 +0200)]
Merge branch 'master' of github.com:poolifier/poolifier
Jérôme Benoit [Tue, 4 Apr 2023 17:13:36 +0000 (19:13 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
github-actions[bot] [Tue, 4 Apr 2023 17:11:28 +0000 (17:11 +0000)]
chore: generate documentation
Jérôme Benoit [Tue, 4 Apr 2023 16:51:13 +0000 (18:51 +0200)]
chore: v2.4.0
Jérôme Benoit [Tue, 4 Apr 2023 14:27:59 +0000 (16:27 +0200)]
docs: update benchmarks vs. external pools
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Tue, 4 Apr 2023 12:36:34 +0000 (14:36 +0200)]
perf: allow finer grained control over tasks usage computation
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 08:19:45 +0000 (10:19 +0200)]
chore: v2.4.0-3
github-actions[bot] [Tue, 4 Apr 2023 08:09:03 +0000 (08:09 +0000)]
chore: generate documentation
Jérôme Benoit [Tue, 4 Apr 2023 08:07:18 +0000 (10:07 +0200)]
build(deps-dev): apply updates
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Tue, 4 Apr 2023 00:20:42 +0000 (02:20 +0200)]
refactor: align findFreeWorkerKey() return type with findIndex()
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 23:32:38 +0000 (01:32 +0200)]
perf: pickup free worker in the less busy and used strategies for fixed
pool
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:53:37 +0000 (00:53 +0200)]
test: update benchmarks vs. external pool results
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
Jérôme Benoit [Mon, 3 Apr 2023 22:45:59 +0000 (00:45 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 7)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:37:41 +0000 (00:37 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 5)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:34:25 +0000 (00:34 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 4)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
Jérôme Benoit [Mon, 3 Apr 2023 22:28:24 +0000 (00:28 +0200)]
test: fix FAIR_SHARE strategy in dynamic pool (take 3)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>