Skip to content

unexpand: remove Box dyn - perf +7.5%#11806

Merged
cakebaker merged 1 commit into
uutils:mainfrom
oech3:unex-dyn
Apr 15, 2026
Merged

unexpand: remove Box dyn - perf +7.5%#11806
cakebaker merged 1 commit into
uutils:mainfrom
oech3:unex-dyn

Conversation

@oech3

@oech3 oech3 commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@codspeed-hq

codspeed-hq Bot commented Apr 14, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 7.52%

⚡ 2 improved benchmarks
✅ 307 untouched benchmarks
⏩ 46 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation unexpand_many_lines[100000] 145.8 ms 135.7 ms +7.51%
Simulation unexpand_large_file[10] 305.6 ms 284.2 ms +7.52%

Comparing oech3:unex-dyn (b4318a8) with main (05466bb)

Open in CodSpeed

Footnotes

  1. 46 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.

@oech3 oech3 changed the title unexpand: remove Box dyn unexpand: remove Box dyn - perf +7.5% Apr 14, 2026
@github-actions

github-actions Bot commented Apr 14, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

Congrats! The gnu test tests/tail/retry is no longer failing!
Congrats! The gnu test tests/cut/cut-huge-range is now passing!

@oech3 oech3 marked this pull request as ready for review April 14, 2026 12:48
@xtqqczze

xtqqczze commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

Can we define the enum like in comm.rs?:

enum Input {
Stdin(StdinLock<'static>),
FileIn(BufReader<File>),
}

Comment thread src/uu/unexpand/src/unexpand.rs Outdated
@oech3

This comment was marked as outdated.

@xtqqczze

Copy link
Copy Markdown
Contributor

Contributes to #11811

@cakebaker cakebaker merged commit b2619df into uutils:main Apr 15, 2026
168 of 169 checks passed
@cakebaker

Copy link
Copy Markdown
Contributor

Kudos for the performance improvement, thanks!

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