'"! tbl | mmdoc '"macro stdmacro ." ." Copyright (c) 2014 Joe White. All Rights Reserved. ." ." This program is free software; you can redistribute it and/or modify it ." under the terms of the GNU General Public License as published by the ." Free Software Foundation; either version 2 of the License, or (at your ." option) any later version. ." ." This program is distributed in the hope that it will be useful, but ." WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ." or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ." for more details. ." ." .TH PERFEVENT.CONF 5 "PCP" "Performance Co-Pilot" .SH "نام (NAME)" perfevent.conf \- فایل پیکربندی perfevent PMDA در Performance Co-Pilot .SH "خلاصه دستور (SYNOPSIS)" .I /perfevent/perfevent.conf .SH "توضیحات (DESCRIPTION)" فایل پیکربندی perfevent.conf مشخص می‌کند که کدام شمارنده‌های کارایی سخت‌افزاری توسط perfevent PMDA فعال شوند. .PP این فایل پیکربندی شامل فهرستی از رویدادها است که باید برای هر PMU فعال شوند. برنامه perfevent PMDA تشخیص می‌دهد که کدام PMUها موجود هستند و رویدادهای پیکربندی‌شده را فعال‌سازی می‌کند. در صورت در دسترس بودن چندین PMU، برنامه perfevent PMDA از ترتیب ورودی‌های موجود در فایل پیکربندی برای تعیین تنظیمات PMU مورد استفاده بهره می‌برد. ورودی‌های ابتدای فایل پیکربندی اولویت بالاتری دارند. تنها یک تنظیم پیکربندی PMU استفاده می‌شود. فایل پیکربندی همچنین می‌تواند شامل رویدادهای اشتقاقی perf باشد. یک رویداد اشتقاقی دارای فهرستی از رویدادها است که باید به عنوان رویدادهای پایه مشخص شده باشند. مقادیر شمارنده‌ها در رویدادهای اشتقاقی تجمیع و نمایش داده می‌شوند. .SH "قالب فایل (FILE FORMAT)" این فایل از یک یا چند گروه از PMUها و رویدادهای مرتبط با آن‌ها تشکیل شده است. .PP رشته شناسه PMU درون براکت‌ها قرار می‌گیرد و یک یا چند رویداد در خطوط زیرین، هر کدام در یک خط، فهرست می‌شوند. .PP .RS .B ["PMU identification string"] .RE .RS .B EVENT_NAME [CPU OPTION] .RE .RS .B ... .RE .PP برای رویدادهای اشتقاقی، می‌توان یک یا چند گروه از رویدادها را تعیین کرد که در آن شمارنده‌ها در یک گروه می‌توانند مختص یک معماری و شمارنده‌ها در گروه دیگر مختص معماری دیگری باشند؛ در غیر این صورت تنها یک گروه قابل تعیین است. EVENT_NAME_1 و EVENT_NAME_2 و غیره متعلق به گروه ۱ و EVENT_NAME_3 و EVENT_NAME_4 متعلق به گروه ۲ هستند و به همین ترتیب. اگر هر یک از رویدادهای گروه اول موجود نباشد، کل گروه کنار گذاشته شده و گروه بعدی بررسی می‌شود. نخستین گروهی که تمام رویدادهای آن در دسترس باشد فعال و پایش می‌گردد. رویداد اشتقاقی perf همراه با پسوند :derived درون براکت قرار می‌گیرد. توجه داشته باشید که EVENT_NAME فهرست‌شده ذیل رویداد اشتقاقی باید به عنوان یک رویداد پایه در فایل پیکربندی وجود داشته باشد. همچنین تمام رویدادهای ذیل یک گروه خاص از رویداد اشتقاقی perf باید CPU_OPTION یکسانی داشته باشند. علامت || به عنوان جداکننده گروه‌های مختلف در یک رویداد اشتقاقی عمل می‌کند. ساختار نحوی به این صورت است: .PP .RS .B [event:derived] .RE .RS .B EVENT_NAME_1 [CPU_OPTION] [scale] .RE .RS .B EVENT_NAME_2 [CPU_OPTION] [scale] .RE .RS .B ... .RE .RS .B || .RE .RS .B EVENT_NAME_3 [CPU_OPTION] [scale] .RE .RS .B EVENT_NAME_4 [CPU_OPTION] [scale] .RE .RS .B ... .RE .RS .RE .PP گزینه‌های پردازنده (CPU) موجود برای رویداد به شرح زیر است: .TP .B cpu برای افزودن شمارنده به تمام پردازنده‌های سیستم .TP .B cpu_rr برای افزودن به یکی از پردازنده‌ها بر اساس راهبرد تخصیص نوبتی (round-robin) .TP .B node برای افزودن شمارنده به اولین پردازنده در هر گره NUMA .TP .B node_rr برای افزودن شمارنده به پردازنده‌ها در هر گره NUMA با راهبرد تخصیص نوبتی .TP .B [N] که در آن N رقم عددی نمایه (شاخص) پردازنده است .PP اگر گزینه CPU وجود نداشته باشد، رویداد روی تمام پردازنده‌ها برنامه‌ریزی می‌شود. .PP .B scale برای شمارنده‌ها در رویدادهای اشتقاقی کاربرد دارد. اگر مقیاس (scale) تعیین شود، شمارنده‌ها با مقادیر مربوطه خود مقیاس‌بندی می‌شوند. گزینه‌ها به شرح زیر است: .TP .B a float value می‌تواند یک مقدار اعشاری ساده یا مقداری در نماد علمی باشد. .TP .B perf_scale مقیاس از ورودی فایل scale در sysfs هسته برای آن رویداد خوانده می‌شود. این مسیر معمولاً به این صورت مشخص می‌گردد: .B /sys/bus/event_source/device/events/.scale .PP اگر مقیاسی تعیین نشود، مقیاس پیش‌فرض 1.0 در نظر گرفته می‌شود. .PP خطوط خالی نادیده گرفته می‌شوند. خطوطی که با نویسه # شروع می‌شوند نادیده گرفته می‌شوند. .PP می‌توان چندین PMU جداشده با کاما را در تعریف PMU مشخص کرد. .SH "همچنین ببینید (SEE ALSO)" .BR pmdaperfevent (1).