aboutsummaryrefslogtreecommitdiff
path: root/bench/ffi/ffi-data-overhead.js
blob: 3bc2884f4ab8dacf57af9b617f433391bf95d088 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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();