From ab0c0d09362a67d1434ded06f4b182ba8ba5e9e0 Mon Sep 17 00:00:00 2001 From: edwardcaoyue Date: Tue, 25 Jul 2023 14:46:11 +0800 Subject: [PATCH 1/7] add new qos level Signed-off-by: edwardcaoyue Change-Id: Ia95b6c745396ec977bb93797e82376ae85215b5a --- interfaces/inner_api/qos.h | 4 +++- qos_manager/src/qos_manager.cpp | 6 +++--- test/unittest/phone/qos_manager_test.cpp | 8 ++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/interfaces/inner_api/qos.h b/interfaces/inner_api/qos.h index 98a82b8..28553f7 100644 --- a/interfaces/inner_api/qos.h +++ b/interfaces/inner_api/qos.h @@ -22,7 +22,9 @@ enum class QosLevel { qos_background = 1, qos_utility, qos_default, - qos_user_initiated = 4, + qos_user_initiated, + qos_deadline_request, + qos_user_interactive, }; class QosController { diff --git a/qos_manager/src/qos_manager.cpp b/qos_manager/src/qos_manager.cpp index 3488b47..9dfdc7c 100644 --- a/qos_manager/src/qos_manager.cpp +++ b/qos_manager/src/qos_manager.cpp @@ -127,13 +127,13 @@ int QosController::SetPolicy() int QosController::SetThreadQosForOtherThread(enum QosLevel level, int tid) { int qos = static_cast(level); - if (level < QosLevel::qos_background || level > QosLevel::qos_user_initiated) { + if (level < QosLevel::qos_background || level > QosLevel::qos_user_interactive) { RME_LOGE("invalid qos level %{public}d", qos); return ERROR_NUM; } int ret = QosApplyForThread(qos, tid); if (ret == 0) { - RME_LOGI("qoslevel %{public}d apply for tid %{public}d success", qos, tid); + RME_LOGD("qoslevel %{public}d apply for tid %{public}d success", qos, tid); } else { RME_LOGE("qoslevel %{public}d apply for tid %{public}d failure", qos, tid); } @@ -145,7 +145,7 @@ int QosController::ResetThreadQosForOtherThread(int tid) { int ret = QosLeaveForThread(tid); if (ret == 0) { - RME_LOGI("qoslevel reset for tid %{public}d success", tid); + RME_LOGD("qoslevel reset for tid %{public}d success", tid); } else { RME_LOGE("qoslevel reset for tid %{public}d failure", tid); } diff --git a/test/unittest/phone/qos_manager_test.cpp b/test/unittest/phone/qos_manager_test.cpp index ce4d8e6..b0e7e1b 100644 --- a/test/unittest/phone/qos_manager_test.cpp +++ b/test/unittest/phone/qos_manager_test.cpp @@ -61,6 +61,10 @@ HWTEST_F(QosManagerTest, SetThreadQosTest1, TestSize.Level1) EXPECT_EQ(ret, 0); ret = SetThreadQos(QosLevel::qos_background); EXPECT_EQ(ret, 0); + ret = SetThreadQos(QosLevel::qos_deadline_request); + EXPECT_EQ(ret, 0); + ret = SetThreadQos(QosLevel::qos_user_interactive); + EXPECT_EQ(ret, 0); } HWTEST_F(QosManagerTest, SetThreadQosTest3, TestSize.Level1) @@ -73,6 +77,10 @@ HWTEST_F(QosManagerTest, SetThreadQosTest3, TestSize.Level1) EXPECT_EQ(ret, 0); ret = SetQosForOtherThread(QosLevel::qos_background, gettid()); EXPECT_EQ(ret, 0); + ret = SetQosForOtherThread(QosLevel::qos_deadline_request, gettid()); + EXPECT_EQ(ret, 0); + ret = SetQosForOtherThread(QosLevel::qos_user_interactive, gettid()); + EXPECT_EQ(ret, 0); } HWTEST_F(QosManagerTest, ResetThreadQosTest1, TestSize.Level1) -- Gitee From fb429e0772afcfdcc655306c4a2d85d4e7bc6480 Mon Sep 17 00:00:00 2001 From: c459517356 Date: Wed, 26 Jul 2023 15:29:54 +0800 Subject: [PATCH 2/7] Add the function of adding a group Signed-off-by: c459517356 --- frameworks/core/frame_aware_policy/src/intellisense_server.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/core/frame_aware_policy/src/intellisense_server.cpp b/frameworks/core/frame_aware_policy/src/intellisense_server.cpp index d91b3d7..740bdbf 100644 --- a/frameworks/core/frame_aware_policy/src/intellisense_server.cpp +++ b/frameworks/core/frame_aware_policy/src/intellisense_server.cpp @@ -153,7 +153,7 @@ void IntelliSenseServer::NewAppRecord(int pid) } } AppInfo tempRecord(pid); - tempRecord.SetAppState(AppState::APP_FOREGROUND); + tempRecord.SetAppState(AppState::APP_FOREGROUND_WITHOUT_RTG); m_historyApp.push_back(tempRecord); } -- Gitee From 29d74ce364aa82eae5f14f4b6a990907c56996c0 Mon Sep 17 00:00:00 2001 From: gavin Date: Sat, 29 Jul 2023 19:50:25 +0800 Subject: [PATCH 3/7] list_fling set prio Signed-off-by: gavin --- frameworks/core/frame_aware_collector/src/rme_core_sched.cpp | 3 +-- frameworks/core/frame_aware_policy/src/intellisense_server.cpp | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/frameworks/core/frame_aware_collector/src/rme_core_sched.cpp b/frameworks/core/frame_aware_collector/src/rme_core_sched.cpp index 031f25f..7c3e1ee 100644 --- a/frameworks/core/frame_aware_collector/src/rme_core_sched.cpp +++ b/frameworks/core/frame_aware_collector/src/rme_core_sched.cpp @@ -69,7 +69,6 @@ void RmeCoreSched::BeginFlushAnimation() if (!m_uiHasSend) { StartTrace(HITRACE_TAG_ACE, ("FrameS-Begin&AddThread-rtg:" + to_string(m_rtg) + " ret:" + to_string(ret)).c_str()); - AddThreadToRtg(m_uiTid, m_rtg); m_uiHasSend = true; } else { StartTrace(HITRACE_TAG_ACE, "FrameS-Begin"); @@ -143,7 +142,7 @@ void RmeCoreSched::HandleEndScene() if (m_rtg <= 0) { return; } - int ret = EndScene(m_rtg); + int ret = 0; m_uiHasSend = false; StartTrace(HITRACE_TAG_ACE, ("FrameS-EndFrameFreq-rtg:" + to_string(m_rtg) + " ret:" + to_string(ret)).c_str()); diff --git a/frameworks/core/frame_aware_policy/src/intellisense_server.cpp b/frameworks/core/frame_aware_policy/src/intellisense_server.cpp index 740bdbf..fa17b79 100644 --- a/frameworks/core/frame_aware_policy/src/intellisense_server.cpp +++ b/frameworks/core/frame_aware_policy/src/intellisense_server.cpp @@ -139,6 +139,7 @@ void IntelliSenseServer::NewBackground(int pid) iter->SetAppState(AppState::APP_BACKGROUND); int grpId = iter->GetRtgrp(); if (grpId > 0) { + EndScene(grpId); DestroyRtgGrp(grpId); } } @@ -165,6 +166,7 @@ void IntelliSenseServer::NewDiedProcess(int pid) if (iter->GetAppPid() == pid) { int grpId = iter->GetRtgrp(); if (grpId > 0) { + EndScene(grpId); DestroyRtgGrp(grpId); } iter = m_historyApp.erase(iter); -- Gitee From bcfd7719829890ff483a742d13710dd76c82b0b0 Mon Sep 17 00:00:00 2001 From: jizhenli Date: Sat, 29 Jul 2023 14:07:43 +0000 Subject: [PATCH 4/7] update interfaces/inner_api/qos.h. Signed-off-by: jizhenli --- interfaces/inner_api/qos.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/interfaces/inner_api/qos.h b/interfaces/inner_api/qos.h index 28553f7..98a82b8 100644 --- a/interfaces/inner_api/qos.h +++ b/interfaces/inner_api/qos.h @@ -22,9 +22,7 @@ enum class QosLevel { qos_background = 1, qos_utility, qos_default, - qos_user_initiated, - qos_deadline_request, - qos_user_interactive, + qos_user_initiated = 4, }; class QosController { -- Gitee From 61ed16633299d2fd4ce10d769316a819ecf1ad36 Mon Sep 17 00:00:00 2001 From: jizhenli Date: Sat, 29 Jul 2023 14:09:25 +0000 Subject: [PATCH 5/7] update test/unittest/phone/qos_manager_test.cpp. Signed-off-by: jizhenli --- test/unittest/phone/qos_manager_test.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/test/unittest/phone/qos_manager_test.cpp b/test/unittest/phone/qos_manager_test.cpp index b0e7e1b..8ef1a0d 100644 --- a/test/unittest/phone/qos_manager_test.cpp +++ b/test/unittest/phone/qos_manager_test.cpp @@ -77,10 +77,6 @@ HWTEST_F(QosManagerTest, SetThreadQosTest3, TestSize.Level1) EXPECT_EQ(ret, 0); ret = SetQosForOtherThread(QosLevel::qos_background, gettid()); EXPECT_EQ(ret, 0); - ret = SetQosForOtherThread(QosLevel::qos_deadline_request, gettid()); - EXPECT_EQ(ret, 0); - ret = SetQosForOtherThread(QosLevel::qos_user_interactive, gettid()); - EXPECT_EQ(ret, 0); } HWTEST_F(QosManagerTest, ResetThreadQosTest1, TestSize.Level1) -- Gitee From 42f00c2f34289b7bc1a54809662600ac76ee9ff3 Mon Sep 17 00:00:00 2001 From: jizhenli Date: Sat, 29 Jul 2023 14:09:55 +0000 Subject: [PATCH 6/7] update test/unittest/phone/qos_manager_test.cpp. Signed-off-by: jizhenli --- test/unittest/phone/qos_manager_test.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/test/unittest/phone/qos_manager_test.cpp b/test/unittest/phone/qos_manager_test.cpp index 8ef1a0d..ce4d8e6 100644 --- a/test/unittest/phone/qos_manager_test.cpp +++ b/test/unittest/phone/qos_manager_test.cpp @@ -61,10 +61,6 @@ HWTEST_F(QosManagerTest, SetThreadQosTest1, TestSize.Level1) EXPECT_EQ(ret, 0); ret = SetThreadQos(QosLevel::qos_background); EXPECT_EQ(ret, 0); - ret = SetThreadQos(QosLevel::qos_deadline_request); - EXPECT_EQ(ret, 0); - ret = SetThreadQos(QosLevel::qos_user_interactive); - EXPECT_EQ(ret, 0); } HWTEST_F(QosManagerTest, SetThreadQosTest3, TestSize.Level1) -- Gitee From e05c1dfb75c1896a7003c9477b7fd1a467b6ebeb Mon Sep 17 00:00:00 2001 From: jizhenli Date: Sat, 29 Jul 2023 14:10:34 +0000 Subject: [PATCH 7/7] update qos_manager/src/qos_manager.cpp. Signed-off-by: jizhenli --- qos_manager/src/qos_manager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qos_manager/src/qos_manager.cpp b/qos_manager/src/qos_manager.cpp index 9dfdc7c..ec30133 100644 --- a/qos_manager/src/qos_manager.cpp +++ b/qos_manager/src/qos_manager.cpp @@ -127,7 +127,7 @@ int QosController::SetPolicy() int QosController::SetThreadQosForOtherThread(enum QosLevel level, int tid) { int qos = static_cast(level); - if (level < QosLevel::qos_background || level > QosLevel::qos_user_interactive) { + if (level < QosLevel::qos_background || level > QosLevel::qos_user_initiated) { RME_LOGE("invalid qos level %{public}d", qos); return ERROR_NUM; } -- Gitee