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

[wasm] perf: AOT CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) #94431

Closed
radical opened this issue Nov 6, 2023 · 7 comments
Labels
arch-wasm WebAssembly architecture area-Codegen-AOT-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' perf-pipeline Issues with dotnet-runtime-perf, or runtime-wasm-perf pipelines

Comments

@radical
Copy link
Member

radical commented Nov 6, 2023

Build: https://dev.azure.com/dnceng/internal/_build/results?buildId=2308311&view=results
Commit: 7faabde7
This ran on PERFTIGER173 .

// Benchmark: Handling.CatchAndRethrowDeep: Job-BOURXZ(PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1) [kind=Software]
// *** Execute ***
// Launch: 1 / 1
// Execute: /home/helixbot/.jsvu/bin/v8-11.9.169 --expose_wasm --module test-main.js -- --run Job-BOURXZ.dll --benchmarkName "Exceptions.Handling.CatchAndRethrowDeep(kind: Software)" --job "PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1" --benchmarkId 3  in /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle
Failed to set up high priority. Make sure you have the right permissions. Message: Permission denied
Incoming arguments: --run Job-BOURXZ.dll --benchmarkName Exceptions.Handling.CatchAndRethrowDeep(kind: Software) --job PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1 --benchmarkId 3
Application arguments: --run Job-BOURXZ.dll --benchmarkName Exceptions.Handling.CatchAndRethrowDeep(kind: Software) --job PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1 --benchmarkId 3
MONO_WASM: instantiate_wasm_module() failed CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
MONO_WASM: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
    at /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle/_framework/dotnet.js:3:30577
Error in mono_download_assets: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
exiting due to exception: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121,CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
    at /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle/_framework/dotnet.js:3:30577

CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2)

I could not reproduce this on macos, but haven't tried it on linux.

cc @kg @vargaz

Known Issue Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "",
  "ErrorPattern": "System_Linq_Expressions_System_Linq_Expressions.*not enough arguments on the stack",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng/internal/_build/results?buildId=2308311
Error message validated: System_Linq_Expressions_System_Linq_Expressions.*not enough arguments on the stack
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 11/6/2023 7:51:34 PM UTC

Report

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 0 0
@radical radical added arch-wasm WebAssembly architecture area-Codegen-AOT-mono perf-pipeline Issues with dotnet-runtime-perf, or runtime-wasm-perf pipelines labels Nov 6, 2023
@ghost
Copy link

ghost commented Nov 6, 2023

Tagging subscribers to 'arch-wasm': @lewing
See info in area-owners.md if you want to be subscribed.

Issue Details

Build: https://dev.azure.com/dnceng/internal/_build/results?buildId=2308311&view=results
Commit: 7faabde7
This ran on PERFTIGER173 .

// Benchmark: Handling.CatchAndRethrowDeep: Job-BOURXZ(PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1) [kind=Software]
// *** Execute ***
// Launch: 1 / 1
// Execute: /home/helixbot/.jsvu/bin/v8-11.9.169 --expose_wasm --module test-main.js -- --run Job-BOURXZ.dll --benchmarkName "Exceptions.Handling.CatchAndRethrowDeep(kind: Software)" --job "PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1" --benchmarkId 3  in /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle
Failed to set up high priority. Make sure you have the right permissions. Message: Permission denied
Incoming arguments: --run Job-BOURXZ.dll --benchmarkName Exceptions.Handling.CatchAndRethrowDeep(kind: Software) --job PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1 --benchmarkId 3
Application arguments: --run Job-BOURXZ.dll --benchmarkName Exceptions.Handling.CatchAndRethrowDeep(kind: Software) --job PowerPlanMode=00000000-0000-0000-0000-000000000000, Runtime=Wasm, Arguments=/p:EnableUnsafeBinaryFormatterSerialization=true, Toolchain=Wasm, IterationTime=250.0000 ms, MaxIterationCount=20, MinIterationCount=15, WarmupCount=1 --benchmarkId 3
MONO_WASM: instantiate_wasm_module() failed CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
MONO_WASM: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
    at /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle/_framework/dotnet.js:3:30577
Error in mono_download_assets: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
exiting due to exception: CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121,CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2) @+29394121
    at /home/helixbot/work/A5BC08BE/w/C4C80A33/e/performance/artifacts/bin/for-running/MicroBenchmarks/Job-BOURXZ/bin/net9.0/browser-wasm/AppBundle/_framework/dotnet.js:3:30577

CompileError: WebAssembly.Module(): Compiling function #116384:"System_Linq_Expressions_System_Linq_Expressions..." failed: not enough arguments on the stack for call (need 4, got 2)

I could not reproduce this on macos, but haven't tried it on linux.

cc @kg @vargaz

Author: radical
Assignees: -
Labels:

arch-wasm, area-Codegen-AOT-mono, perf-pipeline

Milestone: -

@ghost ghost added the untriaged New issue has not been triaged by the area owner label Nov 6, 2023
@radical radical added the blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' label Nov 6, 2023
@radical radical added this to the 9.0.0 milestone Nov 6, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Nov 6, 2023
@vargaz
Copy link
Contributor

vargaz commented Nov 6, 2023

Is this a random failure ?

@radical
Copy link
Member Author

radical commented Nov 6, 2023

This happened in the latest run, and only in one helix job which ran on PERFTIGER173 (which is not the one we have been seeing problems). Also, almost all the benchmarks failed with this error.

@vargaz
Copy link
Contributor

vargaz commented Nov 6, 2023

Is it possible to get the binaries for this run ?

@vargaz
Copy link
Contributor

vargaz commented Nov 7, 2023

The dotnet.framework.wasm file appears to be invalid, wasm-dis cannot disassemble it:

Fatal: error parsing wasm (try --debug for more info)

I can't reproduce this locally, i.e. the dotnet.framework.wasm file built locally from the files in the obj/ dir appears valid.

@radical
Copy link
Member Author

radical commented Nov 7, 2023

I can't reproduce this locally, i.e. the dotnet.framework.wasm file built locally from the files in the obj/ dir appears valid.

Could this be #88148 ?

@vargaz
Copy link
Contributor

vargaz commented Nov 7, 2023

Here, the build succeeds, but the resulting .wasm file appears to be invalid.

@build-analysis build-analysis bot removed this from the 9.0.0 milestone Nov 15, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Nov 15, 2023
@lewing lewing closed this as completed May 2, 2024
@dotnet-policy-service dotnet-policy-service bot removed the untriaged New issue has not been triaged by the area owner label May 2, 2024
@github-actions github-actions bot locked and limited conversation to collaborators Jun 2, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-wasm WebAssembly architecture area-Codegen-AOT-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' perf-pipeline Issues with dotnet-runtime-perf, or runtime-wasm-perf pipelines
Projects
None yet
Development

No branches or pull requests

3 participants