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

Improvement request for the local testing script for microbenchmarks #3385

Closed
5 of 6 tasks
fanyang-mono opened this issue Oct 5, 2023 · 4 comments
Closed
5 of 6 tasks
Assignees

Comments

@fanyang-mono
Copy link
Member

fanyang-mono commented Oct 5, 2023

To summarize the suggestion listed in #3338. I would like to propose several enhancements for consideration to be incorporated into the local testing script for microbenchmarks:

@LoopedBard3
Copy link
Member

For the profiling option, adding --bdn-arguments "-p EP" will enable that specific profiler. Any BDN specific arguments can also be passed this way, such as --buildTimeout. Since this is not documented great, I will make sure to add a section on it to a proper README (I also added creating a README to the list of items).

@matouskozak
Copy link
Member

matouskozak commented Oct 12, 2023

I was trying the local benchmark script on DevBox x64 WSL Ubuntu and it takes quite a while to run all microbenchmarks (10-13h depending on the configuration). I was thinking, if for local testing, we might disable some long running microbenchmarks or try to select a set of microbenchmarks that usually are the problematic ones (on Mono side those are vectors, strings, span, collections) and create an alias for the --filter argument to run just those.

@LoopedBard3
Copy link
Member

I have a PR out for an initial README: #3468. All feedback is welcome. Right now, there is a placeholder section for useful filters that could also use some suggestions.

@LoopedBard3
Copy link
Member

With the merging of #3934, which removes the default of terminating all dotnet processes during runs, a major reason for having containers to run the script in is fixed.

For the building of the runtime as non-admin, I was not able to find any clear path to achieve this cleanly for both windows and linux in python. A manual alternative to this is to initially only build the runtime with --build-only and --allow-non-admin-execution arguments set, and then run again without them set. Unfortunately, this would require two calls to the program. If a clear path is found that enables this work, then it can be revisited.

With all of this, I am closing this issue. Please leave any additional comments/feedback either here or in a new issue.

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

No branches or pull requests

3 participants