-
Notifications
You must be signed in to change notification settings - Fork 391
Annotate is native aot compatible #1543
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
base: master
Are you sure you want to change the base?
Annotate is native aot compatible #1543
Conversation
- Add IsAotCompatible to UnitsNet - Added EnumHelpers which provides a way to get enum values independent of target platform - Replaced generation of `GetQuantityTypes` with `RegisterDefaultConversions` to avoid reflection - Add IsAotCompatible to UnitsNet.NumberExtensions - Add IsAotCompatible to UnitsNet.JsonNet
fdb3f93
to
ee4acd1
Compare
@angularsen I rebased on the current master - it was much easier due to the latest commits And, just for fun, I added a startup performance comparison :) Default startup performance (PerfTest_Startup):
NativeAot compilation startup performance (PerfTest_Startup_Aot):
|
@OleRoss I haven't been able to do my own aot-enabled publish (haven't installed the c++ stuff yet), but am very curious to see how the 🐲 version performs: if you got the time, could you please run it against this PR: #1544 |
@lipchev, sure, I played around with it, but had difficulties getting comparable results ... I ended up creating a benchmark class which starts a process and waits for completion:
Between Run 1 and Run 2, I changed the order of the tests; Somehow, the tests seem to be affected by this, but I think the trend is clear. Apart from that, those are the results using timeitsharp (very inconsistent, just for completeness):
|
Dupliate of deleted #1532