-
Notifications
You must be signed in to change notification settings - Fork 533
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
Support AOT with CoreRT #4968
Comments
Cross-referencing note for the Xamarin.Android team The following note from the current CoreRT repository README looks like it might play a role in the overall story for this item:
|
Mono AOT on android was marked as experimental for years, and was still available as an option. CoreRT is used commercially, Carrion (a game available on steam) uses it. We are not asking for it to be marked as commercially supported, just to be available as an alternative, in situations where Mono AOT doesn't suit. |
Xamarin.Android with MonoVM+CoreFX (.Net 6) should be testable I think end of this year. I would have thought that would the natural stepping stone to CoreRT/CoreCLR support, but am no runtime expert. |
Just wanted to refer to @MichalStrehovsky's tweet here, where he mentions several Xamarin.Android specific hooks into Mono's garbage collector. |
CoreRT is (was?) an option for the CoreCLR. At this time, there are no plans to migrate Xamarin to CoreCLR instead of MonoVM. The Mono team continues to invest in both their AOT and support for LLVM AOT, and has seen significant improvement over the past few years. |
CoreRT signicantly outperforms Mono AOT in key metrics, most importantly in startup time and deployment size. See https://medium.com/@MStrehovsky/fight-the-global-warming-compile-your-c-apps-ahead-of-time-9997e953645b
When I enabled Mono AOT on my Xamarin.Android project it increased my deployment size instead of decreasing it and although it did improve startup times, it still took almost 2 seconds to start in an app with no Reflection.Emit and very little code in the startup path.
My App is a Push To Talk app that needs to start very quickly after a radio calls starts in order to not miss communications. Mono AOT is simply not upto the task.
It would be nice to have CoreRT as a AOT option on Android.
The text was updated successfully, but these errors were encountered: