From: Jens Axboe <[email protected]>
To: Xiaobing Li <[email protected]>
Cc: [email protected], [email protected],
[email protected], [email protected],
[email protected], [email protected],
[email protected], [email protected],
[email protected]
Subject: Re: [PATCH] liburing: add script for statistics sqpoll running time.
Date: Sun, 18 Feb 2024 06:00:38 -0700 [thread overview]
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
On 2/17/24 10:59 PM, Xiaobing Li wrote:
> On 2/6/24 10:40 AM, Xiaobing Li wrote:
>> diff --git a/test/sqtimeshow.sh b/test/sqtimeshow.sh
>> new file mode 100644
>> index 0000000..e85fd2f
>> --- /dev/null
>> +++ b/test/sqtimeshow.sh
>> @@ -0,0 +1,61 @@
>> +#!/usr/bin/env bash
>> +
>> +UPLINE=$(tput cuu1)
>> +
>> +function set_header() {
>> + printf "\033[47;30m%-15s %-15s %-15s %-15s \033[0m\n" PID WorkTime\(us\) TotalTime\(us\) COMMAND
>> +}
>> +
>> +function get_time() {
>> + pid=$1
>> + item=$2
>> + proc_file="/proc/$pid/fdinfo/6"
>> + if [ ! -e $proc_file ]; then
>> + return
>> + fi
>> + content=$(cat ${proc_file} | grep ${item} | awk -F" " '{print $2}')
>> + echo ${content%us}
>> +}
>> +
>> +function show_util() {
>> + index=0
>> + while true
>> + do
>> + data=$(top -H -b -n 1 | grep iou-sqp)
>> + if [ -z "${data}" ]; then
>> + echo "no sq thread is running."
>> + exit
>> + fi
>> + index=0
>> + num=$(echo $data | tr -cd R |wc -c)
>> + arr=($data)
>> + len=$((${#arr[@]} / ${num}))
>> + i=0
>> + while [ ${i} -lt ${num} ]
>> + do
>> + pid=${arr[${i} * ${len}]}
>> + name=${arr[${i} * ${len} + len - 1]}
>> + work_time=$(get_time $pid "SqWorkTime")
>> + total_time=$(get_time $pid "SqTotalTime")
>> + printf "%-15s %-15s %-15s %-15s\n" ${pid} ${work_time} ${total_time} ${name}
>> + ((i++))
>> + done
>> + sleep 2
>> + update=$UPLINE
>> + for j in $(seq 1 ${num}); do
>> + update=$update$UPLINE
>> + done
>> + if [ ! -z "$(top -H -b -n 1 | grep iou-sqp)" ]; then
>> + echo "$update"
>> + fi
>> + done
>> +}
>> +
>> +function main() {
>> + # set header
>> + set_header
>> + # show util
>> + show_util
>> +}
>> +
>> +main
>
> Hi, Jens and Pavel
> This patch is to add a script that displays the statistics of the
> sqpoll thread to the terminal.
No objections to this one, but it will not get applied until the kernel
side is sorted out.
--
Jens Axboe
prev parent reply other threads:[~2024-02-18 13:00 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20240206024828epcas5p2119e961d13e6c9fb6ea114c7aca4bf3d@epcas5p2.samsung.com>
2024-02-06 2:40 ` [PATCH] liburing: add script for statistics sqpoll running time Xiaobing Li
[not found] ` <CGME20240218055959epcas5p2ac436be88fecd625f072c78ff77610ef@epcas5p2.samsung.com>
2024-02-18 5:59 ` Xiaobing Li
2024-02-18 13:00 ` Jens Axboe [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox