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

Issue 67563002: cc: Plumbing for impl thread micro benchmarks (Closed)

Created:
7 years, 1 month ago by vmpstr
Modified:
7 years, 1 month ago
Reviewers:
nduca, enne (OOO)
CC:
chromium-reviews, cc-bugs_chromium.org
Visibility:
Public.

Description

cc: Plumbing for impl thread micro benchmarks This patch adds plumbing for running micro benchmarks on the impl thread. The concept is as follows: - Create a main thread benchmark via gpu benchmarking extension - On commit complete, if the benchmark provides an impl thread benchmark, it is created and scheduled to be run on the impl thread - Impl thread benchmarks are run after an appropriate callback - Impl thread benchmarks post a done callback (with results) that is run on the main thread - The main thread benchmark gets the callback and posts its own done callback (with aggregated results) - This gets back to the gpu benchmarking extension which sends the response back to the caller R=enne@chromium.org, nduca@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=235585

Patch Set 1 #

Total comments: 10

Patch Set 2 : #

Patch Set 3 : create benchmarkimpl only once #

Total comments: 1

Patch Set 4 : added unittest #

Patch Set 5 : cc_export #

Patch Set 6 : speculative fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+448 lines, -23 lines) Patch
M cc/cc.gyp View 1 2 3 2 chunks +6 lines, -0 lines 0 comments Download
M cc/debug/micro_benchmark.h View 1 2 3 4 3 chunks +12 lines, -1 line 0 comments Download
M cc/debug/micro_benchmark.cc View 1 2 2 chunks +22 lines, -1 line 0 comments Download
M cc/debug/micro_benchmark_controller.h View 1 2 3 4 2 chunks +6 lines, -3 lines 0 comments Download
M cc/debug/micro_benchmark_controller.cc View 1 2 3 chunks +22 lines, -3 lines 0 comments Download
A cc/debug/micro_benchmark_controller_impl.h View 1 2 3 4 1 chunk +37 lines, -0 lines 0 comments Download
A cc/debug/micro_benchmark_controller_impl.cc View 1 chunk +59 lines, -0 lines 0 comments Download
M cc/debug/micro_benchmark_controller_unittest.cc View 1 2 3 4 5 3 chunks +40 lines, -3 lines 0 comments Download
A cc/debug/micro_benchmark_impl.h View 1 2 3 4 1 chunk +48 lines, -0 lines 0 comments Download
A cc/debug/micro_benchmark_impl.cc View 1 chunk +48 lines, -0 lines 0 comments Download
M cc/debug/picture_record_benchmark.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M cc/debug/unittest_only_benchmark.h View 1 2 3 4 1 chunk +14 lines, -3 lines 0 comments Download
M cc/debug/unittest_only_benchmark.cc View 1 2 3 1 chunk +38 lines, -3 lines 0 comments Download
A cc/debug/unittest_only_benchmark_impl.h View 1 2 3 4 1 chunk +31 lines, -0 lines 0 comments Download
A cc/debug/unittest_only_benchmark_impl.cc View 1 2 3 1 chunk +24 lines, -0 lines 0 comments Download
M cc/layers/layer_impl.h View 2 chunks +3 lines, -0 lines 0 comments Download
M cc/layers/layer_impl.cc View 1 2 3 3 chunks +6 lines, -1 line 0 comments Download
M cc/layers/picture_layer_impl.h View 2 chunks +3 lines, -0 lines 0 comments Download
M cc/layers/picture_layer_impl.cc View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M cc/test/fake_layer_tree_host.h View 1 2 3 2 chunks +5 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host.h View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host.cc View 1 2 3 2 chunks +4 lines, -2 lines 0 comments Download
M cc/trees/layer_tree_host_impl.h View 3 chunks +4 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 3 chunks +8 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (0 generated)
vmpstr
Please take a look. https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc File cc/debug/micro_benchmark_controller.cc (right): https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc#newcode85 cc/debug/micro_benchmark_controller.cc:85: if (!(*it)->IsDone()) If the main ...
7 years, 1 month ago (2013-11-09 00:41:41 UTC) #1
enne (OOO)
https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc File cc/debug/micro_benchmark_controller.cc (right): https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc#newcode75 cc/debug/micro_benchmark_controller.cc:75: (*it)->CreateBenchmarkImpl(main_controller_message_loop_); So if you have a MicroBenchmarkImpl that doesn't ...
7 years, 1 month ago (2013-11-12 01:09:36 UTC) #2
vmpstr
https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc File cc/debug/micro_benchmark_controller.cc (right): https://codereview.chromium.org/67563002/diff/1/cc/debug/micro_benchmark_controller.cc#newcode75 cc/debug/micro_benchmark_controller.cc:75: (*it)->CreateBenchmarkImpl(main_controller_message_loop_); On 2013/11/12 01:09:36, enne wrote: > So if ...
7 years, 1 month ago (2013-11-12 17:51:38 UTC) #3
enne (OOO)
What prevents a user-after-free? In your other patch you use base::Unretained. It seems possible that ...
7 years, 1 month ago (2013-11-12 19:22:55 UTC) #4
vmpstr
Please take a look. For the use-after-free, I was kind of working on a (probably ...
7 years, 1 month ago (2013-11-12 20:20:37 UTC) #5
enne (OOO)
https://codereview.chromium.org/67563002/diff/110001/cc/debug/micro_benchmark.cc File cc/debug/micro_benchmark.cc (right): https://codereview.chromium.org/67563002/diff/110001/cc/debug/micro_benchmark.cc#newcode45 cc/debug/micro_benchmark.cc:45: processed_for_benchmark_impl_ = true; Ok, sure.
7 years, 1 month ago (2013-11-12 20:27:54 UTC) #6
enne (OOO)
MicroBenchmarkImpl unit test?
7 years, 1 month ago (2013-11-14 00:18:47 UTC) #7
vmpstr
On 2013/11/14 00:18:47, enne wrote: > MicroBenchmarkImpl unit test? You mean the ControllerImpl or the ...
7 years, 1 month ago (2013-11-14 00:39:36 UTC) #8
enne (OOO)
On 2013/11/14 00:39:36, vmpstr wrote: > On 2013/11/14 00:18:47, enne wrote: > > MicroBenchmarkImpl unit ...
7 years, 1 month ago (2013-11-14 00:41:22 UTC) #9
vmpstr
PTAL. Added a unittest. I know what you mean about needing a WeakPtrFactory... I think ...
7 years, 1 month ago (2013-11-14 18:48:30 UTC) #10
enne (OOO)
On 2013/11/14 18:48:30, vmpstr wrote: > PTAL. Added a unittest. lgtm, thanks!
7 years, 1 month ago (2013-11-14 18:51:29 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/320001
7 years, 1 month ago (2013-11-14 20:16:32 UTC) #12
commit-bot: I haz the power
Retried try job too often on linux_chromeos for step(s) app_list_unittests, ash_unittests, aura_unittests, base_unittests, browser_tests, cacheinvalidation_unittests, ...
7 years, 1 month ago (2013-11-14 21:13:26 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/790001
7 years, 1 month ago (2013-11-14 23:44:57 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/790001
7 years, 1 month ago (2013-11-15 01:50:43 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/790001
7 years, 1 month ago (2013-11-15 04:04:23 UTC) #16
commit-bot: I haz the power
Retried try job too often on linux_rel for step(s) browser_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_rel&number=190580
7 years, 1 month ago (2013-11-15 07:37:54 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/1140001
7 years, 1 month ago (2013-11-15 18:37:03 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/1140001
7 years, 1 month ago (2013-11-15 22:05:57 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmpstr@chromium.org/67563002/1140001
7 years, 1 month ago (2013-11-16 00:35:29 UTC) #20
commit-bot: I haz the power
7 years, 1 month ago (2013-11-18 00:39:34 UTC) #21
Message was sent while issue was closed.
Change committed as 235585

Powered by Google App Engine
This is Rietveld 408576698