PERF-TEST(1) perf Manual PERF-TEST(1)

perf-test - اجرای آزمون‌های سنجش سلامت.

perf test [<options>] [{list <test-name-fragment>|[<test-name-fragments>|<test-numbers>]}]

این دستور آزمون‌های گوناگون سنجش سلامت را اجرا می‌کند؛ ابتدا از طریق روتین‌های پیوندخورده (linked routines) و سپس با جستجوی پوشه‌ای شامل آزمون‌های بیشتر در قالب اسکریپت‌ها.

برای دریافت فهرستی از آزمون‌های موجود از perf test list استفاده کنید؛ مشخص کردن بخشی از نام آزمون، تمام آزمون‌های شامل آن عبارت را نشان خواهد داد.

برای اجرای آزمون‌های مشخص، بخش‌هایی از نام آزمون یا شماره‌های به‌دست‌آمده از perf test list را وارد کنید.

-s, --skip

آزمون‌هایی که باید نادیده گرفته شوند (فهرست عددی جداشده با ویرگول).

-v, -vv, -vvv, --verbose

با یک -v تنها (سطح پرگویی ۱)، فقط خروجی آزمون‌های ناموفق نمایش داده می‌شود. با -vv و بالاتر، تمام خروجی‌های آزمون نشان داده خواهد شد.

-S, --sequential

اجرای همه آزمون‌ها یکی پس از دیگری. به‌طور پیش‌فرض آزمون‌های «انحصاری» (exclusive) به‌صورت ترتیبی اجرا می‌شوند، اما سایر آزمون‌ها برای افزایش سرعت اجرا، به‌صورت موازی اجرا می‌گردند.

-r, --runs-per-test

اجرای هر آزمون به تعداد دفعات مشخص‌شده، به‌طور پیش‌فرض یک‌بار. این گزینه می‌تواند برای تعیین اینکه آیا یک آزمون ناپایدار (flaky) است یا خیر، مفید باشد.

-F, --dont-fork

عدم ایجاد فرایند فرزند (fork) برای هر آزمون و اجرای تمام آزمون‌ها در یک فرایند واحد؛ این کار حالت ترتیبی (sequential) را فعال می‌کند.

--dso

مشخص کردن یک DSO برای آزمون «Symbols».

-w, --workload=

اجرای یک بار کاری (workload) توکار؛ برای مشاهده فهرست آن‌ها از --list-workloads استفاده کنید، موارد فعلی عبارتند از: noploop، thloop، leafloop، sqrtloop، brstack، datasym، context_switch_loop، deterministic، named_threads و landlock.
همراه با آزمون‌های رگرسیون اسکریپت شل استفاده می‌شود.
برخی یک پارامتر اضافی می‌پذیرند:
seconds: leafloop, noploop, sqrtloop, thloop
nrloops: brstack, context_switch_loop
بار کاری 'named_threads' تعداد رشته‌ها و تعداد حلقه‌هایی که باید
در هر رشته انجام شود را می‌پذیرد.
بارهای کاری datasym، landlock و deterministic هیچ پارامتری نمی‌پذیرند.

--list-workloads

فهرست کردن بارهای کاری موجود برای استفاده با -w/--workload.

--record-ctl=fifo:ctl-fifo[,ack-fifo]

این گزینه برای برقراری ارتباط با یک نشست perf record جهت محدود کردن دامنه ضبط تنها به بار کاری و جلوگیری از ضبط کدهای برپاسازی (setup) و پاک‌سازی (teardown) به کار می‌رود. هنگام مشخص کردن این گزینه، همان مسیر FIFO باید در نشست ضبط از طریق دستور زیر مشخص شود:
perf record -D -1 --control=fifo:ctl-fifo[,ack-fifo] ...
دستور perf test برای کنترل ضبط رویدادها، دستورهای 'enable' و 'disable' را
از طریق ctl-fifo ارسال می‌کند. اگر 'ack-fifo' ارائه شده باشد، اجراکننده بار کاری
پس از هر دستور منتظر یک پاسخ 'ack' می‌ماند.
09/04/2026 perf