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

Unified Diff: cc/resources/worker_pool_perftest.cc

Issue 17351017: Re-land: cc: Add raster finished signals to RasterWorkerPool. (Closed) Base URL: http://git.chromium.org/chromium/src.git@new-graph-build
Patch Set: fix flaky unit tests Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/worker_pool.cc ('k') | cc/resources/worker_pool_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/worker_pool_perftest.cc
diff --git a/cc/resources/worker_pool_perftest.cc b/cc/resources/worker_pool_perftest.cc
index d708cf5f2ae14bd1fa3d4f27f639400222ee7167..aee1f24a27ded8928bad7ddf71e7341b6b287eb7 100644
--- a/cc/resources/worker_pool_perftest.cc
+++ b/cc/resources/worker_pool_perftest.cc
@@ -69,41 +69,31 @@ class PerfWorkerPool : public WorkerPool {
unsigned max_depth,
unsigned num_children_per_node) {
TaskVector tasks;
- unsigned priority = 0u;
TaskGraph graph;
- scoped_ptr<GraphNode> root_node;
- if (root_task) {
- root_node = make_scoped_ptr(new GraphNode);
- root_node->set_task(root_task);
- }
+ scoped_ptr<internal::GraphNode> root_node;
+ if (root_task)
+ root_node = make_scoped_ptr(new internal::GraphNode(root_task, 0u));
- scoped_ptr<GraphNode> leaf_node;
- if (leaf_task) {
- leaf_node = make_scoped_ptr(new GraphNode);
- leaf_node->set_task(leaf_task);
- }
+ scoped_ptr<internal::GraphNode> leaf_node;
+ if (leaf_task)
+ leaf_node = make_scoped_ptr(new internal::GraphNode(leaf_task, 0u));
if (max_depth) {
- priority = BuildTaskGraph(&tasks,
- &graph,
- root_node.get(),
- leaf_node.get(),
- priority,
- 0,
- max_depth,
- num_children_per_node);
+ BuildTaskGraph(&tasks,
+ &graph,
+ root_node.get(),
+ leaf_node.get(),
+ 0,
+ max_depth,
+ num_children_per_node);
}
- if (leaf_node) {
- leaf_node->set_priority(priority++);
+ if (leaf_node)
graph.set(leaf_task, leaf_node.Pass());
- }
- if (root_node) {
- root_node->set_priority(priority++);
+ if (root_node)
graph.set(root_task, root_node.Pass());
- }
SetTaskGraph(&graph);
@@ -113,28 +103,26 @@ class PerfWorkerPool : public WorkerPool {
private:
typedef std::vector<scoped_refptr<internal::WorkerPoolTask> > TaskVector;
- unsigned BuildTaskGraph(TaskVector* tasks,
- TaskGraph* graph,
- GraphNode* dependent_node,
- GraphNode* leaf_node,
- unsigned priority,
- unsigned current_depth,
- unsigned max_depth,
- unsigned num_children_per_node) {
+ void BuildTaskGraph(TaskVector* tasks,
+ TaskGraph* graph,
+ internal::GraphNode* dependent_node,
+ internal::GraphNode* leaf_node,
+ unsigned current_depth,
+ unsigned max_depth,
+ unsigned num_children_per_node) {
scoped_refptr<PerfWorkerPoolTaskImpl> task(new PerfWorkerPoolTaskImpl);
- scoped_ptr<GraphNode> node(new GraphNode);
- node->set_task(task.get());
+ scoped_ptr<internal::GraphNode> node(
+ new internal::GraphNode(task.get(), 0u));
if (current_depth < max_depth) {
for (unsigned i = 0; i < num_children_per_node; ++i) {
- priority = BuildTaskGraph(tasks,
- graph,
- node.get(),
- leaf_node,
- priority,
- current_depth + 1,
- max_depth,
- num_children_per_node);
+ BuildTaskGraph(tasks,
+ graph,
+ node.get(),
+ leaf_node,
+ current_depth + 1,
+ max_depth,
+ num_children_per_node);
}
} else if (leaf_node) {
leaf_node->add_dependent(node.get());
@@ -145,11 +133,8 @@ class PerfWorkerPool : public WorkerPool {
node->add_dependent(dependent_node);
dependent_node->add_dependency();
}
- node->set_priority(priority);
graph->set(task.get(), node.Pass());
tasks->push_back(task.get());
-
- return priority + 1;
}
TaskVector tasks_;
« no previous file with comments | « cc/resources/worker_pool.cc ('k') | cc/resources/worker_pool_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698