diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2022-07-22 17:54:22 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-22 17:54:22 +0530 |
commit | 03dc3b8972f460e40d0b75fc3207cae9fe4f60da (patch) | |
tree | 410bc92530e34ca2eee8a154f705be85ae9641b3 /cli/bench/deno_common.js | |
parent | 244c00d95b7ec8f30a5e81b743b4b618049b6c37 (diff) |
feat(ops): V8 Fast Calls (#15122)
Co-authored-by: Bartek IwaĆczuk <biwanczuk@gmail.com>
Diffstat (limited to 'cli/bench/deno_common.js')
-rw-r--r-- | cli/bench/deno_common.js | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/cli/bench/deno_common.js b/cli/bench/deno_common.js index c31ccd981..c02a6c883 100644 --- a/cli/bench/deno_common.js +++ b/cli/bench/deno_common.js @@ -5,8 +5,31 @@ Deno.bench("date_now", { n: 5e5 }, () => { Date.now(); }); +// Fast API calls +{ + // deno-lint-ignore camelcase + const { op_add } = Deno.core.ops; + // deno-lint-ignore no-inner-declarations + function add(a, b) { + return op_add.call(a, b); + } + // deno-lint-ignore no-inner-declarations + function addJS(a, b) { + return a + b; + } + Deno.bench("op_add", { n: 1e7 }, () => add(1, 2)); + Deno.bench("add_js", { n: 1e7 }, () => addJS(1, 2)); +} + +// deno-lint-ignore camelcase +const { op_void_sync } = Deno.core.ops; +function sync() { + return op_void_sync.call(); +} +sync(); // Warmup +console.log(sync()); // Void ops measure op-overhead -Deno.bench("op_void_sync", { n: 1e7 }, () => Deno.core.opSync("op_void_sync")); +Deno.bench("op_void_sync", { n: 1e7 }, () => sync()); Deno.bench( "op_void_async", |