mirror of
https://github.com/denoland/deno.git
synced 2025-08-04 19:08:15 +00:00
perf(core): preserve ops between snapshots (#18080)
This commit changes the build process in a way that preserves already registered ops in the snapshot. This allows us to skip creating hundreds of "v8::String" on each startup, but sadly there is still some op registration going on startup (however we're registering 49 ops instead of >200 ops). This situation could be further improved, by moving some of the ops from "runtime/" to a separate extension crates. --------- Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
This commit is contained in:
parent
9bfa8dc90c
commit
4b6305f4f2
54 changed files with 278 additions and 125 deletions
|
@ -5,7 +5,6 @@ use std::path::PathBuf;
|
|||
|
||||
use deno_core::snapshot_util::*;
|
||||
use deno_core::Extension;
|
||||
use deno_core::ExtensionBuilder;
|
||||
use deno_core::ExtensionFileSource;
|
||||
use deno_core::ExtensionFileSourceCode;
|
||||
use deno_runtime::deno_cache::SqliteBackedCache;
|
||||
|
@ -318,7 +317,7 @@ deno_core::extension!(
|
|||
dir "js",
|
||||
"40_testing.js"
|
||||
],
|
||||
customizer = |ext: &mut ExtensionBuilder| {
|
||||
customizer = |ext: &mut deno_core::ExtensionBuilder| {
|
||||
ext.esm(vec![ExtensionFileSource {
|
||||
specifier: "runtime/js/99_main.js".to_string(),
|
||||
code: ExtensionFileSourceCode::LoadedFromFsDuringSnapshot(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue