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

Unified Diff: cc/base/devtools_instrumentation.h

Issue 2904743002: cc: Add UMA for tracking decode duration for out of raster decodes. (Closed)
Patch Set: addressed comments Created 3 years, 7 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 | « no previous file | cc/tiles/gpu_image_decode_cache.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/base/devtools_instrumentation.h
diff --git a/cc/base/devtools_instrumentation.h b/cc/base/devtools_instrumentation.h
index 40e2d9efd708851bbb56a374b094ec57048c9008..f16be41672129b71addae400f712d812b8fb31bf 100644
--- a/cc/base/devtools_instrumentation.h
+++ b/cc/base/devtools_instrumentation.h
@@ -57,31 +57,56 @@ class CC_BASE_EXPORT ScopedLayerTask {
class CC_BASE_EXPORT ScopedImageDecodeTask {
public:
- enum Type { SOFTWARE, GPU };
-
- ScopedImageDecodeTask(const void* imagePtr, Type type)
- : type_(type), start_time_(base::TimeTicks::Now()) {
+ enum DecodeType { kSoftware, kGpu };
+ enum TaskType { kInRaster, kOutOfRaster };
+
+ ScopedImageDecodeTask(const void* image_ptr,
+ DecodeType decode_type,
+ TaskType task_type)
+ : decode_type_(decode_type),
+ task_type_(task_type),
+ start_time_(base::TimeTicks::Now()) {
TRACE_EVENT_BEGIN1(internal::kCategory, internal::kImageDecodeTask,
internal::kPixelRefId,
- reinterpret_cast<uint64_t>(imagePtr));
+ reinterpret_cast<uint64_t>(image_ptr));
}
~ScopedImageDecodeTask() {
TRACE_EVENT_END0(internal::kCategory, internal::kImageDecodeTask);
base::TimeDelta duration = base::TimeTicks::Now() - start_time_;
- switch (type_) {
- case SOFTWARE:
- UMA_HISTOGRAM_COUNTS_1M("Renderer4.ImageDecodeTaskDurationUs.Software",
- duration.InMicroseconds());
+ switch (task_type_) {
+ case kInRaster:
+ switch (decode_type_) {
+ case kSoftware:
+ UMA_HISTOGRAM_COUNTS_1M(
+ "Renderer4.ImageDecodeTaskDurationUs.Software",
+ duration.InMicroseconds());
+ break;
+ case kGpu:
+ UMA_HISTOGRAM_COUNTS_1M("Renderer4.ImageDecodeTaskDurationUs.Gpu",
+ duration.InMicroseconds());
+ break;
+ }
break;
- case GPU:
- UMA_HISTOGRAM_COUNTS_1M("Renderer4.ImageDecodeTaskDurationUs.Gpu",
- duration.InMicroseconds());
+ case kOutOfRaster:
+ switch (decode_type_) {
+ case kSoftware:
+ UMA_HISTOGRAM_COUNTS_1M(
+ "Renderer4.ImageDecodeTaskDurationUs.OutOfRaster.Software",
+ duration.InMicroseconds());
+ break;
+ case kGpu:
+ UMA_HISTOGRAM_COUNTS_1M(
+ "Renderer4.ImageDecodeTaskDurationUs.OutOfRaster.Gpu",
+ duration.InMicroseconds());
+ break;
+ }
break;
}
}
Ilya Sherman 2017/06/01 23:50:50 Why is there so much non-trivial code implemented
Khushal 2017/06/02 00:17:22 I guess it was just following the rest of the styl
private:
- const Type type_;
+ const DecodeType decode_type_;
+ const TaskType task_type_;
const base::TimeTicks start_time_;
DISALLOW_COPY_AND_ASSIGN(ScopedImageDecodeTask);
};
« no previous file with comments | « no previous file | cc/tiles/gpu_image_decode_cache.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698