Commit 5b3ec3d3 authored by Sadrul Habib Chowdhury's avatar Sadrul Habib Chowdhury Committed by Commit Bot

gpu: Add some trace-events for peak gpu memory tracking.

Add some trace-events to track the peak gpu memory usage, and the steps
when the peak usage changes.

Screenshot: https://i.imgur.com/VXtOodN.png

BUG=908462

Change-Id: Ic03d69f20ab4de06606f6ca5f4449b7993a8cb6a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1984899
Auto-Submit: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Eric Karl <ericrk@chromium.org>
Reviewed-by: default avatarEric Karl <ericrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#728077}
parent 27604226
......@@ -67,12 +67,19 @@ uint64_t GpuChannelManager::GpuPeakMemoryMonitor::GetPeakMemoryUsage(
void GpuChannelManager::GpuPeakMemoryMonitor::StartGpuMemoryTracking(
uint32_t sequence_num) {
TRACE_EVENT_ASYNC_BEGIN1("gpu", "PeakMemoryTracking", sequence_num, "start",
current_memory_);
sequence_trackers_.emplace(sequence_num, current_memory_);
}
void GpuChannelManager::GpuPeakMemoryMonitor::StopGpuMemoryTracking(
uint32_t sequence_num) {
sequence_trackers_.erase(sequence_num);
auto sequence = sequence_trackers_.find(sequence_num);
if (sequence != sequence_trackers_.end()) {
TRACE_EVENT_ASYNC_END1("gpu", "PeakMemoryTracking", sequence_num, "peak",
sequence->second);
sequence_trackers_.erase(sequence);
}
}
void GpuChannelManager::GpuPeakMemoryMonitor::OnMemoryAllocatedChange(
......@@ -89,8 +96,14 @@ void GpuChannelManager::GpuPeakMemoryMonitor::OnMemoryAllocatedChange(
// |peak_since_last_sequence_update_| on the the memory changes. Then only
// update the sequences with a new one is added, or the peak is requested.
for (auto& sequence : sequence_trackers_) {
if (current_memory_ > sequence.second)
if (current_memory_ > sequence.second) {
sequence.second = current_memory_;
for (auto& sequence : sequence_trackers_) {
TRACE_EVENT_ASYNC_STEP_INTO1("gpu", "PeakMemoryTracking",
sequence.first, "Peak", "peak",
current_memory_);
}
}
}
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment