| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/task_management/sampling/task_group_sampler.h" | 5 #include "chrome/browser/task_management/sampling/task_group_sampler.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 138 // Memory = working_set.private which is working set minus shareable. This | 138 // Memory = working_set.private which is working set minus shareable. This |
| 139 // avoids the unpredictable counting that occurs when calculating memory as | 139 // avoids the unpredictable counting that occurs when calculating memory as |
| 140 // working set minus shared (renderer code counted when one tab is open and | 140 // working set minus shared (renderer code counted when one tab is open and |
| 141 // not counted when two or more are open) and it is much more efficient to | 141 // not counted when two or more are open) and it is much more efficient to |
| 142 // calculate on Windows. | 142 // calculate on Windows. |
| 143 memory_usage.physical_bytes = | 143 memory_usage.physical_bytes = |
| 144 static_cast<int64_t>(process_metrics_->GetWorkingSetSize()); | 144 static_cast<int64_t>(process_metrics_->GetWorkingSetSize()); |
| 145 memory_usage.physical_bytes -= | 145 memory_usage.physical_bytes -= |
| 146 static_cast<int64_t>(ws_usage.shareable * 1024); | 146 static_cast<int64_t>(ws_usage.shareable * 1024); |
| 147 #endif | 147 #endif |
| 148 #if defined(OS_CHROMEOS) |
| 149 memory_usage.swapped_bytes = ws_usage.swapped * 1024; |
| 150 #endif |
| 148 } | 151 } |
| 149 | 152 |
| 150 return memory_usage; | 153 return memory_usage; |
| 151 } | 154 } |
| 152 | 155 |
| 153 int TaskGroupSampler::RefreshIdleWakeupsPerSecond() { | 156 int TaskGroupSampler::RefreshIdleWakeupsPerSecond() { |
| 154 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); | 157 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); |
| 155 | 158 |
| 156 return process_metrics_->GetIdleWakeupsPerSecond(); | 159 return process_metrics_->GetIdleWakeupsPerSecond(); |
| 157 } | 160 } |
| 158 | 161 |
| 159 #if defined(OS_LINUX) | 162 #if defined(OS_LINUX) |
| 160 int TaskGroupSampler::RefreshOpenFdCount() { | 163 int TaskGroupSampler::RefreshOpenFdCount() { |
| 161 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); | 164 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); |
| 162 | 165 |
| 163 return process_metrics_->GetOpenFdCount(); | 166 return process_metrics_->GetOpenFdCount(); |
| 164 } | 167 } |
| 165 #endif // defined(OS_LINUX) | 168 #endif // defined(OS_LINUX) |
| 166 | 169 |
| 167 bool TaskGroupSampler::RefreshProcessPriority() { | 170 bool TaskGroupSampler::RefreshProcessPriority() { |
| 168 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); | 171 DCHECK(worker_pool_sequenced_checker_.CalledOnValidSequencedThread()); |
| 169 | 172 |
| 170 return process_.IsProcessBackgrounded(); | 173 return process_.IsProcessBackgrounded(); |
| 171 } | 174 } |
| 172 | 175 |
| 173 } // namespace task_management | 176 } // namespace task_management |
| OLD | NEW |