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

SE: Optimize SymbolicCheckList.InvokeChecks #7061

Conversation

martin-strecker-sonarsource
Copy link
Contributor

Part of #6964

This is a more simple but also less efficient optimization than #7059. #7059 should be preferred as it allows to simplify the engine as well.

Simple refactoring which results in some modest reduction in allocations for SonarAnalyzer.SymbolicExecution.Roslyn.SymbolicContext[]. There were some unnecessary array copies taking place because of the ToArray call. The capacity is optimized for the common cases now.

The changes for SonarAnalyzer.SymbolicExecution.Roslyn.SymbolicContext[] are:

Measure Before After
No of objects 17.842 12.514
Allocated bytes 822.584 484.528

The change does not have a measurable impact in total (~1% improvement).

@martin-strecker-sonarsource martin-strecker-sonarsource added the Sprint: SE Short-lived* label for epic MMF-3077 *troll label Apr 12, 2023
@github-actions github-actions bot added this to In progress in Best Kanban Apr 12, 2023
@martin-strecker-sonarsource martin-strecker-sonarsource removed this from In progress in Best Kanban Apr 14, 2023
@sonarcloud
Copy link

sonarcloud bot commented Apr 28, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@sonarcloud
Copy link

sonarcloud bot commented Apr 28, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

100.0% 100.0% Coverage
0.0% 0.0% Duplication

@martin-strecker-sonarsource
Copy link
Contributor Author

Closed. #7059 is the favourable approach

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Sprint: SE Short-lived* label for epic MMF-3077 *troll
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant