X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=benchmarks%2Finternal%2Fbench.mjs;h=9eb70526dbded89565714dcf940b1a4b971cbb17;hb=5d5885ee530724024f84e31acca92775a01da082;hp=442326a76f908fd0f9c301a67c09d9c6d40ef861;hpb=0804b9b4106132c5487b57be518958c699ce2563;p=poolifier.git diff --git a/benchmarks/internal/bench.mjs b/benchmarks/internal/bench.mjs index 442326a7..9eb70526 100644 --- a/benchmarks/internal/bench.mjs +++ b/benchmarks/internal/bench.mjs @@ -1,8 +1,6 @@ import { exit } from 'node:process' import { parseArgs } from 'node:util' -import { run } from 'mitata' - import { availableParallelism, PoolTypes, @@ -10,8 +8,8 @@ import { } from '../../lib/index.mjs' import { TaskFunctions } from '../benchmarks-types.cjs' import { - buildPoolifierBenchmarkMitata, - runPoolifierBenchmarkBenchmarkJs + runPoolifierBenchmarkBenchmarkJsSuite, + runPoolifierBenchmarkTatamiNg } from '../benchmarks-utils.mjs' const poolSize = availableParallelism() @@ -21,26 +19,21 @@ const workerData = { taskSize: 50000 } -const options = { - type: { - type: 'string', - short: 't' - } -} -const { values } = parseArgs({ - args: process.argv, - options, - strict: true, - allowPositionals: true -}) - -let fixedThreadPool -let dynamicThreadPool -let fixedClusterPool -let dynamicClusterPool -switch (values.type) { - case 'mitata': - fixedThreadPool = buildPoolifierBenchmarkMitata( +switch ( + parseArgs({ + args: process.argv, + options: { + type: { + type: 'string', + short: 't' + } + }, + strict: true, + allowPositionals: true + }).values.type +) { + case 'tatami-ng': + await runPoolifierBenchmarkTatamiNg( 'FixedThreadPool', WorkerTypes.thread, PoolTypes.fixed, @@ -50,7 +43,7 @@ switch (values.type) { workerData } ) - dynamicThreadPool = buildPoolifierBenchmarkMitata( + await runPoolifierBenchmarkTatamiNg( 'DynamicThreadPool', WorkerTypes.thread, PoolTypes.dynamic, @@ -60,7 +53,7 @@ switch (values.type) { workerData } ) - fixedClusterPool = buildPoolifierBenchmarkMitata( + await runPoolifierBenchmarkTatamiNg( 'FixedClusterPool', WorkerTypes.cluster, PoolTypes.fixed, @@ -70,7 +63,7 @@ switch (values.type) { workerData } ) - dynamicClusterPool = buildPoolifierBenchmarkMitata( + await runPoolifierBenchmarkTatamiNg( 'DynamicClusterPool', WorkerTypes.cluster, PoolTypes.dynamic, @@ -80,15 +73,10 @@ switch (values.type) { workerData } ) - await run() - await fixedThreadPool.destroy() - await dynamicThreadPool.destroy() - await fixedClusterPool.destroy() - await dynamicClusterPool.destroy() break case 'benchmark.js': default: - await runPoolifierBenchmarkBenchmarkJs( + await runPoolifierBenchmarkBenchmarkJsSuite( 'FixedThreadPool', WorkerTypes.thread, PoolTypes.fixed, @@ -98,7 +86,7 @@ switch (values.type) { workerData } ) - await runPoolifierBenchmarkBenchmarkJs( + await runPoolifierBenchmarkBenchmarkJsSuite( 'DynamicThreadPool', WorkerTypes.thread, PoolTypes.dynamic, @@ -108,7 +96,7 @@ switch (values.type) { workerData } ) - await runPoolifierBenchmarkBenchmarkJs( + await runPoolifierBenchmarkBenchmarkJsSuite( 'FixedClusterPool', WorkerTypes.cluster, PoolTypes.fixed, @@ -118,7 +106,7 @@ switch (values.type) { workerData } ) - await runPoolifierBenchmarkBenchmarkJs( + await runPoolifierBenchmarkBenchmarkJsSuite( 'DynamicClusterPool', WorkerTypes.cluster, PoolTypes.dynamic,