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

[MONO] Add AOT compiler to desktop runtime pack #48927

Open
naricc opened this issue Mar 1, 2021 · 14 comments
Open

[MONO] Add AOT compiler to desktop runtime pack #48927

naricc opened this issue Mar 1, 2021 · 14 comments
Assignees
Milestone

Comments

@naricc
Copy link
Member

naricc commented Mar 1, 2021

The runtime pack should include the mono-sgen binary for use as an AOT compiler; this simplifies a lot of testing and benchmarking tasks. It might also be useful for developers who want to test any AOT stuff with out using an iOS/Android simulator.

@naricc naricc self-assigned this Mar 1, 2021
@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Mar 1, 2021
@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.

@radical
Copy link
Member

radical commented Mar 2, 2021

/cc @lewing

@lewing
Copy link
Member

lewing commented Mar 2, 2021

I think the plan is to move to using the AOT compiler nugets to pull in the compiler, and remove the included one?

@lewing
Copy link
Member

lewing commented Mar 2, 2021

cc @steveisok

@steveisok
Copy link
Member

@naricc I responded to you earlier w/o thinking and skipped a few important details. The pattern for our AOT compilers moving forward is to not be bundled inside the runtime pack, but within their own nuget package. At the end of the day, it'll be similar and I don't think generating an osx mono-aot-cross binary is going to be that big of a thing.

You would add something like <BuildMonoAOTCrossCompiler Condition="'$(TargetsOSX)' == 'true'">true</BuildMonoAOTCrossCompiler> below

<BuildMonoAOTCrossCompiler Condition="'$(TargetsAndroid)' == 'true'">true</BuildMonoAOTCrossCompiler>
. That may get you most of the way. Then, I think it's about modifying the installer from there. @directhex would be the best person to ping.

@naricc
Copy link
Member Author

naricc commented Mar 4, 2021

So, mono-sgen is already the non-cross AOT compiler, and we already build it right? Should I close out this issue then?

@steveisok
Copy link
Member

We build it, but do not bundle it. If we want to use it outside of runtime, then we should package it like the mobile ones.

@naricc
Copy link
Member Author

naricc commented Mar 4, 2021

Package it like the mobiles ones means put mono-sgen in its own nuget then?

@steveisok
Copy link
Member

Presumably. I'd like to think it's as simple as that.

/cc @akoeplinger

@SamMonoRT SamMonoRT removed the untriaged New issue has not been triaged by the area owner label Jun 18, 2021
@SamMonoRT SamMonoRT added this to the 6.0.0 milestone Jun 18, 2021
@SamMonoRT
Copy link
Member

@naricc @akoeplinger - is this going to be possible by Preview 7 cutoff ?

@naricc
Copy link
Member Author

naricc commented Jun 18, 2021

I don't think it is hard to do, but I have never actually done this kind of work before, so it's hard for me to give an accurate estimate. If we want to prioritize it, I don't see why it wouldn't be possible though.

@SamMonoRT SamMonoRT modified the milestones: 6.0.0, 7.0.0 Jun 21, 2021
@SamMonoRT
Copy link
Member

This is a nice to have feature. Moving to 7.0, not required for 6.0.0

@naricc
Copy link
Member Author

naricc commented Jun 20, 2022

This is a useful feature, but not something we have been able to prioritize.

@naricc naricc modified the milestones: 7.0.0, 8.0.0 Aug 1, 2022
@SamMonoRT SamMonoRT assigned kotlarmilos and unassigned naricc Apr 10, 2023
@kotlarmilos kotlarmilos modified the milestones: 8.0.0, Future May 19, 2023
@kotlarmilos
Copy link
Member

@akoeplinger Is this a requirement for .NET 8, or can it be postponed after RC1/RC2?

@kotlarmilos kotlarmilos modified the milestones: Future, 9.0.0 Jul 13, 2023
@kotlarmilos kotlarmilos modified the milestones: 9.0.0, Future Feb 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants