Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@jonahwilliams
Copy link
Contributor

@jonahwilliams jonahwilliams commented Oct 23, 2023

Use RAII to more accurately capture cmd buffer start/end, with additional protections for early frame ending. This also allows us to capture the execution time of the final cmd buffer, which should fix flutter/flutter#136971

@chinmaygarde chinmaygarde changed the title Vk query cleanups [Impeller] Vk query cleanups Oct 23, 2023
@chinmaygarde chinmaygarde changed the title [Impeller] Vk query cleanups [Impeller] Vk query cleanups. Oct 23, 2023
@jonahwilliams jonahwilliams marked this pull request as ready for review October 23, 2023 18:44

void GPUTracerVK::MarkFrameStart() {
FML_DCHECK(!in_frame_);
FML_CHECK(!in_frame_);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should be changed back to a DCHECK

private:
friend struct GPUProbe;

static const constexpr size_t kTraceStatesSize = 32u;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I increased the size of the number of pending queries because on very slow apps I observed that we would get backed up more than the previous 16.

@jonahwilliams
Copy link
Contributor Author

These tests are failing sometimes because I'm relying on the dtor to call this final query method, but my latch is invoked by the closure that runs first.

bool enabled_ = false;
};

struct GPUProbe {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good call. It did start out more struct like...

@jonahwilliams jonahwilliams added the autosubmit Merge PR when tree becomes green via auto submit App label Oct 23, 2023
@auto-submit auto-submit bot merged commit 88b054a into flutter:main Oct 23, 2023
@jonahwilliams jonahwilliams deleted the vk_query_cleanups branch October 23, 2023 20:34
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Oct 23, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Oct 23, 2023
fluttermirroringbot pushed a commit to flutter/flutter that referenced this pull request Oct 23, 2023
…137100)

flutter/engine@e89f042...abeab89

2023-10-23 [email protected] [Impeller] Added tests to assert empty saveLayer behaviors. (flutter/engine#47138)
2023-10-23 [email protected] Roll Skia from d534571c4bc3 to 73e9879f06e7 (1 revision) (flutter/engine#47233)
2023-10-23 [email protected] Add missing headers to the fml source_set. (flutter/engine#47232)
2023-10-23 [email protected] [Impeller] Vk query cleanups. (flutter/engine#47208)
2023-10-23 [email protected] Roll Skia from 4976279e4441 to d534571c4bc3 (1 revision) (flutter/engine#47231)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
harryterkelsen pushed a commit that referenced this pull request Oct 23, 2023
Use RAII to more accurately capture cmd buffer start/end, with additional protections for early frame ending. This also allows us to capture the execution time of the final cmd buffer, which should fix flutter/flutter#136971
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App e: impeller

Projects

No open projects
Archived in project

Development

Successfully merging this pull request may close these issues.

[Impeller] Vulkan GPU tracing should include final command buffer.

2 participants