aboutsummaryrefslogtreecommitdiff
path: root/bench
diff options
context:
space:
mode:
authorGravatar Dylan Conway <dylan.conway567@gmail.com> 2023-10-17 14:10:25 -0700
committerGravatar Dylan Conway <dylan.conway567@gmail.com> 2023-10-17 14:10:25 -0700
commit7458b969c5d9971e89d187b687e1924e78da427e (patch)
treeee3dbf95c728cf407bf49a27826b541e9264a8bd /bench
parentd4a2c29131ec154f5e4db897d4deedab2002cbc4 (diff)
parente91436e5248d947b50f90b4a7402690be8a41f39 (diff)
downloadbun-7458b969c5d9971e89d187b687e1924e78da427e.tar.gz
bun-7458b969c5d9971e89d187b687e1924e78da427e.tar.zst
bun-7458b969c5d9971e89d187b687e1924e78da427e.zip
Merge branch 'main' into postinstall_3
Diffstat (limited to 'bench')
-rw-r--r--bench/snippets/private.mjs20
-rw-r--r--bench/snippets/rmdir.mjs22
-rw-r--r--bench/snippets/write.node.mjs5
3 files changed, 44 insertions, 3 deletions
diff --git a/bench/snippets/private.mjs b/bench/snippets/private.mjs
index ca75c6e07..452dab06b 100644
--- a/bench/snippets/private.mjs
+++ b/bench/snippets/private.mjs
@@ -77,4 +77,24 @@ bench("ConventionalPrivates", () => {
new Foo().run();
});
+const _state = Symbol("state");
+const _inc = Symbol("inc");
+
+bench("SymbolPrivates", () => {
+ class Foo {
+ [_state] = 1;
+ [_inc] = 13;
+
+ run() {
+ let n = 1000000;
+ while (n-- > 0) {
+ this[_state] += this[_inc];
+ }
+ return n;
+ }
+ }
+
+ new Foo().run();
+});
+
await run();
diff --git a/bench/snippets/rmdir.mjs b/bench/snippets/rmdir.mjs
new file mode 100644
index 000000000..258d69097
--- /dev/null
+++ b/bench/snippets/rmdir.mjs
@@ -0,0 +1,22 @@
+import { tmpdir } from "node:os";
+import { promises, existsSync, mkdirSync } from "node:fs";
+const count = 1024 * 12;
+
+var queue = new Array(count);
+var paths = new Array(count);
+for (let i = 0; i < count; i++) {
+ const path = `${tmpdir()}/${Date.now()}.rm.dir${i}`;
+ try {
+ mkdirSync(path);
+ } catch (e) {}
+ paths[i] = path;
+ queue[i] = promises.rmdir(path);
+}
+
+await Promise.all(queue);
+
+for (let i = 0; i < count; i++) {
+ if (existsSync(paths[i])) {
+ throw new Error(`Path ${paths[i]} was not removed`);
+ }
+}
diff --git a/bench/snippets/write.node.mjs b/bench/snippets/write.node.mjs
index 14bceb23f..f59c98aef 100644
--- a/bench/snippets/write.node.mjs
+++ b/bench/snippets/write.node.mjs
@@ -9,9 +9,8 @@ bench("writeFile(/tmp/foo.txt, short string)", async () => {
await writeFile("/tmp/foo.txt", "short string", "utf8");
});
-const buffer = Buffer.from("short string");
bench("writeFile(/tmp/foo.txt, Buffer.from(short string))", async () => {
- await writeFile("/tmp/foo.txt", buffer);
+ await writeFile("/tmp/foo.txt", Buffer.from("short string"));
});
const fd = openSync("/tmp/foo.txt", "w");
@@ -22,7 +21,7 @@ bench("write(fd, short string)", () => {
});
bench("write(fd, Uint8Array(short string))", () => {
- const bytesWritten = write(fd, buffer);
+ const bytesWritten = write(fd, Buffer.from("short string"));
if (bytesWritten !== 12) throw new Error("wrote !== 12");
});