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

SPMI: Avoid reading entire details CSV file into memory #99116

Merged
merged 1 commit into from
Feb 29, 2024

Conversation

jakobbotsch
Copy link
Member

@jakobbotsch jakobbotsch commented Feb 29, 2024

Switch to a streaming approach when processing the details CSV file to save on the peak memory usage. We still need to save the rows with diffs to be able to be able to pick examples to disassemble, but that list is expected to be way smaller than the full set of methods replayed.

I hit a MemoryError during asmdiffs in #99048. Hopefully this fixes it.

cc @dotnet/jit-contrib

Switch to a streaming approach when processing the details CSV file to
save on the peak memory usage. We still need to save the rows with diffs
to be able to be able to pick examples to disassembly, but that list is
expected to be way smaller than the full set of methods replayed.
@ghost ghost assigned jakobbotsch Feb 29, 2024
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Feb 29, 2024
@ghost
Copy link

ghost commented Feb 29, 2024

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

Switch to a streaming approach when processing the details CSV file to save on the peak memory usage. We still need to save the rows with diffs to be able to be able to pick examples to disassembly, but that list is expected to be way smaller than the full set of methods replayed.

I hit a MemoryError during asmdiffs in #99048. Hopefully this fixes it.

cc @dotnet/jit-contrib

Author: jakobbotsch
Assignees: jakobbotsch
Labels:

area-CodeGen-coreclr

Milestone: -

@jakobbotsch
Copy link
Member Author

ping @dotnet/jit-contrib, simple change that should fix some potential SPMI asmdiffs flakiness in CI.

Copy link
Member

@kunalspathak kunalspathak left a comment

Choose a reason for hiding this comment

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

LGTM

@jakobbotsch jakobbotsch merged commit 0eb3a6f into dotnet:main Feb 29, 2024
108 of 110 checks passed
@jakobbotsch jakobbotsch deleted the read-csv-streaming branch February 29, 2024 21:38
@github-actions github-actions bot locked and limited conversation to collaborators Mar 31, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants