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 AOT size savings efforts #80938

Open
8 of 16 tasks
kotlarmilos opened this issue Jan 20, 2023 · 2 comments
Open
8 of 16 tasks

Mono AOT size savings efforts #80938

kotlarmilos opened this issue Jan 20, 2023 · 2 comments
Assignees
Labels
area-Codegen-AOT-mono os-ios Apple iOS tracking This issue is tracking the completion of other related issues.
Milestone

Comments

@kotlarmilos
Copy link
Member

kotlarmilos commented Jan 20, 2023

Overview

This issue tracks progress on goals for Mono AOT size savings planned in .NET 8 and .NET 9. Outcome of this effort is to reduce disk size in iOS and WASM apps that use Mono AOT engine. The work will be organised and tracked with GitHub issues. Some of the listed items can be considered as user stories and will require further break-down of work, while the others are plain tasks.

General optimizations

Experimental optimizations

/cc: @fanyang-mono @jandupej @ivanpovazan @LeVladIonescu @lambdageek @vargaz @SamMonoRT @marek-safar

@kotlarmilos kotlarmilos added Epic Groups multiple user stories. Can be grouped under a theme. area-Codegen-AOT-mono os-ios Apple iOS labels Jan 20, 2023
@kotlarmilos kotlarmilos added this to the 8.0.0 milestone Jan 20, 2023
@kotlarmilos kotlarmilos self-assigned this Jan 20, 2023
@ghost
Copy link

ghost commented Jan 20, 2023

Tagging subscribers to 'os-ios': @steveisok, @akoeplinger
See info in area-owners.md if you want to be subscribed.

Issue Details

Overview

This issue tracks progress on goals for Mono AOT size savings planned in .NET 8. Outcome of this effort is to reduce disk size in apps that use Mono AOT engine in full-LLVM mode. The work will be organised and tracked with GitHub issues. Some of the listed items can be considered as user stories and will require further break-down of work, while the others are plain tasks.

Tasks

  • Trim inflated gshared methods in Vector/Scalar classes when SIMD is enabled
  • Optimizing generics by using ILCompiler dependency graph and profile guided optimization
  • Deduplication of symbols by using dedup/linkonce features
  • Mono AOT full program analyses and interprocedural optimizations
  • Enhance IL stripping in MAUI android apps

/cc: @fanyang-mono @jandupej @ivanpovazan @LeVladIonescu @lambdageek @vargaz @SamMonoRT @marek-safar

Author: kotlarmilos
Assignees: kotlarmilos
Labels:

Epic, area-Codegen-AOT-mono, os-ios

Milestone: 8.0.0

@marek-safar marek-safar added tracking This issue is tracking the completion of other related issues. and removed Epic Groups multiple user stories. Can be grouped under a theme. labels Jan 24, 2023
@SamMonoRT SamMonoRT changed the title Mono AOT size savings in .NET 8 Mono AOT size savings efforts Mar 24, 2023
@SamMonoRT SamMonoRT modified the milestones: 8.0.0, Future Mar 24, 2023
@ivanpovazan
Copy link
Member

@kotlarmilos I have update the description and included the discussed sub tasks under the Experimental optimizations

@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
Labels
area-Codegen-AOT-mono os-ios Apple iOS tracking This issue is tracking the completion of other related issues.
Projects
None yet
Development

No branches or pull requests

4 participants