Skip to content

chore: bind walltime bench to dedicated CPUs test#14328

Open
deanjingshui wants to merge 3 commits into
mainfrom
p/fenghao.0721/cpu-bind
Open

chore: bind walltime bench to dedicated CPUs test#14328
deanjingshui wants to merge 3 commits into
mainfrom
p/fenghao.0721/cpu-bind

Conversation

@deanjingshui

Copy link
Copy Markdown
Contributor

bind walltime bench to dedicated CPUs

Copilot AI review requested due to automatic review settings June 9, 2026 02:45
@deanjingshui deanjingshui requested a review from stormslowly as a code owner June 9, 2026 02:45
@deanjingshui deanjingshui changed the title chore: bind walltime bench to dedicated CPUs chore: bind walltime bench to dedicated CPUs test Jun 9, 2026
@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

📦 Binary Size-limit

Comparing a0be044 to fix(css): include local name in hash-only local idents (#14334) by AsyncIter

🙈 Size remains the same at 62.60MB

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Rsdoctor Bundle Diff Analysis

Found 5 projects in monorepo, 2 projects with changes.

📊 Quick Summary
Project Total Size Gzip Size Change Gzip Change
popular-libs 1.7 MB 551.3 KB -26.0 B (-0.0%) -27.0 B (-0.0%)
react-1k 822.8 KB 218.3 KB 0 0
react-10k 5.6 MB 1.3 MB 0 0
react-5k 2.7 MB 669.1 KB 0 0
ui-components 4.8 MB 1.4 MB -28.0 B (-0.0%) -9.0 B (-0.0%)
📋 Detailed Reports (Click to expand)

📁 popular-libs

Path: ../build-tools-performance/cases/popular-libs/dist/rsdoctor-data.json

📌 Baseline Commit: 6cf4019472 | PR: #14334

Metric Current Baseline Change
📊 Total Size 1.7 MB 1.7 MB -26.0 B (-0.0%)
🗜️ Gzip Size 551.3 KB 551.3 KB -27.0 B (-0.0%)
📄 JavaScript 1.7 MB 1.7 MB -26.0 B (-0.0%)
🎨 CSS 0 B 0 B 0
🌐 HTML 289.0 B 289.0 B 0
📁 Other Assets 0 B 0 B 0

📦 Download Diff Report: popular-libs Bundle Diff

📁 ui-components

Path: ../build-tools-performance/cases/ui-components/dist/rsdoctor-data.json

📌 Baseline Commit: 6cf4019472 | PR: #14334

Metric Current Baseline Change
📊 Total Size 4.8 MB 4.8 MB -28.0 B (-0.0%)
🗜️ Gzip Size 1.4 MB 1.4 MB -9.0 B (-0.0%)
📄 JavaScript 4.7 MB 4.7 MB -28.0 B (-0.0%)
🎨 CSS 111.7 KB 111.7 KB 0
🌐 HTML 328.0 B 328.0 B 0
📁 Other Assets 0 B 0 B 0

📦 Download Diff Report: ui-components Bundle Diff

🤖 AI Degradation Analysis (Click to expand)

📁 popular-libs

📊 Size Changes

No significant regressions detected 🎉. Total bundle size decreased slightly from 1,806,629 bytes to 1,806,603 bytes (-26 bytes). Initial JS chunk also reduced (1,806,340 → 1,806,314 bytes).

🔍 Root Cause Analysis

  • mobx: Parsed size reduced marginally (57,681 → 57,655 bytes), likely due to minor build environment variance or tree-shaking improvements.
  • No new modules or duplicate dependencies detected.

⚠️ Risk Assessment

Overall severity: Low

  • Initial chunk size decreased; there is zero negative impact on load performance or time-to-interactive.

💡 Optimization Suggestions

  1. Maintain Configuration: Current tree-shaking settings are effective; no immediate changes required.
  2. Monitor MobX: Ensure only necessary APIs are imported to keep the mobx footprint stable in future updates.

Analysis by qwen3.5-plus

📁 ui-components

📊 Size Changes

No significant regressions detected 🎉. Total JS size decreased slightly (4,964,432 → 4,964,404 bytes).

🔍 Root Cause Analysis

  • Minor parsed size reduction in @ant-design/colors (v6 & v8) drove the negligible total decrease.
  • No new modules added; existing dependencies remained stable.

⚠️ Risk Assessment

Overall severity: Low

  • Total bundle size decreased by 28 bytes with no impact on initial chunk load time.

💡 Optimization Suggestions

  1. Deduplicate Dependencies: Both @ant-design/colors@6.0.0 and @8.0.1 are present in the bundle. Align versions to eliminate duplication.
  2. Audit Dependency Tree: Investigate why two major versions of the colors package are required simultaneously.

Analysis by qwen3.5-plus

Generated by Rsdoctor GitHub Action

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Rust benchmarking GitHub Actions workflow to pin the walltime benchmark execution to a specific CPU set, aiming to reduce scheduling noise and improve measurement stability.

Changes:

  • Wrap walltime benchmark commands with taskset -c 300-315 to bind execution to dedicated CPUs.
  • Apply CPU pinning to both cargo codspeed run ... and pnpm run bench:rust paths in the walltime step.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/bench-rust.yml Outdated
Comment on lines +126 to +128
taskset -c 300-315 env RSPACK_BENCHCASES_DIR=$PWD/.bench/rspack-benchcases cargo codspeed run "${bench_args[@]}"
else
pnpm run bench:rust
taskset -c 300-315 pnpm run bench:rust
@codspeed-hq

codspeed-hq Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Merging this PR will improve performance by 27.43%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 3 improved benchmarks
✅ 49 untouched benchmarks
⏩ 40 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
WallTime bundle@threejs-10x-development 309.7 ms 196.7 ms +57.41%
WallTime bundle@threejs-10x-production-sourcemap 600.8 ms 470.1 ms +27.8%
Simulation js@collect imported identifiers 229 µs 222.6 µs +2.87%

Tip

Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.


Comparing p/fenghao.0721/cpu-bind (a0be044) with main (6cf4019)

Open in CodSpeed

Footnotes

  1. 40 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@deanjingshui deanjingshui force-pushed the p/fenghao.0721/cpu-bind branch from 2558605 to ab4ac3c Compare June 9, 2026 11:51
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.

3 participants