ci(benchmark/react): enable "LYNX_ENABLE_FROZEN_MODE=true"#1623
ci(benchmark/react): enable "LYNX_ENABLE_FROZEN_MODE=true"#1623colinaaa merged 1 commit intolynx-family:mainfrom
Conversation
|
📝 WalkthroughWalkthroughUpdated two commit hash constants in the BenchX CLI build script and added an iterative Fibonacci implementation plus a new benchmark entry in a React benchmark case. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Suggested reviewers
Poem
✨ Finishing Touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
Status, Documentation and Community
|
There was a problem hiding this comment.
Pull Request Overview
This PR enables frozen mode for React benchmarks by updating commit hashes and simplifying benchmark command configurations. The changes remove repeat parameters and update commit references to implement frozen mode optimization.
- Updates commit hashes in the benchmark CLI build script to enable frozen mode
- Simplifies benchmark commands by removing explicit repeat parameters
- Standardizes perfetto benchmark execution configuration
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| packages/lynx/benchx_cli/scripts/build.mjs | Updates COMMIT and PICK_COMMIT hashes to reference frozen mode implementation |
| benchmark/react/package.json | Removes --repeat parameters from perfetto benchmark commands |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
packages/lynx/benchx_cli/scripts/build.mjs (1)
32-33: Nit: clarify constant intent.Consider more descriptive names or comments for maintainers skimming the file.
-const COMMIT = 'f557bc907f8eac7d45386d493dea9b808d98dd7d'; -const PICK_COMMIT = '471ebc337ca762e08de0d1e488e21ed79c8107c1'; +// Upstream lynx commit to build from (base) +const UPSTREAM_LYNX_COMMIT = 'f557bc907f8eac7d45386d493dea9b808d98dd7d'; +// Patch to cherry-pick (applied with -n, not changing HEAD) +const UPSTREAM_PATCH_COMMIT = '471ebc337ca762e08de0d1e488e21ed79c8107c1';If you adopt the rename, propagate usages accordingly.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
packages/lynx/benchx_cli/scripts/build.mjs(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
- GitHub Check: build / Build (Windows)
- GitHub Check: build / Build (Ubuntu)
- GitHub Check: test-rust / Test (Ubuntu)
- GitHub Check: CodeQL Analyze (javascript-typescript)
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Web Explorer#4683 Bundle Size — 367.43KiB (0%).f826198(current) vs 1a32dd8 main#4681(baseline) Bundle metrics
Bundle size by type
|
| Current #4683 |
Baseline #4681 |
|
|---|---|---|
235.43KiB |
235.43KiB |
|
100.16KiB |
100.16KiB |
|
31.84KiB |
31.84KiB |
Bundle analysis report Branch hzy:p/hzy/bench_2 Project dashboard
Generated by RelativeCI Documentation Report issue
React Example#4690 Bundle Size — 237.06KiB (0%).f826198(current) vs 1a32dd8 main#4688(baseline) Bundle metrics
|
| Current #4690 |
Baseline #4688 |
|
|---|---|---|
0B |
0B |
|
0B |
0B |
|
0% |
0% |
|
0 |
0 |
|
4 |
4 |
|
158 |
158 |
|
64 |
64 |
|
45.83% |
45.83% |
|
2 |
2 |
|
0 |
0 |
Bundle size by type no changes
| Current #4690 |
Baseline #4688 |
|
|---|---|---|
145.76KiB |
145.76KiB |
|
91.3KiB |
91.3KiB |
Bundle analysis report Branch hzy:p/hzy/bench_2 Project dashboard
Generated by RelativeCI Documentation Report issue
CodSpeed Performance ReportMerging #1623 will degrade performances by 11.62%Comparing 🎉 Hooray!
|
| Benchmark | BASE |
HEAD |
Change | |
|---|---|---|---|---|
| 🆕 | more faster fib(20) |
N/A | 16.2 µs | N/A |
| ❌ | 002-hello-reactLynx-commitChanges |
86.3 µs | 97.7 µs | -11.62% |
| ❌ | basic-performance-nest-level-100 |
6.2 ms | 7 ms | -11.61% |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (2)
benchmark/react/cases/001-fib/index.ts (2)
27-37: Renamefib3and align base-case check.Use a descriptive name and match the base-case style used in
fib/fib2.- function fib3(n: number): number { - if (n === 0) return 0; - if (n === 1) return 1; + function fibIterative(n: number): number { + if (n <= 1) return n; let prev = 0, curr = 1; for (let i = 2; i <= n; i++) { const next = prev + curr; prev = curr; curr = next; } return curr; }
48-50: Use clear, stable task name and update call.Avoid “more faster”; prefer algorithmic naming for result stability.
- .add(`${__REPO_FILEPATH__}::more faster fib(20)`, () => { - fib3(20); + .add(`${__REPO_FILEPATH__}::iterative fib(20)`, () => { + fibIterative(20); })Note: Consider renaming the other tasks to
memoized fib(20)andrecursive fib(20)for consistency.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (2)
benchmark/react/cases/001-fib/index.ts(2 hunks)packages/lynx/benchx_cli/scripts/build.mjs(2 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- packages/lynx/benchx_cli/scripts/build.mjs
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: build / Build (Windows)
- GitHub Check: build / Build (Ubuntu)
- GitHub Check: test-rust / Test (Ubuntu)
- GitHub Check: CodeQL Analyze (actions)
- GitHub Check: CodeQL Analyze (javascript-typescript)
Summary by CodeRabbit
Chores
Tests
Notes
Checklist