Skip to content

inflate: Use wider loads/stores with LSX#548

Merged
folkertdev merged 1 commit into
trifectatechfoundation:mainfrom
Gelbpunkt:inflate-lsx-hints
Jul 16, 2026
Merged

inflate: Use wider loads/stores with LSX#548
folkertdev merged 1 commit into
trifectatechfoundation:mainfrom
Gelbpunkt:inflate-lsx-hints

Conversation

@Gelbpunkt

Copy link
Copy Markdown
Contributor

Some pretty nice gains and AFAICT the last remaining place where we are missing LSX optimizations:

Benchmark 1 (107 runs): target/release/examples/uncompress-baseline rs silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          46.6ms ± 1.30ms    44.9ms … 50.3ms          4 ( 4%)        0%
  peak_rss           35.2MB ± 13.1MB    22.0MB … 56.3MB          0 ( 0%)        0%
  cpu_cycles         91.9M  ± 1.58M     89.3M  … 96.8M           2 ( 2%)        0%
  instructions        264M  ±    0       264M  …  264M           0 ( 0%)        0%
  cache_references   63.4M  ± 21.3K     63.2M  … 63.4M           1 ( 1%)        0%
  cache_misses       1.22M  ±  328K      982K  … 2.23M          11 (10%)        0%
Benchmark 2 (113 runs): target/release/examples/blogpost-uncompress rs silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          44.2ms ± 1.48ms    42.4ms … 47.5ms          0 ( 0%)        ⚡-  5.2% ±  0.8%
  peak_rss           36.0MB ± 13.9MB    22.8MB … 56.2MB          0 ( 0%)          +  2.2% ± 10.2%
  cpu_cycles         86.4M  ± 1.72M     83.9M  … 90.6M           0 ( 0%)        ⚡-  6.0% ±  0.5%
  instructions        255M  ±    0       255M  …  255M           0 ( 0%)        ⚡-  3.1% ±  0.0%
  cache_references   62.1M  ± 17.5K     62.0M  … 62.1M           4 ( 4%)        ⚡-  2.0% ±  0.0%
  cache_misses       1.10M  ±  206K      963K  … 1.88M           9 ( 8%)        ⚡-  9.7% ±  5.9%

@codecov

codecov Bot commented Jul 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Flag Coverage Δ
fuzz-compress ?
fuzz-decompress ?
test-aarch64-apple-darwin 89.15% <ø> (ø)
test-aarch64-unknown-linux-gnu 84.87% <ø> (-0.02%) ⬇️
test-i686-unknown-linux-gnu 84.38% <ø> (+0.01%) ⬆️
test-x86_64-apple-darwin 88.09% <ø> (-0.02%) ⬇️
test-x86_64-unknown-linux-gnu 90.44% <ø> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
zlib-rs/src/inflate/writer.rs 90.67% <ø> (+0.37%) ⬆️

... and 3 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@folkertdev

Copy link
Copy Markdown
Member

Nice!

@folkertdev
folkertdev merged commit 5a82af8 into trifectatechfoundation:main Jul 16, 2026
41 checks passed
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.

2 participants