aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-07-04 08:39:07 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-07-04 08:39:07 -0700
commit17045601e7244908ab45567e116b7e00654bbc1c (patch)
tree0f94c89702e131d170c783edf68ee66c4998c009
parentc3ea15f4bc3f74bd5aec4b29095054f24be61296 (diff)
downloadbun-17045601e7244908ab45567e116b7e00654bbc1c.tar.gz
bun-17045601e7244908ab45567e116b7e00654bbc1c.tar.zst
bun-17045601e7244908ab45567e116b7e00654bbc1c.zip
[bench] Add an ffi data overhead bench
-rw-r--r--bench/ffi/ffi-data-overhead.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/bench/ffi/ffi-data-overhead.js b/bench/ffi/ffi-data-overhead.js
new file mode 100644
index 000000000..3bc2884f4
--- /dev/null
+++ b/bench/ffi/ffi-data-overhead.js
@@ -0,0 +1,33 @@
+import {
+ viewSource,
+ dlopen,
+ CString,
+ ptr,
+ toBuffer,
+ toArrayBuffer,
+ FFIType,
+ callback,
+} from "bun:ffi";
+
+import { bench, group, run } from "mitata";
+
+var buffer = new Uint8Array(32);
+var bufferPtr = ptr(buffer);
+var arrayBuffer = new ArrayBuffer(32);
+bench("ptr(Uint8Array)", () => {
+ return ptr(buffer);
+});
+
+bench("ptr(ArrayBuffer)", () => {
+ return ptr(arrayBuffer);
+});
+
+bench("toBuffer(ptr)", () => {
+ return toBuffer(bufferPtr, 32);
+});
+
+bench("toArrayBuffer(ptr)", () => {
+ return toArrayBuffer(bufferPtr, 32);
+});
+
+await run();