Skip to content

Web Performance Degredation after landing Reland "[skwasm] Dynamic Threading" (#166454) #166905

@brian-superlist

Description

@brian-superlist

Steps to reproduce

  1. Check out Flutter to commit 34ea67bdbf2233a6cd15a617f7d95466991f6137
  2. Compile the Wonderous web app in release mode with WASM enabled: flutter build web --release --csp --source-maps --target lib/main.dart --wasm --pwa-strategy=none
  3. Run the app with dhttpd
  4. Observe low FPS in web app
  5. Downgrade Flutter to commit just before: f2e0a2afb35cefe48600c81f39e163db00cff89f
  6. Clean
  7. Compile web app in release mode with WASM enabled
  8. Run the app with dhttpd
  9. Wonderous App is smooth again

Expected results

  • Flutter WASM web app runs smoothly with no performance degredation

Actual results

  • Flutter WASM web app runs with much lower FPS than before

Code sample

This can be demonstrated running the Wonderous web app: https://github.com/gskinnerTeam/flutter-wonderous-app

Screenshots or Video

No response

Logs

Logs
[Paste your logs here]

Flutter Doctor output

Doctor output
[!] Flutter (Channel [user-branch], 3.31.0-1.0.pre.373, on macOS 15.4 24E248 darwin-arm64, locale en-US) [475ms]
    ! Flutter version 3.31.0-1.0.pre.373 on channel [user-branch] at /Users/brian/lab/flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/setup.
    ! Upstream repository unknown source is not a standard remote.
      Set environment variable "FLUTTER_GIT_URL" to unknown source to dismiss this error.
    • Framework revision 34ea67bdbf (8 days ago), 2025-04-02 14:27:09 -0700
    • Engine revision 34ea67bdbf
    • Dart version 3.8.0 (build 3.8.0-257.0.dev)
    • DevTools version 2.45.0-dev.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 36.0.0) [1,335ms]
    • Android SDK at /Users/brian/Library/Android/sdk
    • Platform android-36, build-tools 36.0.0
    • ANDROID_HOME = /Users/brian/Library/Android/sdk
    • Java binary at: /usr/bin/java
      This JDK was found in the system PATH.
      To manually set the JDK path, use: `flutter config --jdk-dir="path/to/jdk"`.
    • Java version OpenJDK Runtime Environment Homebrew (build 17.0.14+0)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 16.3) [881ms]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16E140
    • CocoaPods version 1.16.2

[✓] Chrome - develop for the web [94ms]
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (not installed) [94ms]
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/to/macos-android-setup for detailed instructions).

[✓] IntelliJ IDEA Ultimate Edition (version 2024.3.5) [94ms]
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 83.0.4
    • Dart plugin version 243.26053.17

[✓] VS Code (version 1.98.2) [9ms]
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.106.0

[✓] Connected device (3 available) [5.9s]
    • Briphone (wireless) (mobile) • 00008120-000A20980233401E • ios            • iOS 18.3.2 22D82
    • macOS (desktop)              • macos                     • darwin-arm64   • macOS 15.4 24E248 darwin-arm64
    • Chrome (web)                 • chrome                    • web-javascript • Google Chrome 135.0.7049.84
    ! Error: Browsing on the local area network for Brian’s iPad. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)

[✓] Network resources [246ms]
    • All expected network resources are available.

! Doctor found issues in 2 categories.

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: performanceRelates to speed or footprint issues (see "perf:" labels)c: regressionIt was better in the past than it is nowe: web_skwasmSkwasm rendering backend for webfound in release: 3.31Found to occur in 3.31has reproducible stepsThe issue has been confirmed reproducible and is ready to work onplatform-webWeb applications specificallyr: fixedIssue is closed as already fixed in a newer versionteam-webOwned by Web platform team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions