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

Re-enable NativeAOT benchmarks that are currently not supported due to missing metadata #2338

Open
adamsitnik opened this issue Mar 30, 2022 · 1 comment
Labels
help wanted Extra attention is needed

Comments

@adamsitnik
Copy link
Member

There are currently multiple benchmarks with [AotFilter("Currently not supported due to missing metadata.")] filter applied: https://github.com/dotnet/performance/search?q=AotFilter

With dotnet/BenchmarkDotNet#1973 in theory some of these benchmarks could now work.

The person who is willing to work on that should re-enable these benchmarks (by removing the attribute), see if they work:

py .\scripts\benchmarks_ci.py -f nativeaot7.0 --filter '*ColdStartSerialization*' --bdn-arguments "--keepFiles true"

and if they don't, apply the necessary DynamicallyAccessedMembers attributes (dotnet/runtime#66085 (comment)).

If it's impossible to make it work with DAM, we most probably need to extend BDN to support rd.xml files provided by the user (dotnet/BenchmarkDotNet#1680), also suggested by @hez2010 in
https://github.com/dotnet/performance/pull/2328/files/3be06148aa1529c760deaa63d42cbde96a254152#r834076648

This would require finding the rd.xml file which is just next to project file:

https://github.com/dotnet/BenchmarkDotNet/blob/09d9396a7980dcb65be97169b8611c208af075a2/src/BenchmarkDotNet/Toolchains/NativeAot/Generator.cs#L185

and including it here:

https://github.com/dotnet/BenchmarkDotNet/blob/09d9396a7980dcb65be97169b8611c208af075a2/src/BenchmarkDotNet/Toolchains/NativeAot/Generator.cs#L188

and here:

https://github.com/dotnet/BenchmarkDotNet/blob/09d9396a7980dcb65be97169b8611c208af075a2/src/BenchmarkDotNet/Toolchains/NativeAot/Generator.cs#L153

@adamsitnik
Copy link
Member Author

Update: #2341 has been merged, it contains dotnet/BenchmarkDotNet#1976 which means that if we want to use an rd.xml file, we can now very easily do that! kudos to @kant2002 !

@LoopedBard3 LoopedBard3 added help wanted Extra attention is needed and removed up-for-grabs labels Oct 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants