-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] Add debug captures and inspector. #43764
Conversation
|
whoa |
21df2e1 to
c6d2c9a
Compare
chinmaygarde
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry about the really late review. I was on the fence about the intrusiveness of this but can definitely see the value. Especially as we build on top it. I think we should land and iterate on it and keep evaluating this from time to time.
5e7e0f0 to
29f58bf
Compare
f7e1290 to
4a821ec
Compare
|
auto label is removed for flutter/engine/43764, due to - The status or check suite Linux linux_host_engine has failed. Please fix the issues identified (or deflake) before re-applying this label. |
…133224) flutter/engine@aa98a9d...3b92bb6 2023-08-24 [email protected] [Impeller] Add debug captures and inspector. (flutter/engine#43764) 2023-08-24 [email protected] Roll Skia from e3ee267859a7 to 02eecda395ba (1 revision) (flutter/engine#45042) 2023-08-24 [email protected] Remove a clang-tidy test that launches a full run of clang-tidy (flutter/engine#45033) 2023-08-24 [email protected] Roll Skia from 9d4db3443527 to e3ee267859a7 (1 revision) (flutter/engine#45036) 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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
| bool SolidColorContents::Render(const ContentContext& renderer, | ||
| const Entity& entity, | ||
| RenderPass& pass) const { | ||
| auto capture = entity.GetCapture().CreateChild("SolidColorContents"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we IFDEF these out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's theoretically no need. All this stuff is inlined and should flatten out to zero instructions when the capture is build-time disabled. (I haven't rigorously proven this, mind you)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, I'll see it in the profile if its there 😈 - but yeah, no need to worry about it until its a problem !
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm gonna Volkswagen the heck out of our benchmarks, but in a benign way.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just add some speedup loops
Reverts #43764 Broke the wide gamut test on framework CI flutter/flutter#133255 https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20wide_gamut_ios/3186/overview
…133272) flutter/engine@aa98a9d...965501a 2023-08-24 [email protected] Roll Skia from 8b0fd320865e to b17ee34f3378 (1 revision) (flutter/engine#45073) 2023-08-24 [email protected] Revert Dart SDK to 3.2.0-97.0.dev (flutter/engine#45072) 2023-08-24 [email protected] Manual roll Dart SDK from 87a5a26b25fc to bcad589d5d81 (4 revisions) (flutter/engine#45065) 2023-08-24 [email protected] Roll Fuchsia Mac SDK from P8oeVw3whCGS6pCjL... to jkVyhV_xfb8Mv43xj... (flutter/engine#45068) 2023-08-24 [email protected] Roll Skia from e008ee76b890 to 8b0fd320865e (3 revisions) (flutter/engine#45067) 2023-08-24 [email protected] Remove package linter from DEPS (flutter/engine#45053) 2023-08-24 [email protected] Revert "[Impeller] Add debug captures and inspector." (flutter/engine#45062) 2023-08-24 [email protected] [Impeller] Don't place vertex buffer bindings in the Binding map. (flutter/engine#45040) 2023-08-24 [email protected] Roll Skia from 994d5e03fa1c to e008ee76b890 (1 revision) (flutter/engine#45061) 2023-08-24 [email protected] Revert "[Impeller] add trace events for VkRenderPass and VkFrameBuffeâ�¦ (flutter/engine#45047) 2023-08-24 [email protected] Roll Fuchsia Linux SDK from XoUnFqSvX9mhbXqBJ... to 0kEa4JczTMD0Xus08... (flutter/engine#45060) 2023-08-24 [email protected] Roll Skia from 68700a1a2be9 to 994d5e03fa1c (1 revision) (flutter/engine#45059) 2023-08-24 [email protected] Roll Skia from 13a050278b1a to 68700a1a2be9 (1 revision) (flutter/engine#45058) 2023-08-24 [email protected] Roll Skia from 317f4c2ba2ca to 13a050278b1a (1 revision) (flutter/engine#45054) 2023-08-24 [email protected] Roll Skia from 17c0f4b72fcd to 317f4c2ba2ca (1 revision) (flutter/engine#45051) 2023-08-24 [email protected] Roll Skia from 82472773892d to 17c0f4b72fcd (1 revision) (flutter/engine#45050) 2023-08-24 [email protected] Roll Skia from 02eecda395ba to 82472773892d (1 revision) (flutter/engine#45049) 2023-08-24 [email protected] Roll Fuchsia Mac SDK from vJ6oaubpqgRM2nb1e... to P8oeVw3whCGS6pCjL... (flutter/engine#45046) 2023-08-24 [email protected] Roll Fuchsia Linux SDK from -HcyJtxGxUDcqX-jo... to XoUnFqSvX9mhbXqBJ... (flutter/engine#45044) 2023-08-24 [email protected] Manual roll Dart SDK from ab417bc74bb1 to 87a5a26b25fc (4 revisions) (flutter/engine#45043) 2023-08-24 [email protected] [Impeller] Add debug captures and inspector. (flutter/engine#43764) 2023-08-24 [email protected] Roll Skia from e3ee267859a7 to 02eecda395ba (1 revision) (flutter/engine#45042) 2023-08-24 [email protected] Remove a clang-tidy test that launches a full run of clang-tidy (flutter/engine#45033) 2023-08-24 [email protected] Roll Skia from 9d4db3443527 to e3ee267859a7 (1 revision) (flutter/engine#45036) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from -HcyJtxGxUDc to 0kEa4JczTMD0 fuchsia/sdk/core/mac-amd64 from vJ6oaubpqgRM to jkVyhV_xfb8M 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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Weekend project! Press `C` to capture in the Aiks playground. Decided to finally give this a go and attempt to relieve some of the print debugging/mindfuck around investigation of coverage-related issues lately. :) Captures: * Capture documents from anywhere in Impeller. * Easily implement inspectors for those documents. * Replay documents with live editing. * No overhead when capturing is build time disabled (that's the idea, anyway). * Low overhead when capturing is runtime disabled. Aiks inspector: * Outline passes and rendered entities. * Identify collapsed passes. * Visibly highlight coverage. * Live edit scene properties. Possible future work: * Filters! * Blend mode property. * Pointer + release proc property. * Support captures in the DL playground. * Text atlas visualization. * Multi-frame capture and scrubbing. * Menus instead of key bindings? https://github.com/flutter/engine/assets/919017/a7a63e24-f72f-4140-a21e-6ca02a05fc20
Reverts flutter#43764 Broke the wide gamut test on framework CI flutter/flutter#133255 https://ci.chromium.org/ui/p/flutter/builders/prod/Mac_ios%20wide_gamut_ios/3186/overview
Weekend project! Press
Cto capture in the Aiks playground.Decided to finally give this a go and attempt to relieve some of the print debugging/mindfuck around investigation of coverage-related issues lately. :)
Captures:
Aiks inspector:
Possible future work:
Screen.Recording.2023-07-18.at.3.08.45.AM.mov