X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=benchmarks%2Finternal%2Fthread%2Fdynamic.js;h=a418545362744580dc3b00556faaa9ee40007d44;hb=767d1512978a4a45bd79189e67f703ce217342ca;hp=290820778e44ec7df7d2b2f2101b9dafeef4cb8c;hpb=e843b9042b77e0e4e17c193820a3e05ffc92cffe;p=poolifier.git diff --git a/benchmarks/internal/thread/dynamic.js b/benchmarks/internal/thread/dynamic.js index 29082077..a4185453 100644 --- a/benchmarks/internal/thread/dynamic.js +++ b/benchmarks/internal/thread/dynamic.js @@ -20,6 +20,20 @@ const dynamicPoolLessRecentlyUsed = new DynamicThreadPool( { workerChoiceStrategy: WorkerChoiceStrategies.LESS_RECENTLY_USED } ) +const dynamicPoolWeightedRoundRobin = new DynamicThreadPool( + size / 2, + size * 3, + './benchmarks/internal/thread/worker.js', + { workerChoiceStrategy: WorkerChoiceStrategies.WEIGHTED_ROUND_ROBIN } +) + +const dynamicPoolFairShare = new DynamicThreadPool( + size / 2, + size * 3, + './benchmarks/internal/thread/worker.js', + { workerChoiceStrategy: WorkerChoiceStrategies.FAIR_SHARE } +) + async function dynamicThreadTest ( { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } ) { @@ -32,7 +46,21 @@ async function dynamicThreadTestLessRecentlyUsed ( return runPoolifierTest(dynamicPoolLessRecentlyUsed, { tasks, workerData }) } +async function dynamicThreadTestWeightedRoundRobin ( + { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } +) { + return runPoolifierTest(dynamicPoolWeightedRoundRobin, { tasks, workerData }) +} + +async function dynamicThreadTestFairShare ( + { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } +) { + return runPoolifierTest(dynamicPoolFairShare, { tasks, workerData }) +} + module.exports = { dynamicThreadTest, - dynamicThreadTestLessRecentlyUsed + dynamicThreadTestLessRecentlyUsed, + dynamicThreadTestWeightedRoundRobin, + dynamicThreadTestFairShare }