From 76b1a3a88d68543a29e74c8bc0319e878528a4ac Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Wed, 28 Sep 2022 14:38:15 -0700 Subject: Bench snippet for Array.map --- bench/snippets/array-map.mjs | 54 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 bench/snippets/array-map.mjs (limited to 'bench/snippets/array-map.mjs') diff --git a/bench/snippets/array-map.mjs b/bench/snippets/array-map.mjs new file mode 100644 index 000000000..56f0cc3c3 --- /dev/null +++ b/bench/snippets/array-map.mjs @@ -0,0 +1,54 @@ +// https://github.com/oven-sh/bun/issues/1096 +import { bench, run } from "mitata"; + +for (let i = 0; i < 20; i++) { + var array = new Array(i); + for (let j = 0; j < i; j++) { + array[j] = 1; + } + + bench("Array.map x " + i, () => array.map(identity)); +} + +bench("inline Array.map x 0", () => [].map(identity)); +bench("inline Array.map x 1", () => [1].map(identity)); +bench("inline Array.map x 2", () => [1, 1].map(identity)); +bench("inline Array.map x 3", () => [1, 1, 1].map(identity)); +bench("inline Array.map x 4", () => [1, 1, 1, 1].map(identity)); +bench("inline Array.map x 5", () => [1, 1, 1, 1, 1].map(identity)); +bench("inline Array.map x 6", () => [1, 1, 1, 1, 1, 1].map(identity)); +bench("inline Array.map x 7", () => [1, 1, 1, 1, 1, 1, 1].map(identity)); +bench("inline Array.map x 8", () => [1, 1, 1, 1, 1, 1, 1, 1].map(identity)); +bench("inline Array.map x 9", () => [1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity)); +bench("inline Array.map x 10", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 11", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 12", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 13", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 14", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 15", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 16", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 17", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 18", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); +bench("inline Array.map x 19", () => + [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1].map(identity) +); + +await run(); -- cgit v1.2.3