[Impeller] avoid creating multiple concurrent message loops for Andorid Vulkan#42146
[Impeller] avoid creating multiple concurrent message loops for Andorid Vulkan#42146auto-submit[bot] merged 5 commits intoflutter:mainfrom
Conversation
gaaclarke
left a comment
There was a problem hiding this comment.
Ah, this is the issue jonah was referring to in the other PR, eh?
This looks mostly good except I wouldn't muddy DeviceHolder and follow the pattern we had previously of the clients holding onto a shared pointer to the concurrent task runner.
| virtual const std::shared_ptr<fml::ConcurrentTaskRunner> | ||
| GetConcurrentWorkerTaskRunner() const = 0; |
There was a problem hiding this comment.
I don't think we should put this here. I think you can implement the sharing without changing DeviceHolder. Adding this to DeviceHolder changes the meaning of DeviceHolder and I'm not quite sure what concept it represents anymore.
There was a problem hiding this comment.
Fair enough, I'll remove this and still give a shared pointer ot the runner to the pipeline.
I wanted this to help with testing but I can still test it by exposing a getter on the context anyway.
|
|
||
| #pragma once | ||
|
|
||
| #include "flutter/fml/concurrent_message_loop.h" |
| const std::shared_ptr<fml::ConcurrentTaskRunner> | ||
| ContextVK::GetConcurrentWorkerTaskRunner() const { | ||
| return worker_task_runner_; | ||
| } | ||
|
|
There was a problem hiding this comment.
We don't need this anymore right?
There was a problem hiding this comment.
It's used in the test.
…or Andorid Vulkan (flutter/engine#42146)
…or Andorid Vulkan (flutter/engine#42146)
…or Andorid Vulkan (flutter/engine#42146)
…or Andorid Vulkan (flutter/engine#42146)
…or Andorid Vulkan (flutter/engine#42146)
flutter/engine@aac0919...f0f3fe7 2023-05-21 [email protected] Roll Skia from 7c7dff949a27 to 5b2005e47bf3 (1 revision) (flutter/engine#42199) 2023-05-21 [email protected] Roll Fuchsia Linux SDK from gQ989rlKAuTJHQR-C... to 88pzkUAkSKsJrNG38... (flutter/engine#42198) 2023-05-21 [email protected] Roll Fuchsia Mac SDK from 868_67npyO8nD_JCx... to JU-dKW3CQIUzhbqWE... (flutter/engine#42197) 2023-05-21 [email protected] Roll Skia from a60bfcb01af9 to 7c7dff949a27 (1 revision) (flutter/engine#42195) 2023-05-20 [email protected] Roll Fuchsia Linux SDK from c_fRDyBVZX-MwW5fS... to gQ989rlKAuTJHQR-C... (flutter/engine#42194) 2023-05-20 [email protected] Roll Skia from f3e9cb7d37fd to a60bfcb01af9 (1 revision) (flutter/engine#42193) 2023-05-20 [email protected] Roll Fuchsia Mac SDK from sfLkc5VBFU6UkljF6... to 868_67npyO8nD_JCx... (flutter/engine#42191) 2023-05-20 [email protected] Move SkSurface::MakeNull to SkSurfaces::Null (flutter/engine#42158) 2023-05-20 [email protected] Roll Fuchsia Linux SDK from TWjmvLCOnYAUgAzvT... to c_fRDyBVZX-MwW5fS... (flutter/engine#42189) 2023-05-20 [email protected] Roll Skia from b4a4782cf89d to f3e9cb7d37fd (1 revision) (flutter/engine#42188) 2023-05-20 [email protected] Roll Fuchsia Mac SDK from pwdDQgM88sqLmZczj... to sfLkc5VBFU6UkljF6... (flutter/engine#42187) 2023-05-20 [email protected] Roll Skia from 7202b405f061 to b4a4782cf89d (19 revisions) (flutter/engine#42185) 2023-05-20 [email protected] [Impeller] avoid creating multiple concurrent message loops for Andorid Vulkan (flutter/engine#42146) 2023-05-20 [email protected] Implement `ImageFilter`/`ColorFilter`/`MaskFilter` in Skwasm (flutter/engine#42088) 2023-05-20 [email protected] [Impeller] Made other vulkan objects cleanup properly. (flutter/engine#42113) 2023-05-19 [email protected] [Impeller] Fix the issue that 'coverage_coords' is incorrectly calculated in 'FillPathGeometry::GetPositionUVBuffer' (flutter/engine#42155) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from TWjmvLCOnYAU to 88pzkUAkSKsJ fuchsia/sdk/core/mac-amd64 from pwdDQgM88sqL to JU-dKW3CQIUz 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] 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
…27292) flutter/engine@aac0919...f0f3fe7 2023-05-21 [email protected] Roll Skia from 7c7dff949a27 to 5b2005e47bf3 (1 revision) (flutter/engine#42199) 2023-05-21 [email protected] Roll Fuchsia Linux SDK from gQ989rlKAuTJHQR-C... to 88pzkUAkSKsJrNG38... (flutter/engine#42198) 2023-05-21 [email protected] Roll Fuchsia Mac SDK from 868_67npyO8nD_JCx... to JU-dKW3CQIUzhbqWE... (flutter/engine#42197) 2023-05-21 [email protected] Roll Skia from a60bfcb01af9 to 7c7dff949a27 (1 revision) (flutter/engine#42195) 2023-05-20 [email protected] Roll Fuchsia Linux SDK from c_fRDyBVZX-MwW5fS... to gQ989rlKAuTJHQR-C... (flutter/engine#42194) 2023-05-20 [email protected] Roll Skia from f3e9cb7d37fd to a60bfcb01af9 (1 revision) (flutter/engine#42193) 2023-05-20 [email protected] Roll Fuchsia Mac SDK from sfLkc5VBFU6UkljF6... to 868_67npyO8nD_JCx... (flutter/engine#42191) 2023-05-20 [email protected] Move SkSurface::MakeNull to SkSurfaces::Null (flutter/engine#42158) 2023-05-20 [email protected] Roll Fuchsia Linux SDK from TWjmvLCOnYAUgAzvT... to c_fRDyBVZX-MwW5fS... (flutter/engine#42189) 2023-05-20 [email protected] Roll Skia from b4a4782cf89d to f3e9cb7d37fd (1 revision) (flutter/engine#42188) 2023-05-20 [email protected] Roll Fuchsia Mac SDK from pwdDQgM88sqLmZczj... to sfLkc5VBFU6UkljF6... (flutter/engine#42187) 2023-05-20 [email protected] Roll Skia from 7202b405f061 to b4a4782cf89d (19 revisions) (flutter/engine#42185) 2023-05-20 [email protected] [Impeller] avoid creating multiple concurrent message loops for Andorid Vulkan (flutter/engine#42146) 2023-05-20 [email protected] Implement `ImageFilter`/`ColorFilter`/`MaskFilter` in Skwasm (flutter/engine#42088) 2023-05-20 [email protected] [Impeller] Made other vulkan objects cleanup properly. (flutter/engine#42113) 2023-05-19 [email protected] [Impeller] Fix the issue that 'coverage_coords' is incorrectly calculated in 'FillPathGeometry::GetPositionUVBuffer' (flutter/engine#42155) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from TWjmvLCOnYAU to 88pzkUAkSKsJ fuchsia/sdk/core/mac-amd64 from pwdDQgM88sqL to JU-dKW3CQIUz 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] 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
Fixes flutter/flutter#127160
We should avoid creating multiple message loops that each have as many threads as processors on the machine.