-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[browser] load core assemblies first #100141
[browser] load core assemblies first #100141
Conversation
Tagging subscribers to 'arch-wasm': @lewing |
@kg this is close to what you've been thinking about recently |
thanks for doing the hard work on this! i agree on your estimated startup reduction, should be a win |
we may need |
ICU data will only be needed if any runtime startup loads it. JS interop does with an accidental string operation right now. We could probably make it assert if there's an attempt to load ICU during this warming phase |
I'm not sure if my recollection is correct but I think we explicitly load the icu data earlier than we need to as well. It might be worth exploring if we can delay it longer. |
This currently postpones all but core DLLs |
/azp run runtime-wasm |
Azure Pipelines successfully started running 1 pipeline(s). |
Right now, this PR is not AOT friendly because AOT assumes that metadata would be available for all images. |
we need |
Current CI fails with
There is |
Related #99539 |
src/libraries/System.Private.CoreLib/src/System/Globalization/CultureData.cs
Outdated
Show resolved
Hide resolved
...raries/System.Runtime/tests/System.Runtime.Tests/TrimmingTests/InvariantGlobalizationTrue.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The parts I understand look good, but I don't totally grasp all the threading and asset load parts
This is now unblocked in SDK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 👍
src/libraries/System.Private.CoreLib/src/System/Globalization/GlobalizationMode.Unix.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Globalization/CultureData.cs
Outdated
Show resolved
Hide resolved
I filled #102251 |
/ba-g all issues are known |
Co-authored-by: Ilona Tomkowicz <[email protected]> Co-authored-by: Marek Fišera <[email protected]>
start MonoVM when essential DLLs are downloaded and continue downloading the rest of the assets
System.Private.CoreLib
System.Collections
System.Runtime.InteropServices.JavaScript
runtimeconfig.bin
dotnet.native.js.symbols
if presentI estimate that this could shave 50ms from cold start.
other changes
/
when not absoluteResurrection of #93480