[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87edihes5g.ffs@tglx>
Date: Fri, 29 Sep 2023 02:31:55 +0200
From: Thomas Gleixner <tglx@...utronix.de>
To: Xiaobing Li <xiaobing.li@...sung.com>, mingo@...hat.com,
peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
bristot@...hat.com, vschneid@...hat.com, axboe@...nel.dk,
asml.silence@...il.com
Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
io-uring@...r.kernel.org, kun.dou@...sung.com,
peiwei.li@...sung.com, joshi.k@...sung.com,
kundan.kumar@...sung.com, wenwen.chen@...sung.com,
ruyi.zhang@...sung.com, Xiaobing Li <xiaobing.li@...sung.com>
Subject: Re: [PATCH 1/3] SCHEDULER: Add an interface for counting real
utilization.
On Thu, Sep 28 2023 at 10:22, Xiaobing Li wrote:
> Since pelt takes the running time of the thread as utilization, and for
> some threads, although they are running, they are not actually
> processing any transactions and are in an idling state.
> our goal is to count the effective working time of the thread, so as to
> Calculate the true utilization of threads.
Sorry. I can't figure out from the above what you are trying to achieve
and which problem this is actualy solving.
> +void get_sqthread_util(struct task_struct *p)
> +{
> + struct task_struct **sqstat = kcpustat_this_cpu->sq_util;
> +
> + for (int i = 0; i < MAX_SQ_NUM; i++) {
> + if (sqstat[i] && (task_cpu(sqstat[i]) != task_cpu(p)
> + || sqstat[i]->__state == TASK_DEAD))
> + sqstat[i] = NULL;
> + }
This is unreadable.
> +
> + if (strncmp(p->comm, "iou-sqp", 7))
> + return;
You really want to do hard coded string parsing on every invocation of
this function, which happens at least once per tick, right?
What's so special about iou-sqp?
Nothing at all. It might be special for your particular workload but its
completely irrelevant to everyone else.
We are not adding random statistics to the hotpath just because.
Please come back once you have a proper justification for imposing this
On everyone which is not using iouring at all.
Thanks
tglx
Powered by blists - more mailing lists