Skip to content

Consider disabling OpenGLES/Vulkan playground tests on mac/iOS builds #187233

Description

@cbracken

Most shards of the Mac mac_unopt build are complete in ~15-17 minutes. The ci/ios_debug_unopt_sim shard takes ~32 minutes. 260 ms (4 mins 20 sec) of that is spent on a single OpenGLES test Play/DlGoldenTest.ShimmerTest/OpenGLES.

This test does 200 iterations of MakeScreenshot calls at 1024x768 * (2x scale) => 2048x1535 * 4 B/pixel = 12.5MB / screenshot. 12.5 MB/screenshot * 200 screenshots running in a synchronous loop 12.5MB at a time... but worse, OpenGLES isn't supported on mac, so we're shoving this through ANGLE.

This isn't a configuration we ever run on macOS/iOS devices. We should consider just disabling it altogether for those platforms and buy ourselves back all the time/compute; we're still testing on Android/Windows/Linux.

I'd say we could do the same for Vulkan but those tests aren't nearly as slow (I'd be fine either way).

From https://ci.chromium.org/ui/p/flutter/builders/try/Mac%20Engine%20Drone/2351150/overview

Why is the OpenGLES shimmer test so slow?

[ RUN      ] Play/DlGoldenTest.ShimmerTest/Metal
[       OK ] Play/DlGoldenTest.ShimmerTest/Metal (4766 ms)
[ RUN      ] Play/DlGoldenTest.ShimmerTest/MetalSDF
[       OK ] Play/DlGoldenTest.ShimmerTest/MetalSDF (4607 ms)
[ RUN      ] Play/DlGoldenTest.ShimmerTest/OpenGLES
[       OK ] Play/DlGoldenTest.ShimmerTest/OpenGLES (259982 ms)
[ RUN      ] Play/DlGoldenTest.ShimmerTest/Vulkan

Thoughts? @gaaclarke aside from the convenience of not manually skipping things on a platform-specific basis, are there any wins we're getting from running these on macOS/iOS?

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: proposalA detailed proposal for a change to Flutterengineflutter/engine related. See also e: labels.fyi-iosFor the attention of iOS platform teamteam-engineOwned by Engine teamteam: skip-testAn issue used to track tests that are skipped.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions