[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240627172156.235421-1-xavier_qy@163.com>
Date: Fri, 28 Jun 2024 01:21:54 +0800
From: Xavier <xavier_qy@....com>
To: mingo@...hat.com,
peterz@...radead.org,
juri.lelli@...hat.com,
vincent.guittot@...aro.org
Cc: dietmar.eggemann@....com,
rostedt@...dmis.org,
bsegall@...gle.com,
mgorman@...e.de,
bristot@...hat.com,
vschneid@...hat.com,
linux-kernel@...r.kernel.org,
Xavier <xavier_qy@....com>
Subject: [PATCH-RT sched v1 0/2] Optimize the RT group scheduling
Hi all,
The first patch optimizes the enqueue and dequeue of rt_se, the strategy
employs a bottom-up removal approach.
The second patch provides validation for the efficiency improvements made
by patch 1. The test case count the number of infinite loop executions for
all threads.
origion optimized
10242794134 10659512784
13650210798 13555924695
12953159254 13733609646
11888973428 11742656925
12791797633 13447598015
11451270205 11704847480
13335320346 13858155642
10682907328 10513565749
10173249704 10254224697
8309259793 8893668653
avg 11547894262 11836376429
Run two QEMU emulators simultaneously, one running the original kernel and the
other running the optimized kernel, and compare the average of the results over
10 runs. After optimizing, the number of iterations in the infinite loop increased
by approximately 2.5%.
Kindly review.
Xavier (2):
RT SCHED: Optimize the enqueue and dequeue operations for rt_se
RT test: Adding test cases for RT group scheduling
MAINTAINERS | 7 +
kernel/sched/debug.c | 50 ++++
kernel/sched/rt.c | 277 +++++++++++++++---
kernel/sched/sched.h | 1 +
tools/testing/selftests/sched/Makefile | 4 +-
tools/testing/selftests/sched/deadloop.c | 192 ++++++++++++
.../selftests/sched/rt_group_sched_test.sh | 119 ++++++++
7 files changed, 606 insertions(+), 44 deletions(-)
create mode 100644 tools/testing/selftests/sched/deadloop.c
create mode 100755 tools/testing/selftests/sched/rt_group_sched_test.sh
--
2.45.2
Powered by blists - more mailing lists