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

lazy compilation for .NET targets (beta-3.0) #487

Merged
merged 3 commits into from
Aug 31, 2023

Conversation

mortend
Copy link
Member

@mortend mortend commented May 26, 2023

appveyor: use -DLAZY when testing the dotnet target

We want to make sure this feature keeps on working. This is the first
iteration and more updates are expected.

engine: lazy compilation for .NET targets

Pass -DLAZY to "uno build" to enable lazy compilation (experimental).

We've seen around 10x[1] speed-up on subsequent builds of a normal app
when lazy compilation is enabled, since there is minimal work to do
when most of the code is already built.

The feature is experimental for now, but we might want to take
advantage of this (e.g. in the Fuse X editor) when the feature
matures a bit more, to speed up loading times in a significant way
by prebuilding standard libraries (including Fuselibs), and better
caching.

1: More or less, depending on project size

compiler: support lazy compilation

This modifies the compiler to only compile something when it is needed
and not compiled before, rather than always compiling everything,
significantly speeding up compilation time when enabled.

This modifies the compiler to only compile something when it is needed
and not compiled before, rather than always compiling everything,
significantly speeding up compilation time when enabled.
Pass -DLAZY to "uno build" to enable lazy compilation (experimental).

We've seen around 10x[1] speed-up on subsequent builds of a normal app
when lazy compilation is enabled, since there is minimal work to do
when most of the code is already built.

The feature is experimental for now, but we might want to take
advantage of this (e.g. in the Fuse X editor) when the feature
matures a bit more, to speed up loading times in a significant way
by prebuilding standard libraries (including Fuselibs), and better
caching.

1: More or less, depending on project size
We want to make sure this feature keeps on working. This is the first
iteration and more updates are expected.
@mortend mortend merged commit 2513622 into fuse-open:beta-3.0 Aug 31, 2023
@mortend mortend deleted the lazy branch August 31, 2023 05:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant