From 56f2cff4dc0dadb028a0424dfbbdec6d064bfd89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=89=9B=E5=9B=BD=E4=BA=AE?= Date: Thu, 28 Aug 2025 17:34:19 +0800 Subject: [PATCH 1/3] =?UTF-8?q?cpu=E9=A2=91=E7=82=B9=E9=87=87=E9=9B=86?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 牛国亮 --- .../device_command/collector/include/CPU.h | 2 ++ .../device_command/collector/src/CPU.cpp | 13 ++++++++++--- .../services/ipc/src/sp_thread_socket.cpp | 2 ++ .../services/task_mgr/src/task_manager.cpp | 2 +- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/smartperf_device/device_command/collector/include/CPU.h b/smartperf_device/device_command/collector/include/CPU.h index eac3bb4b..b34fc41f 100644 --- a/smartperf_device/device_command/collector/include/CPU.h +++ b/smartperf_device/device_command/collector/include/CPU.h @@ -52,6 +52,7 @@ public: std::map GetCpuCoreCurFreqs(); void GetCpuFreqItemData(std::map &cpuFreqResult); void GetCpuUsageItemData(std::map &cpuUsageResult); + void SetCoreCurFreqFlag(); private: CPU() {}; CPU(const CPU &); @@ -62,6 +63,7 @@ private: const std::string totalcpu = "Totalcpu"; int twenty = 20; int thousand = 1000; + bool coreCurFreqFlag = false; }; } } diff --git a/smartperf_device/device_command/collector/src/CPU.cpp b/smartperf_device/device_command/collector/src/CPU.cpp index 8fed0fd1..fdc9aeaa 100644 --- a/smartperf_device/device_command/collector/src/CPU.cpp +++ b/smartperf_device/device_command/collector/src/CPU.cpp @@ -52,9 +52,11 @@ std::map CPU::ItemData() } } - std::map cpuCoreCurFreqs = GetCpuCoreCurFreqs(); - for (const auto& item : cpuCoreCurFreqs) { - result[item.first] = item.second; + if (coreCurFreqFlag) { + std::map cpuCoreCurFreqs = GetCpuCoreCurFreqs(); + for (const auto& item : cpuCoreCurFreqs) { + result[item.first] = item.second; + } } LOGI("CPU:ItemData map size(%u)", result.size()); @@ -258,5 +260,10 @@ std::map CPU::GetCpuCoreCurFreqs() } return cpuCoreCurFreqs; } + +void CPU::SetCoreCurFreqFlag() +{ + coreCurFreqFlag = true; +} } } diff --git a/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp b/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp index dd78055d..eeeebf0f 100644 --- a/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp +++ b/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp @@ -928,6 +928,8 @@ void SpThreadSocket::StartHapCollecting(SpServerSocket &spSocket) LOGD("UDP START Task starting..."); RAM &ram = RAM::GetInstance(); ram.SetFirstFlag(); + CPU &cpu = CPU::GetInstance(); + cpu.SetCoreCurFreqFlag(); if (udpStartCollect.joinable()) { udpStartCollect.join(); } diff --git a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp index ba3112ff..d312fb4a 100644 --- a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp +++ b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp @@ -490,7 +490,7 @@ std::string TaskManager::MapToString(std::map& myMap) "cpu7Frequency", "cpu8Frequency", "cpu9Frequency", "cpu10Frequency", "cpu11Frequency", "gpuFrequency", "pss", "shell_frame", "shell_back", "soc_thermal", "cpu0Usage", "cpu1Usage", "cpu2Usage", "cpu3Usage", "cpu4Usage", "cpu5Usage", "cpu6Usage", "cpu7Usage", "cpu8Usage", "cpu9Usage", "cpu10Usage", "cpu11Usage", - "gpuLoad"}; + "gpuLoad", "cpu0_curFrequency", "cpu1_curFrequency", "cpu3_curFrequency"}; for (const auto& key : keysToFind) { if (auto iter = myMap.find(key); iter != myMap.end()) { appCollectMap += iter->first + ":" + iter->second + ","; -- Gitee From 792fd1f18681ca88d8ba3ce7a9df5a0d000471de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=89=9B=E5=9B=BD=E4=BA=AE?= Date: Thu, 28 Aug 2025 20:18:38 +0800 Subject: [PATCH 2/3] =?UTF-8?q?cpu=E5=A4=A7=E4=B8=AD=E5=B0=8F=E6=A0=B8?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E9=A2=91=E7=82=B9=E9=87=87=E9=9B=86=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 牛国亮 --- .../device_command/services/ipc/src/sp_thread_socket.cpp | 4 ++-- .../device_command/services/task_mgr/src/task_manager.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp b/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp index eeeebf0f..f24ee7f3 100644 --- a/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp +++ b/smartperf_device/device_command/services/ipc/src/sp_thread_socket.cpp @@ -45,6 +45,7 @@ #include "include/RAM.h" #include "include/FPS.h" #include "include/hiperf.h" +#include "include/CPU.h" #define SMARTPERF "smartperf" namespace OHOS { @@ -780,6 +781,7 @@ void SpThreadSocket::UdpStartMessProcess(SpServerSocket &spSocket, SpProfiler *p taskMgr_->AddTask(&SdkDataRecv::GetInstance(), false); } bytrace.ClearTraceFiles(); + CPU::GetInstance().SetCoreCurFreqFlag(); StartHapCollecting(spSocket); } else if (iterator->first == MessageType::APP_RECEIVE_DATA_ON) { if (taskMgr_ != nullptr) { @@ -928,8 +930,6 @@ void SpThreadSocket::StartHapCollecting(SpServerSocket &spSocket) LOGD("UDP START Task starting..."); RAM &ram = RAM::GetInstance(); ram.SetFirstFlag(); - CPU &cpu = CPU::GetInstance(); - cpu.SetCoreCurFreqFlag(); if (udpStartCollect.joinable()) { udpStartCollect.join(); } diff --git a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp index d312fb4a..a2895021 100644 --- a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp +++ b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp @@ -490,7 +490,7 @@ std::string TaskManager::MapToString(std::map& myMap) "cpu7Frequency", "cpu8Frequency", "cpu9Frequency", "cpu10Frequency", "cpu11Frequency", "gpuFrequency", "pss", "shell_frame", "shell_back", "soc_thermal", "cpu0Usage", "cpu1Usage", "cpu2Usage", "cpu3Usage", "cpu4Usage", "cpu5Usage", "cpu6Usage", "cpu7Usage", "cpu8Usage", "cpu9Usage", "cpu10Usage", "cpu11Usage", - "gpuLoad", "cpu0_curFrequency", "cpu1_curFrequency", "cpu3_curFrequency"}; + "gpuLoad", "cpu0_curFrequency", "cpu1_curFrequency", "cpu_curFrequency"}; for (const auto& key : keysToFind) { if (auto iter = myMap.find(key); iter != myMap.end()) { appCollectMap += iter->first + ":" + iter->second + ","; -- Gitee From 86a790ee6bfa510c8ec635d7ee0e8f1ec9a0de7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=89=9B=E5=9B=BD=E4=BA=AE?= Date: Thu, 28 Aug 2025 20:21:23 +0800 Subject: [PATCH 3/3] =?UTF-8?q?cpu=E5=A4=A7=E4=B8=AD=E5=B0=8F=E6=A0=B8?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E9=A2=91=E7=82=B9=E9=87=87=E9=9B=86=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 牛国亮 --- .../device_command/services/task_mgr/src/task_manager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp index a2895021..237d6797 100644 --- a/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp +++ b/smartperf_device/device_command/services/task_mgr/src/task_manager.cpp @@ -490,7 +490,7 @@ std::string TaskManager::MapToString(std::map& myMap) "cpu7Frequency", "cpu8Frequency", "cpu9Frequency", "cpu10Frequency", "cpu11Frequency", "gpuFrequency", "pss", "shell_frame", "shell_back", "soc_thermal", "cpu0Usage", "cpu1Usage", "cpu2Usage", "cpu3Usage", "cpu4Usage", "cpu5Usage", "cpu6Usage", "cpu7Usage", "cpu8Usage", "cpu9Usage", "cpu10Usage", "cpu11Usage", - "gpuLoad", "cpu0_curFrequency", "cpu1_curFrequency", "cpu_curFrequency"}; + "gpuLoad", "cpu0_curFrequency", "cpu1_curFrequency", "cpu2_curFrequency"}; for (const auto& key : keysToFind) { if (auto iter = myMap.find(key); iter != myMap.end()) { appCollectMap += iter->first + ":" + iter->second + ","; -- Gitee