'\" t .\" Title: perf-kmem .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 09/04/2026 .\" Manual: perf Manual .\" Source: perf .\" Language: English .\" .TH "PERF\-KMEM" "1" "09/04/2026" "perf" "perf Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" perf-kmem \- ابزاری برای ردگیری و سنجش ویژگی‌های حافظه هسته .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fIperf kmem\fR [] {record|stat} .fi .SH "توضیحات (DESCRIPTION)" .sp دو حالت برای perf kmem وجود دارد: .sp .if n \{\ .RS 4 .\} .nf \*(Aqperf kmem [] record [] \*(Aq برای ضبط رویدادهای kmem مربوط به یک بار کاری دلخواه\&. گزینه‌های اضافی \*(Aqperf record\*(Aq را می‌توان پس از record مشخص کرد، مانند \*(Aq\-o\*(Aq برای تغییر نام فایل خروجی\&. .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf \*(Aqperf kmem [] stat\*(Aq برای گزارش آمار حافظه هسته\&. .fi .if n \{\ .RE .\} .SH "گزینه‌ها (OPTIONS)" .PP \-i , \-\-input= .RS 4 برای stat، فایل ورودی را مشخص می‌کند (پیش‌فرض: perf\&.data مگر اینکه stdin یک fifo باشد) .RE .PP \-f, \-\-force .RS 4 اعتبارسنجی مالکیت را انجام نمی‌دهد .RE .PP \-v, \-\-verbose .RS 4 توضیحات بیشتر\&. (نمایش نشانی نماد و غیره) .RE .PP \-\-caller .RS 4 نمایش آمار به ازای هر محل فراخوانی (callsite) .RE .PP \-\-alloc .RS 4 نمایش آمار به ازای هر تخصیص .RE .PP \-s , \-\-sort= .RS 4 مرتب‌سازی خروجی (پیش‌فرض: \fIfrag,hit,bytes\fR برای slab و \fIbytes,hit\fR برای page)\&. کلیدهای مرتب‌سازی موجود عبارتند از \fIptr, callsite, bytes, hit, pingpong, frag\fR برای slab و \fIpage, callsite, bytes, hit, order, migtype, gfp\fR برای page\&. پیش از این گزینه باید یکی از گزینه‌های انتخاب حالت قرار گیرد \- یعنی \-\-slab، \-\-page، \-\-alloc و/یا \-\-caller\&. .RE .PP \-l , \-\-line= .RS 4 تنها n خط را چاپ می‌کند .RE .PP \-\-raw\-ip .RS 4 چاپ ip خام به‌جای نماد .RE .PP \-\-slab .RS 4 تحلیل رویدادهای تخصیص‌دهنده SLAB\&. .RE .PP \-\-page .RS 4 تحلیل رویدادهای تخصیص‌دهنده صفحه (page allocator) .RE .PP \-\-live .RS 4 نمایش آمار صفحه‌های زنده\&. دستور perf kmem به‌طور پیش‌فرض آمار کل تخصیص‌ها را نشان می‌دهد، اما این گزینه به‌جای آن صفحه‌های زنده (در حال حاضر تخصیص‌یافته) را نشان می‌دهد\&. (این گزینه تنها با گزینه \-\-page کار می‌کند) .RE .PP \-\-time=, .RS 4 تنها نمونه‌های درون بازه زمانی داده‌شده را تحلیل می‌کند: ,\&. زمان‌ها قالب seconds\&.microseconds دارند\&. اگر start داده نشود (یعنی رشته زمان \fI,x\&.y\fR باشد)، تحلیل از ابتدای فایل شروع می‌شود\&. اگر زمان stop داده نشود (یعنی رشته زمان \fIx\&.y,\fR باشد)، تحلیل تا انتهای فایل ادامه می‌یابد\&. .RE .SH "همچنین ببینید (SEE ALSO)" .sp \fBperf-record\fR(1)