aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets/concat.js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-22 23:21:48 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-06-22 23:21:48 -0700
commit729d445b6885f69dd2c6355f38707bd42851c791 (patch)
treef87a7c408929ea3f57bbb7ace380cf869da83c0e /bench/snippets/concat.js
parent25f820c6bf1d8ec6d444ef579cc036b8c0607b75 (diff)
downloadbun-729d445b6885f69dd2c6355f38707bd42851c791.tar.gz
bun-729d445b6885f69dd2c6355f38707bd42851c791.tar.zst
bun-729d445b6885f69dd2c6355f38707bd42851c791.zip
change the directory structurejarred/rename
Diffstat (limited to 'bench/snippets/concat.js')
-rw-r--r--bench/snippets/concat.js66
1 files changed, 0 insertions, 66 deletions
diff --git a/bench/snippets/concat.js b/bench/snippets/concat.js
deleted file mode 100644
index 46c6e0f7d..000000000
--- a/bench/snippets/concat.js
+++ /dev/null
@@ -1,66 +0,0 @@
-import { bench, group, run } from "mitata";
-import { readFileSync } from "fs";
-import { allocUnsafe } from "bun";
-
-function polyfill(chunks) {
- var size = 0;
- for (const chunk of chunks) {
- size += chunk.byteLength;
- }
- var buffer = new ArrayBuffer(size);
- var view = new Uint8Array(buffer);
- var offset = 0;
- for (const chunk of chunks) {
- view.set(chunk, offset);
- offset += chunk.byteLength;
- }
- return buffer;
-}
-
-function polyfillUninitialized(chunks) {
- var size = 0;
- for (const chunk of chunks) {
- size += chunk.byteLength;
- }
- var view = allocUnsafe(size);
-
- var offset = 0;
- for (const chunk of chunks) {
- view.set(chunk, offset);
- offset += chunk.byteLength;
- }
- return view.buffer;
-}
-
-const chunkGroups = [
- [Uint8Array.from([123]), Uint8Array.from([456]), Uint8Array.from([789])],
- Array.from(readFileSync(import.meta.path)).map((a) => Uint8Array.from([a])),
- [readFileSync(import.meta.path)],
- Array.from({ length: 42 }, () => readFileSync(import.meta.path)),
- Array.from({ length: 2 }, () =>
- new TextEncoder().encode(readFileSync(import.meta.path, "utf8").repeat(100))
- ),
-];
-
-for (const chunks of chunkGroups) {
- group(
- `${chunks.reduce(
- (prev, curr, i, a) => prev + curr.byteLength,
- 0
- )} bytes for ${chunks.length} chunks`,
- () => {
- bench("Bun.concatArrayBuffers", () => {
- Bun.concatArrayBuffers(chunks);
- });
- bench("Uint8Array.set", () => {
- polyfill(chunks);
- });
-
- bench("Uint8Array.set (uninitialized memory)", () => {
- polyfillUninitialized(chunks);
- });
- }
- );
-}
-
-await run();