This repository was archived by the owner on Feb 25, 2025. It is now read-only.
[Impeller] one descriptor pool per frame.#55939
Merged
auto-submit[bot] merged 6 commits intoflutter:mainfrom Oct 18, 2024
Merged
[Impeller] one descriptor pool per frame.#55939auto-submit[bot] merged 6 commits intoflutter:mainfrom
auto-submit[bot] merged 6 commits intoflutter:mainfrom
Conversation
jonahwilliams
commented
Oct 18, 2024
| std::weak_ptr<const DeviceHolderVK> device_holder, | ||
| std::shared_ptr<TrackedObjectsVK> tracked_objects, | ||
| std::shared_ptr<FenceWaiterVK> fence_waiter); | ||
| std::shared_ptr<TrackedObjectsVK> tracked_objects); |
Contributor
Author
There was a problem hiding this comment.
Fence waiter was unused.
jonahwilliams
commented
Oct 18, 2024
| } | ||
|
|
||
| // Associates a resource with a thread and context. | ||
| using CommandPoolMap = |
Contributor
Author
There was a problem hiding this comment.
moved definition to header
jonahwilliams
commented
Oct 18, 2024
| // available for reuse ("recycle"). | ||
| static thread_local std::unique_ptr<CommandPoolMap> tls_command_pool_map; | ||
|
|
||
| struct WeakThreadLocalData { |
Contributor
Author
There was a problem hiding this comment.
The thread local data now holds both the cmd pool and desc pool
jonahwilliams
commented
Oct 18, 2024
| if (!pool) { | ||
| continue; | ||
| for (auto& [command_pool, desc_pool] : found->second) { | ||
| const auto& strong_pool = command_pool.lock(); |
Contributor
Author
There was a problem hiding this comment.
We don't actually need to do anything with the descriptor pool here, I just added it for symmetry....
matanlurey
approved these changes
Oct 18, 2024
Contributor
Author
|
reason for revert: failing on scenario test |
auto-submit bot
pushed a commit
that referenced
this pull request
Oct 18, 2024
This reverts commit 42c2a40.
auto-submit bot
added a commit
that referenced
this pull request
Oct 18, 2024
Reverts: #55939 Initiated by: jonahwilliams Reason for reverting: failing on scenario test Original PR Author: jonahwilliams Reviewed By: {matanlurey} This change reverts the following previous change: Creating descriptor pools is expensive, no need to have more than one per frame. The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future. Fixes flutter/flutter#157115
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Oct 18, 2024
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Oct 19, 2024
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Oct 19, 2024
jonahwilliams
pushed a commit
to flutter/flutter
that referenced
this pull request
Oct 19, 2024
flutter/engine@76d310e...dd37446 2024-10-19 robert.ancell@canonical.com Move keymap from FlKeyboardViewDelegate to FlKeyboardManager (flutter/engine#55942) 2024-10-19 jonahwilliams@google.com [UI] fix scene builder parameter naming. (flutter/engine#55969) 2024-10-19 chris@bracken.jp iOS: Improve thread safety of first frame callback (flutter/engine#55966) 2024-10-18 chris@bracken.jp iOS: Fix flaky tests (remove timeouts) (flutter/engine#55961) 2024-10-18 jonahwilliams@google.com [Impeller] allocate the impeller onscreen texture from the render target cache. (flutter/engine#55943) 2024-10-18 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 9F_NaKPd2twhbPwP7... to tNQZ8d5mRYpe3--lk... (flutter/engine#55963) 2024-10-18 30870216+gaaclarke@users.noreply.github.com Started filtering out close line segments in rrect polylines. (flutter/engine#55929) 2024-10-18 chinmaygarde@google.com [Impeller] libImpeller: Allow custom font registrations. (flutter/engine#55934) 2024-10-18 chris@bracken.jp Re-reland "iOS: Migrate FlutterEngine to ARC" (flutter/engine#55962) 2024-10-18 chinmaygarde@google.com [Impeller] libImpeller: Add a README. (flutter/engine#55940) 2024-10-18 chris@bracken.jp iOS: Eliminate needless profiler metrics ivar (flutter/engine#55957) 2024-10-18 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] one descriptor pool per frame. (#55939)" (flutter/engine#55959) 2024-10-18 chris@bracken.jp Revert "Reland "iOS: Migrate FlutterEngine to ARC" (#55937)" (flutter/engine#55954) 2024-10-18 skia-flutter-autoroll@skia.org Roll Dart SDK from 993d3069f42e to a51df90298ca (7 revisions) (flutter/engine#55951) 2024-10-18 jonahwilliams@google.com [engine] add back opt out for merged threads. (flutter/engine#55952) 2024-10-18 jonahwilliams@google.com [Impeller] one descriptor pool per frame. (flutter/engine#55939) 2024-10-18 jonahwilliams@google.com [Impeller] add mechanism for sharing bdf inputs. (flutter/engine#55701) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from 9F_NaKPd2twh to tNQZ8d5mRYpe 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 jonahwilliams@google.com,zra@google.com 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
auto-submit bot
pushed a commit
that referenced
this pull request
Oct 21, 2024
reverted #55939 due to postsubmit failures. It turns out the lifecycle is not exactly the same as the command pool. Instead, use a thread id map on the context to keep the right thread running and simplify shutdown. Leaving CI yaml edit for now to prove it works :) Fixes flutter/flutter#157115
nick9822
pushed a commit
to nick9822/flutter
that referenced
this pull request
Dec 18, 2024
Creating descriptor pools is expensive, no need to have more than one per frame. The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future. Fixes flutter#157115
nick9822
pushed a commit
to nick9822/flutter
that referenced
this pull request
Dec 18, 2024
…lutter/engine#55959) Reverts: flutter/engine#55939 Initiated by: jonahwilliams Reason for reverting: failing on scenario test Original PR Author: jonahwilliams Reviewed By: {matanlurey} This change reverts the following previous change: Creating descriptor pools is expensive, no need to have more than one per frame. The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future. Fixes flutter#157115
nick9822
pushed a commit
to nick9822/flutter
that referenced
this pull request
Dec 18, 2024
reverted flutter/engine#55939 due to postsubmit failures. It turns out the lifecycle is not exactly the same as the command pool. Instead, use a thread id map on the context to keep the right thread running and simplify shutdown. Leaving CI yaml edit for now to prove it works :) Fixes flutter#157115
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Creating descriptor pools is expensive, no need to have more than one per frame.
The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future.
Fixes flutter/flutter#157115