PMDANIXL(1) General Commands Manual PMDANIXL(1)

pmdanixl - عامل دامنه معیارهای کارایی NVIDIA NIXL

$PCP_PMDAS_DIR/nixl/pmdanixl

دستور pmdanixl یک عامل دامنه معیارهای کارایی (PMDA) در Performance Co-Pilot (PCP) است که تله‌متری کارایی را از یک یا چند عامل NIXL (NVIDIA Inference Xfer Library) در حال اجرا جمع‌آوری می‌کند.

عامل‌های NIXL تله‌متری رویدادها را در بافرهای حلقه‌ای حافظه اشتراکی واقع در دایرکتوری مشخص‌شده توسط متغیر محیطی NIXL_TELEMETRY_DIR (پیش‌فرض /var/tmp) می‌نویسند. این PMDA فایل‌های عامل را در آن دایرکتوری شناسایی کرده، رویدادهای جدید را در هر واکشی تخلیه نموده و آن‌ها را در شمارنده‌های جاری به ازای هر عامل تجمیع می‌کند. هر عامل شناسایی‌شده به عنوان یک نمونه مجزا در دامنه نمونه‌های nixl.agents ظاهر می‌شود، بنابراین معیارهای عامل‌های مختلف می‌توانند به صورت مستقل پایش شوند.

معیارها در چهار گروه دسته‌بندی می‌شوند:

تعداد بایت‌ها و درخواست‌های انتقال داده (TX و RX).
اندازه‌های ثبت و لغو ثبت حافظه.
اندازه‌گیری‌های زمان انتقال تجمیع‌شده (به میکروثانیه).
تعداد رویدادهای خطا، تفکیک‌شده بر اساس نوع خطا.

تله‌متری NIXL به‌طور پیش‌فرض غیرفعال است. متغیرهای محیطی زیر باید در هر فرآیند برنامه NIXL پیش از ایجاد عامل آن تنظیم شوند تا داده‌های تله‌متری در حافظه اشتراکی نوشته شده و توسط این PMDA شناسایی گردند.

جمع‌آوری تله‌متری را فعال می‌کند. مقادیر پذیرفته‌شده عبارتند از 1، yes، on، true یا enable (بدون حساسیت به حروف بزرگ و کوچک).
دایرکتوری‌ای که NIXL فایل‌های تله‌متری حافظه اشتراکی خود را در آن می‌نویسد؛ یک فایل برای هر عامل که بر اساس نام عامل ارائه‌شده در زمان ایجاد نام‌گذاری می‌شود. این مقدار باید با تنظیم telemetry_dir در $PCP_SYSCONF_DIR/nixl/nixl.conf مطابقت داشته باشد. پیش‌فرض /var/tmp است.
تعداد رویدادهایی که بافر حلقه‌ای می‌تواند در خود نگه دارد پیش از آنکه رویدادهای قدیمی‌تر بدون هشدار بازنویسی شوند. اگر برنامه جهش‌های تله‌متری را سریع‌تر از تخلیه آن‌ها توسط PMDA تولید می‌کند، این مقدار را افزایش دهید. پیش‌فرض 4096 است.
بازه زمانی تخلیه (flush) به میلی‌ثانیه که توسط ریسه صادرکننده NIXL استفاده می‌شود. پیش‌فرض 100 است.

پیکربندی حداقلی برای یک برنامه تکی به صورت زیر است:

export NIXL_TELEMETRY_ENABLE=1
export NIXL_TELEMETRY_DIR=/var/tmp
./my_nixl_application

در صورت نوشتن چندین برنامه در یک دایرکتوری یکسان، فایل هر عامل به‌طور خودکار شناسایی شده و به عنوان نمونه مستقل خود گزارش داده خواهد شد. کاربر PMDA (که از طریق user در nixl.conf تنظیم می‌شود) باید با کاربری که برنامه‌های NIXL را اجرا می‌کند مطابقت داشته باشد تا دسترسی‌های فایل بدون نیاز به فایل‌های تله‌متری با قابلیت نوشتن همگانی (world-writable) همگام شوند.

پس از پیکربندی برنامه‌های NIXL برای برون‌ریزی تله‌متری، PMDA را نصب کنید:

# cd $PCP_PMDAS_DIR/nixl
# ./Install
اگر NIXL_TELEMETRY_DIR دایرکتوری پیش‌فرض /var/tmp نیست، پیش از اجرای Install آن را در متغیرهای محیطی تنظیم کنید تا در پیکربندی راه‌اندازی PMDA ثبت شود.

برای بررسی در حال اجرا بودن PMDA و قابل مشاهده بودن نمونه‌ها:

$ pminfo -t nixl
$ pminfo -f nixl.transfer.tx_bytes

# cd $PCP_PMDAS_DIR/nixl
# ./Remove

تنظیم telemetry_dir از nixl.conf را در زمان اجرا لغو (override) می‌کند. پیش‌فرض /var/tmp است.

$PCP_SYSCONF_DIR/nixl/nixl.conf
فایل پیکربندی PMDA.
$PCP_PMDAS_DIR/nixl/Install
اسکریپت نصب.
$PCP_PMDAS_DIR/nixl/Remove
اسکریپت حذف.
$PCP_LOG_DIR/pmcd/nixl.log
فایل لاگ PMDA.

متغیرهای محیطی با پیشوند PCP_ برای مقداردهی نام فایل‌ها و دایرکتوری‌های مورداستفاده در PCP به کار می‌روند. در هر نصب، فایل /etc/pcp.conf حاوی مقادیر محلی برای این متغیرها است. متغیر $PCP_CONF می‌تواند برای مشخص کردن یک فایل پیکربندی جایگزین استفاده شود، همان‌طور که در pcp.conf(5) شرح داده شده است.

PCPIntro(1)، pmcd(1)، pminfo(1)، pmval(1) و PMDA(3).

PCP Performance Co-Pilot