Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2015 hackathon misc optimization 2024 rebase #134

Merged
merged 6 commits into from
Nov 12, 2024

Conversation

bulk88
Copy link
Contributor

@bulk88 bulk88 commented Nov 10, 2024

This is a 2024 rebase of the 2016 code in #52

All the not Win32 specific optimization patches are in this PR now. This decouples the Win32 parallel IO feature/PR from these performance patches. The issues were found with nytprof and step debugging high hit count parts of T::H.

With 1 million tests processed, NYTProf shows this sub was called once for
each test processed, but the print block only executed 1600 times. So dont
compute the output method name, and dont fetch the current test number, if
we aren't going to use it.
… behavior between runs"

This partially reverts commit 4d4d3f0.
In "Unknown arguments to TAP::Harness::new" croak, sorting was kept, but
moved into the branch where it is needed.
new() went from 17.2 seconds (/1000000) exclusive time nytprof to 12.2
seconds after this commit.
Also combine subs with identical bodies. On Win32, memory usage sampled
with "perl -MTAP::Parser::Iterator -E"system 'pause'" caused memory usage
to drop from 2,688KB to 2,672KB after this commit for me.

next() dropped from 68us inclusive to 44us with nytprof, for comparison
next_raw is 39us. next() is called once per test so it is hot.

# Conflicts:
#	t/compat/test-harness-compat.t
If something is very wrong with the TAP stream, don't silence $@ die
errors.
@Leont
Copy link
Member

Leont commented Nov 10, 2024

LGTM

@Leont Leont self-assigned this Nov 10, 2024
@Leont Leont merged commit 7b1452a into Perl-Toolchain-Gang:master Nov 12, 2024
9 of 17 checks passed
@mohawk2 mohawk2 mentioned this pull request Nov 12, 2024
@bulk88 bulk88 deleted the 2015_hackathon_misc_optim branch November 12, 2024 23:00
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