Commit | Line | Data |
---|---|---|
ff5e76e1 JB |
1 | const { |
2 | DynamicThreadPool, | |
3 | WorkerChoiceStrategies | |
4 | } = require('../../../lib/index') | |
74750c7f | 5 | const { runPoolifierTest } = require('../benchmark-utils') |
325f50bc S |
6 | |
7 | const size = 30 | |
e843b904 | 8 | const numberOfTasks = 1 |
325f50bc | 9 | |
ff5e76e1 JB |
10 | const dynamicPool = new DynamicThreadPool( |
11 | size / 2, | |
12 | size * 3, | |
13 | './benchmarks/internal/thread/worker.js' | |
14 | ) | |
15 | ||
16 | const dynamicPoolLessRecentlyUsed = new DynamicThreadPool( | |
17 | size / 2, | |
18 | size * 3, | |
19 | './benchmarks/internal/thread/worker.js', | |
74750c7f | 20 | { workerChoiceStrategy: WorkerChoiceStrategies.LESS_RECENTLY_USED } |
ff5e76e1 | 21 | ) |
325f50bc | 22 | |
23ff945a JB |
23 | const dynamicPoolFairShare = new DynamicThreadPool( |
24 | size / 2, | |
25 | size * 3, | |
26 | './benchmarks/internal/thread/worker.js', | |
27 | { workerChoiceStrategy: WorkerChoiceStrategies.FAIR_SHARE } | |
28 | ) | |
29 | ||
325f50bc | 30 | async function dynamicThreadTest ( |
e843b904 | 31 | { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } |
325f50bc | 32 | ) { |
74750c7f | 33 | return runPoolifierTest(dynamicPool, { tasks, workerData }) |
ff5e76e1 JB |
34 | } |
35 | ||
36 | async function dynamicThreadTestLessRecentlyUsed ( | |
e843b904 | 37 | { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } |
ff5e76e1 | 38 | ) { |
74750c7f | 39 | return runPoolifierTest(dynamicPoolLessRecentlyUsed, { tasks, workerData }) |
325f50bc S |
40 | } |
41 | ||
23ff945a JB |
42 | async function dynamicThreadTestFairShare ( |
43 | { tasks, workerData } = { tasks: numberOfTasks, workerData: { proof: 'ok' } } | |
44 | ) { | |
45 | return runPoolifierTest(dynamicPoolFairShare, { tasks, workerData }) | |
46 | } | |
47 | ||
ff5e76e1 JB |
48 | module.exports = { |
49 | dynamicThreadTest, | |
23ff945a | 50 | dynamicThreadTestFairShare, |
ff5e76e1 JB |
51 | dynamicThreadTestLessRecentlyUsed |
52 | } |