summaryrefslogtreecommitdiff
path: root/benchmark/fs/bench-opendir.js
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/fs/bench-opendir.js')
-rw-r--r--benchmark/fs/bench-opendir.js12
1 files changed, 7 insertions, 5 deletions
diff --git a/benchmark/fs/bench-opendir.js b/benchmark/fs/bench-opendir.js
index 419c3a231a..20e178d9cc 100644
--- a/benchmark/fs/bench-opendir.js
+++ b/benchmark/fs/bench-opendir.js
@@ -7,10 +7,11 @@ const path = require('path');
const bench = common.createBenchmark(main, {
n: [100],
dir: [ 'lib', 'test/parallel'],
- mode: [ 'async', 'sync', 'callback' ]
+ mode: [ 'async', 'sync', 'callback' ],
+ bufferSize: [ 4, 32, 1024 ]
});
-async function main({ n, dir, mode }) {
+async function main({ n, dir, mode, bufferSize }) {
const fullPath = path.resolve(__dirname, '../../', dir);
bench.start();
@@ -18,11 +19,12 @@ async function main({ n, dir, mode }) {
let counter = 0;
for (let i = 0; i < n; i++) {
if (mode === 'async') {
+ const dir = await fs.promises.opendir(fullPath, { bufferSize });
// eslint-disable-next-line no-unused-vars
- for await (const entry of await fs.promises.opendir(fullPath))
+ for await (const entry of dir)
counter++;
} else if (mode === 'callback') {
- const dir = await fs.promises.opendir(fullPath);
+ const dir = await fs.promises.opendir(fullPath, { bufferSize });
await new Promise((resolve, reject) => {
function read() {
dir.read((err, entry) => {
@@ -40,7 +42,7 @@ async function main({ n, dir, mode }) {
read();
});
} else {
- const dir = fs.opendirSync(fullPath);
+ const dir = fs.opendirSync(fullPath, { bufferSize });
while (dir.readSync() !== null)
counter++;
dir.closeSync();