-
Notifications
You must be signed in to change notification settings - Fork 200
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
[NativeAOT-LLVM] Merge tests when targeting Wasm #2695
Comments
@jkoritzinsky would you have any advice? The only 'custom' thing in the WASM setup is that we modify |
My recommendation would be to merge some of the tests in-process instead of using the out-of-process model. Alternatively, for now you can use the BuildAllTestsAsStandalone environment variable until I get around to the last bits of cleanup here. |
This would not be feasible. NAOT tests are sensitive to whole program analysis effects, they need to be compiled separately. Additionally, some tests use a JS host that can't be moved in-process even in principle. Edit: or did you mean to have one "merged test" per each actual test? @yowl I would not have objections to some can-down-the-road kicking on this problem... |
Some of the smoke tests can be merged. Others can't. I'm also okay marking each test as a merged test, marked as containing tests in the assembly, and has the wrapper generator disabled. Should get close to the experience we want. |
The first problem is the merged wrapper writes to files on the host, so it cant be compiled as wasm.
Sent from Outlook for Android<https://aka.ms/AAb9ysg>
…________________________________
From: Jeremy Koritzinsky ***@***.***>
Sent: Saturday, September 28, 2024 3:38:32 PM
To: dotnet/runtimelab ***@***.***>
Cc: Scott Waye ***@***.***>; Mention ***@***.***>
Subject: Re: [dotnet/runtimelab] [NativeAOT-LLVM] Merge tests when targeting Wasm (Issue #2695)
Some of the smoke tests can be merged. Others can't.
I'm also okay marking each test as a merged test, marked as containing tests in the assembly, and has the wrapper generator disabled. Should get close to the experience we want.
—
Reply to this email directly, view it on GitHub<#2695 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AAUYCKPHWLXIONS2MJVW5XLZY4VWRAVCNFSM6AAAAABO76GGO2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBRGAYTGNRRGQ>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
When building for WASM, it uses the XHarness runner and writes to stdout instead. If you want something that doesn't go through xharness for WASM, then you'll need to build something (as that's not a scenario I had to handle in main so I didn't). I'd recommend hooking into whatever the libraries tests do (if you have those running). |
Yes that's what I was referring to. That file IO is just deleting temp files (on iOS and Android) and no-ops on Wasm today I think (as everything is guarded by File.Exists). Either that or it's using some sort of synthetic filesystem (which is also fine). |
With the
nativeaot
merge test wrapper, what is the intention, if any, for how it should be used to run non-host, e.g. Wasm, tests. Forwindows-x64
it looks likenativeaot.dll
is published as a NAOT exe, but for Wasm it would appear thatdotnet run nativeaot.dll
would be desired, we need the writing of the results file on the host, not the target, and NAOT'ing this dll does not appear to contribute much.Is this thinking correct, before I go off changing things?
The text was updated successfully, but these errors were encountered: