Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(34)

Issue 226363004: Global GPU memory manager for android webview (Closed)

Created:
6 years, 8 months ago by hush (inactive)
Modified:
6 years, 7 months ago
CC:
chromium-reviews, darin-cc_chromium.org, jam, android-webview-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

Global GPU memory manager for android webview BUG=354155 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=268006

Patch Set 1 #

Total comments: 3

Patch Set 2 : Only manage tiles now #

Patch Set 3 : Remove "HardwareRenderer::GetMemoryPolicy" declaration #

Total comments: 2

Patch Set 4 : Decide memory policy on UI thread in BVR #

Patch Set 5 : Remove some debug msgs #

Patch Set 6 : Remove unnecessary code #

Total comments: 91

Patch Set 7 : Rebase #

Patch Set 8 : address Bo's comments #

Total comments: 17

Patch Set 9 : address comments. Add unit test. Rebase. #

Patch Set 10 : Fix shared renderer state initialize order #

Patch Set 11 : Make clang happy #

Patch Set 12 : Use sequence checker in GlobalTileManager. #

Patch Set 13 : Rewrote the API for GlobalTileManager and Client. #

Total comments: 1

Patch Set 14 : Use command line switch and move that from HR to BVR. #

Total comments: 18

Patch Set 15 : Address comments and added 2 more unit tests. #

Total comments: 2

Patch Set 16 : Type casts and private methods in BVR. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+636 lines, -124 lines) Patch
M android_webview/android_webview.gyp View 1 2 3 4 5 6 7 1 chunk +3 lines, -0 lines 0 comments Download
M android_webview/android_webview_tests.gypi View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M android_webview/browser/browser_view_renderer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 7 chunks +34 lines, -5 lines 0 comments Download
M android_webview/browser/browser_view_renderer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8 chunks +150 lines, -1 line 0 comments Download
A android_webview/browser/global_tile_manager.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +74 lines, -0 lines 0 comments Download
A android_webview/browser/global_tile_manager.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +135 lines, -0 lines 0 comments Download
A android_webview/browser/global_tile_manager_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +26 lines, -0 lines 0 comments Download
A android_webview/browser/global_tile_manager_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +157 lines, -0 lines 0 comments Download
M android_webview/browser/hardware_renderer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +2 lines, -7 lines 0 comments Download
M android_webview/browser/hardware_renderer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 6 chunks +13 lines, -88 lines 0 comments Download
M android_webview/browser/shared_renderer_state.h View 1 2 3 4 5 6 7 8 2 chunks +10 lines, -0 lines 0 comments Download
M android_webview/browser/shared_renderer_state.cc View 1 2 3 4 5 6 7 8 9 3 chunks +26 lines, -0 lines 0 comments Download
M android_webview/lib/main/aw_main_delegate.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +2 lines, -2 lines 0 comments Download
M android_webview/native/aw_contents.h View 1 2 3 4 5 6 7 8 1 chunk +0 lines, -2 lines 0 comments Download
M android_webview/native/aw_contents.cc View 1 2 3 4 5 6 7 8 1 chunk +3 lines, -19 lines 0 comments Download

Messages

Total messages: 31 (0 generated)
hush (inactive)
Hi Bo! This is kind of finished except for these tasks: 1. Scale the gpu ...
6 years, 8 months ago (2014-04-08 02:41:39 UTC) #1
boliu
https://codereview.chromium.org/226363004/diff/1/android_webview/browser/gpu_memory_manager.cc File android_webview/browser/gpu_memory_manager.cc (right): https://codereview.chromium.org/226363004/diff/1/android_webview/browser/gpu_memory_manager.cc#newcode20 android_webview/browser/gpu_memory_manager.cc:20: const size_t GpuMemoryManager::kGpuMemoryLimit = 256 * 1024 * 1024; ...
6 years, 8 months ago (2014-04-08 03:06:44 UTC) #2
hush (inactive)
Hi Bo! As we discussed in person last time, I made the following changes: 1. ...
6 years, 8 months ago (2014-04-18 00:38:41 UTC) #3
boliu
Didn't look in detail. A few large structural things: Which thread (UI or RT) should ...
6 years, 8 months ago (2014-04-18 16:13:00 UTC) #4
boliu
https://codereview.chromium.org/226363004/diff/40001/content/browser/android/in_process/synchronous_compositor_impl.cc File content/browser/android/in_process/synchronous_compositor_impl.cc (right): https://codereview.chromium.org/226363004/diff/40001/content/browser/android/in_process/synchronous_compositor_impl.cc#newcode143 content/browser/android/in_process/synchronous_compositor_impl.cc:143: output_surface_->SetMemoryPolicy(policy); Do this separately to avoid having to have ...
6 years, 8 months ago (2014-04-18 16:13:08 UTC) #5
hush (inactive)
On 2014/04/18 16:13:00, boliu wrote: > Didn't look in detail. A few large structural things: ...
6 years, 8 months ago (2014-04-21 23:04:13 UTC) #6
hush (inactive)
On 2014/04/18 16:13:00, boliu wrote: > Keep the current policy in SharedRendererState. HardwareRenderer just grabs ...
6 years, 8 months ago (2014-04-22 23:35:07 UTC) #7
mkosiba (inactive)
https://codereview.chromium.org/226363004/diff/40001/android_webview/browser/global_tile_manager.h File android_webview/browser/global_tile_manager.h (right): https://codereview.chromium.org/226363004/diff/40001/android_webview/browser/global_tile_manager.h#newcode23 android_webview/browser/global_tile_manager.h:23: class GlobalTileManager { *cough* unittests *cough* :)
6 years, 8 months ago (2014-04-23 14:10:08 UTC) #8
hush (inactive)
On 2014/04/23 14:10:08, mkosiba wrote: > https://codereview.chromium.org/226363004/diff/40001/android_webview/browser/global_tile_manager.h > File android_webview/browser/global_tile_manager.h (right): > > https://codereview.chromium.org/226363004/diff/40001/android_webview/browser/global_tile_manager.h#newcode23 > ...
6 years, 8 months ago (2014-04-25 23:15:17 UTC) #9
hush (inactive)
Hi Bo! From our talk on Friday, here is the current status of global tile ...
6 years, 7 months ago (2014-04-28 18:42:32 UTC) #10
boliu
https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp File android_webview/android_webview.gyp (right): https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp#newcode156 android_webview/android_webview.gyp:156: 'browser/global_tile_manager.h', add tile_resource_consumer.h too https://codereview.chromium.org/226363004/diff/100001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/100001/android_webview/browser/browser_view_renderer.cc#newcode41 ...
6 years, 7 months ago (2014-04-28 22:22:14 UTC) #11
hush (inactive)
https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp File android_webview/android_webview.gyp (right): https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp#newcode156 android_webview/android_webview.gyp:156: 'browser/global_tile_manager.h', why did it compile correctly when I didn't ...
6 years, 7 months ago (2014-04-30 20:50:16 UTC) #12
boliu
https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp File android_webview/android_webview.gyp (right): https://codereview.chromium.org/226363004/diff/100001/android_webview/android_webview.gyp#newcode156 android_webview/android_webview.gyp:156: 'browser/global_tile_manager.h', On 2014/04/30 20:50:17, hush wrote: > why did ...
6 years, 7 months ago (2014-05-01 00:37:40 UTC) #13
hush (inactive)
https://codereview.chromium.org/226363004/diff/140001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/140001/android_webview/browser/browser_view_renderer.cc#newcode178 android_webview/browser/browser_view_renderer.cc:178: double area = (double)draw_gl_input_.global_visible_rect.width() * CalculateTileRequest() is an inherited ...
6 years, 7 months ago (2014-05-01 19:03:04 UTC) #14
hush (inactive)
Hi Bo, We discussed this yesterday. PTAL the new patch.
6 years, 7 months ago (2014-05-02 17:52:53 UTC) #15
boliu
https://codereview.chromium.org/226363004/diff/220001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/220001/android_webview/browser/browser_view_renderer.cc#newcode44 android_webview/browser/browser_view_renderer.cc:44: const size_t kTileArea = 372 * 372; I lied, ...
6 years, 7 months ago (2014-05-02 17:54:34 UTC) #16
hush (inactive)
On 2014/05/02 17:54:34, boliu wrote: > https://codereview.chromium.org/226363004/diff/220001/android_webview/browser/browser_view_renderer.cc > File android_webview/browser/browser_view_renderer.cc (right): > > https://codereview.chromium.org/226363004/diff/220001/android_webview/browser/browser_view_renderer.cc#newcode44 > ...
6 years, 7 months ago (2014-05-02 17:58:37 UTC) #17
boliu
https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/browser_view_renderer.cc#newcode191 android_webview/browser/browser_view_renderer.cc:191: size_t BrowserViewRenderer::CalculateTileRequest( Don't need this helper, this is only ...
6 years, 7 months ago (2014-05-02 20:28:34 UTC) #18
hush (inactive)
PTAL. All 5 unit tests passed. https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/browser_view_renderer.cc#newcode191 android_webview/browser/browser_view_renderer.cc:191: size_t BrowserViewRenderer::CalculateTileRequest( On ...
6 years, 7 months ago (2014-05-02 22:07:39 UTC) #19
hush (inactive)
https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/global_tile_manager_unittest.cc File android_webview/browser/global_tile_manager_unittest.cc (right): https://codereview.chromium.org/226363004/diff/240001/android_webview/browser/global_tile_manager_unittest.cc#newcode129 android_webview/browser/global_tile_manager_unittest.cc:129: } On 2014/05/02 20:28:34, boliu wrote: > Requesting a ...
6 years, 7 months ago (2014-05-02 22:12:25 UTC) #20
boliu
lgtm https://codereview.chromium.org/226363004/diff/250001/android_webview/browser/browser_view_renderer.cc File android_webview/browser/browser_view_renderer.cc (right): https://codereview.chromium.org/226363004/diff/250001/android_webview/browser/browser_view_renderer.cc#newcode175 android_webview/browser/browser_view_renderer.cc:175: std::max(width * height * kTileMultiplier / g_tile_area, (size_t)1); ...
6 years, 7 months ago (2014-05-02 22:39:17 UTC) #21
hush (inactive)
On 2014/05/02 22:39:17, boliu wrote: > lgtm > > https://codereview.chromium.org/226363004/diff/250001/android_webview/browser/browser_view_renderer.cc > File android_webview/browser/browser_view_renderer.cc (right): > ...
6 years, 7 months ago (2014-05-02 22:56:06 UTC) #22
hush (inactive)
The CQ bit was checked by hush@chromium.org
6 years, 7 months ago (2014-05-02 22:56:20 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/hush@chromium.org/226363004/270001
6 years, 7 months ago (2014-05-02 22:57:48 UTC) #24
hush (inactive)
I will create a separate CL to fix the policy.bytes_limit allocation after this is committed. ...
6 years, 7 months ago (2014-05-02 23:25:08 UTC) #25
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 7 months ago (2014-05-03 00:16:16 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel on tryserver.chromium
6 years, 7 months ago (2014-05-03 00:16:16 UTC) #27
hush (inactive)
On 2014/05/03 00:16:16, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
6 years, 7 months ago (2014-05-03 00:20:54 UTC) #28
hush (inactive)
The CQ bit was checked by hush@chromium.org
6 years, 7 months ago (2014-05-03 00:21:02 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/hush@chromium.org/226363004/270001
6 years, 7 months ago (2014-05-03 00:22:23 UTC) #30
commit-bot: I haz the power
6 years, 7 months ago (2014-05-03 02:17:11 UTC) #31
Message was sent while issue was closed.
Change committed as 268006

Powered by Google App Engine
This is Rietveld 408576698