Skip to content

perf: batch lazy builtin initialization - #15

Open
Eric-Song-Nop wants to merge 3 commits into
perf/release-cleanup-fast-pathfrom
perf/batch-builtin-initialization
Open

perf: batch lazy builtin initialization#15
Eric-Song-Nop wants to merge 3 commits into
perf/release-cleanup-fast-pathfrom
perf/batch-builtin-initialization

Conversation

@Eric-Song-Nop

Copy link
Copy Markdown

Stacked on #14. Base: perf/release-cleanup-fast-path; head: perf/batch-builtin-initialization, both in pocket-stack/quickjs-oxide. Review and merge in dependency order.

Migrated from Eric-Song-Nop#5 with identical commits and preserved measurement/validation evidence.

Context creation installed 121 Date/Array/TypedArray lazy methods individually, repeatedly replacing growing layouts. Install those methods in eight batches through the existing layout/ownership path, preserving property order, flags, metadata, lazy identity, realm ownership and alias boundaries.

将 121 项内建懒方法改为 8 批发布,复用现有布局与所有权机制,保留属性顺序、标志、函数元数据、realm 和别名关系。

  • Context creation: 2.286008 → 1.756603 ms (−23.16%); layout replacements 778 → 665 per Context. / 初始化耗时与中间布局工作减少。
  • Performance limitation: fixed property reads are 4.17% slower in the main series and 2.37% slower in six CPU-2-pinned follow-up pairs. Root cause remains unresolved; this is not a general interpreter speedup. / 固定属性负载存在已复测确认的回退,未宣称整体解释器加速。
  • Full existing matrix: all eight V8 cases screened on three versions; four complete with three valid runs/version, four hit the 90-second timeout on every version. All five default microbench cases complete three runs/version. / 完整保留有效分数、超时和回退结果。
  • Validation: 3018 Rust tests pass, 690 isolation canaries rejected, strict Clippy in three configurations, formatting/source-layout/Rust-only pass. 102037 Test262 result rows are identical before/after. Both frozen full-file checksum gates still exit 1 because only the source-fingerprint header changes; no frozen baseline changed. / Test262 逐条无变化;冻结文件校验的既有失败明确保留。

Bilingual report, measurements and raw-archive receipt / 双语报告与原始证据

Latest original PR CI failed at the inherited CLI integration-target inventory check (test262-host-metadata.py); the CLI targets and this check are unchanged by this PR. This is separate from the manual validation reported above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant