Open rolfbjarne opened 1 month ago
In tests with my real-world apps, build + deploy times to the simulator are ~16 seconds when only specifying UseInterpreter
and ~13-14 seconds when specifying both UseInterpreter
& TrimMode=partial
. Will this change yield similar results? I am asking because in the commit it says
Linking is on by default in the simulator when building for arm64, as long as the interpreter is not enabled
In tests with my real-world apps, build + deploy times to the simulator are ~16 seconds when only specifying
UseInterpreter
and ~13-14 seconds when specifying bothUseInterpreter
&TrimMode=partial
. Will this change yield similar results? I am asking because in the commit it saysLinking is on by default in the simulator when building for arm64, as long as the interpreter is not enabled
bc1ae55
/dotnet/targets/Xamarin.Shared.Sdk.Trimming.props#L57C1-L58C1
Yes, you should get some similar results (probably somewhere between 13 and 16 seconds).
It should be easy enough for you to try it, by building with "TrimMode=partial" (without setting UseInterpreter).
Only tested with one app, but the build & deploy time to simulator increased from 16 seconds to 21 seconds when removing UseInterpreter=false
and using TrimMode=partial
only
The default build times for a Mac Catalyst app on arm64 are horrendous:
dotnet new maccatalyst && dotnet build
: 1 minuteEnabling the trimmer or the interpreter makes it much better:
dotnet new maccatalyst && dotnet build /p:UseInterpreter
: 17 secondsdotnet new maccatalyst && dotnet build /p:TrimMode=partial
: 12 secondsdotnet new maccatalyst && dotnet build /p:TrimMode=full
: 12 secondsdotnet new maccatalyst && dotnet build /p:TrimMode=partial /p:UseInterpreter=true
: 12 secondsSo I suggest we enable the trimmer by default for Debug mode on Mac Catalyst (this would match how we handle iOS and tvOS in the simulator + we don't enable the interpreter on any other platform).
The same thing happens for the iOS and tvOS Simulators as well.