PERF-KWORK(1) perf Manual PERF-KWORK(1)

perf-kwork - ابزاری برای ردیابی و سنجش ویژگی‌های کارهای هسته (زمان‌های تأخیر)

perf kwork {record|report|latency|timehist|top}

چندین حالت مختلف از perf kwork وجود دارد:

'perf kwork record <command>' برای ثبت کارهای هسته
مربوط به یک بار کاری دلخواه.
'perf kwork report' برای گزارش زمان اجرای هر کار هسته (kwork).
'perf kwork latency' برای گزارش زمان‌های تأخیر هر کار هسته (kwork).
'perf kwork timehist' تحلیلی از رویدادهای کارهای هسته ارائه می‌دهد.
'perf kwork top' برای گزارش میزان مصرف cpu توسط تسک‌ها.
مثال‌های استفاده:
    perf kwork record -- sleep 1
    perf kwork report
    perf kwork report -b
    perf kwork latency
    perf kwork latency -b
    perf kwork timehist
    perf kwork top
    perf kwork top -b
به‌طور پیش‌فرض، رویدادهای کاری مجزا مانند irq و workqueue را،
شامل زمان اجرا و تأخیر (زمان بین ایجاد/برانگیختن تا ورود واقعی) نشان می‌دهد:
   Runtime start      Runtime end        Cpu     Kwork name                 Runtime     Delaytime
                                                 (TYPE)NAME:NUM             (msec)      (msec)
-----------------  -----------------  ------  -------------------------  ----------  ----------
   1811186.976062     1811186.976327  [0000]  (s)RCU:9                        0.266       0.114
   1811186.978452     1811186.978547  [0000]  (s)SCHED:7                      0.095       0.171
   1811186.980327     1811186.980490  [0000]  (s)SCHED:7                      0.162       0.083
   1811186.981221     1811186.981271  [0000]  (s)SCHED:7                      0.050       0.077
   1811186.984267     1811186.984318  [0000]  (s)SCHED:7                      0.051       0.075
   1811186.987252     1811186.987315  [0000]  (s)SCHED:7                      0.063       0.081
   1811186.987785     1811186.987843  [0006]  (s)RCU:9                        0.058       0.645
   1811186.988319     1811186.988383  [0000]  (s)SCHED:7                      0.064       0.143
   1811186.989404     1811186.989607  [0002]  (s)TIMER:1                      0.203       0.111
   1811186.989660     1811186.989732  [0002]  (s)SCHED:7                      0.072       0.310
   1811186.991295     1811186.991407  [0002]  eth0:10                         0.112
   1811186.991639     1811186.991734  [0002]  (s)NET_RX:3                     0.095       0.277
   1811186.989860     1811186.991826  [0002]  (w)vmstat_shepherd              1.966       0.345
 ...
زمان‌ها بر حسب میلی‌ثانیه.میکروثانیه (msec.usec) هستند.

-D, --dump-raw-trace=

نمایش تخلیهٔ پرجزئیات داده‌های sched.

-f, --force

شکایتی نکن، انجامش بده.

-k, --kwork

فهرست kworkها برای پروفایل‌سازی (irq، softirq، workqueue، sched و غیره)

-v, --verbose

نمایش جزئیات بیشتر. (نمایش نشانی نمادها و غیره)

گزینه‌ها برای perf kwork report

.ft C
-b::
--use-bpf::
        استفاده از BPF برای سنجش زمان اجرای kwork
-C::
--cpu::
        تنها نمایش رویدادها برای CPU(های) داده‌شده (فهرست جداشده با کاما).
-i::
--input::
        نام فایل ورودی. (پیش‌فرض: perf.data مگر اینکه stdin یک fifo باشد)
-n::
--name::
        تنها نمایش رویدادها برای نام داده‌شده.
-s::
--sort::
        مرتب‌سازی بر اساس کلید(ها): runtime, max, count
-S::
--with-summary::
        نمایش خلاصه به همراه آمارها
--time::
        تنها تحلیل نمونه‌های درون بازه زمانی مشخص‌شده: <start>,<stop>. زمان‌ها
        دارای قالب seconds.microseconds هستند. اگر نقطه آغاز داده نشود (یعنی
        رشته زمانی به‌صورت ',x.y' باشد) تحلیل از ابتدای فایل شروع می‌شود. اگر
        زمان پایان داده نشود (یعنی رشته زمانی به‌صورت 'x.y,' باشد) تحلیل تا
        انتهای فایل ادامه می‌یابد.
