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

GC pressure caused by allocations in PatternExpression.Match #5667

Closed
sharwell opened this issue Jul 28, 2017 · 1 comment
Closed

GC pressure caused by allocations in PatternExpression.Match #5667

sharwell opened this issue Jul 28, 2017 · 1 comment
Labels
Tenet:Performance Performance issues
Milestone

Comments

@sharwell
Copy link

Opening Roslyn.sln on Visual Studio 2017 (15.3 Preview 6)

📝 The allocations due to #5665 are not included in the numbers presented for this issue.

Cause Amount
LiteralSegment.TryMatch calls Substring 1334MiB
TokenSegment.TryMatch calls string.Concat 1159MiB ¹
TokenSegment.TryMatch calls string.Substring 565MiB
TokenSegment.TryMatch converts char to string 215MiB ¹

¹ These are both caused by the expression item.Path + _delimiter.

@benaadams
Copy link

I think NuGet/NuGet.Client#1590 mostly resolved this

@emgarten emgarten added this to the 4.4 milestone Aug 7, 2017
@emgarten emgarten added the Tenet:Performance Performance issues label Aug 7, 2017
@emgarten emgarten closed this as completed Aug 7, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Tenet:Performance Performance issues
Projects
None yet
Development

No branches or pull requests

3 participants