گزینه‌ها برای 'perf kwork latency'
.ft

-b, --use-bpf

استفاده از BPF برای سنجش تأخیر kwork

-C, --cpu

تنها نمایش رویدادها برای CPU(های) داده‌شده (فهرست جداشده با کاما).

-i, --input

نام فایل ورودی. (پیش‌فرض: perf.data مگر اینکه stdin یک fifo باشد)

-n, --name

تنها نمایش رویدادها برای نام داده‌شده.

-s, --sort

مرتب‌سازی بر اساس کلید(ها): avg, max, count

--time

تنها تحلیل نمونه‌های درون بازه زمانی مشخص‌شده: <start>,<stop>. زمان‌ها دارای قالب seconds.microseconds هستند. اگر نقطه آغاز داده نشود (یعنی رشته زمانی به‌صورت ,x.y) باشد) تحلیل از ابتدای فایل شروع می‌شود. اگر زمان پایان داده نشود (یعنی رشته زمانی به‌صورت x.y,) باشد) تحلیل تا انتهای فایل ادامه می‌یابد.

-C, --cpu

تنها نمایش رویدادها برای CPU(های) داده‌شده (فهرست جداشده با کاما).

-g, --call-graph

نمایش زنجیره‌های فراخوانی در صورت وجود (پیش‌فرض غیرفعال).

-i, --input

نام فایل ورودی. (پیش‌فرض: perf.data مگر اینکه stdin یک fifo باشد)

-k, --vmlinux=<file>

مسیر فایل vmlinux

-n, --name

تنها نمایش رویدادها برای نام داده‌شده.

--kallsyms=<file>

مسیر فایل kallsyms

--max-stack

حداکثر تعداد توابع برای نمایش در backtrace، پیش‌فرض 5.

--symfs=<directory[,layout]>

جستجوی فایل‌های حاوی نمادها نسبت به این دایرکتوری. چینش اختیاری می‌تواند hierarchy (پیش‌فرض، مطابق با مسیر کامل) یا flat (تنها مطابق با نام پایه) باشد. این گزینه زمانی مفید است که فایل‌های دیباگ در یک ساختار دایرکتوری مسطح ذخیره شده باشند.

--time

تنها تحلیل نمونه‌های درون بازه زمانی مشخص‌شده: <start>,<stop>. زمان‌ها دارای قالب seconds.microseconds هستند. اگر نقطه آغاز داده نشود (یعنی رشته زمانی به‌صورت ,x.y) باشد) تحلیل از ابتدای فایل شروع می‌شود. اگر زمان پایان داده نشود (یعنی رشته زمانی به‌صورت x.y,) باشد) تحلیل تا انتهای فایل ادامه می‌یابد.

گزینه‌ها برای perf kwork top

.ft C
-b::
--use-bpf::
        استفاده از BPF برای سنجش میزان استفادهٔ وظیفه از cpu.
-C::
--cpu::
        تنها نمایش رویدادها برای CPU(های) داده‌شده (فهرست جداشده با کاما).
-i::
--input::
        نام فایل ورودی. (پیش‌فرض: perf.data مگر اینکه stdin یک fifo باشد)
-n::
--name::
        تنها نمایش رویدادها برای نام داده‌شده.
-s::
--sort::
        مرتب‌سازی بر اساس کلید(ها): rate, runtime, tid
--time::
        تنها تحلیل نمونه‌های درون بازه زمانی مشخص‌شده: <start>,<stop>. زمان‌ها
        دارای قالب seconds.microseconds هستند. اگر نقطه آغاز داده نشود (یعنی
        رشته زمانی به‌صورت ',x.y' باشد) تحلیل از ابتدای فایل شروع می‌شود. اگر
        زمان پایان داده نشود (یعنی رشته زمانی به‌صورت 'x.y,' باشد) تحلیل تا
        انتهای فایل ادامه می‌یابد.
همچنین ببینید (SEE ALSO)
.ft

perf-record(1)

09/04/2026 perf