HWLOC-PATCH(1) hwloc HWLOC-PATCH(1)

hwloc-patch - اعمال تفاوت توپولوژی روی یک توپولوژی XML موجود

hwloc-patch [options] [<topology.xml> | refname] [<diff.xml> | -] [<output.xml> | -]

hwloc-patch [options] [<topology.xml> | refname] [<diff.xml> | -]

معکوس کردن جهت فایل تفاوت (diff).
بررسی اینکه آیا وصله (patch) قابل اعمال است یا خیر، بدون نوشتن واقعی نتیجه.
گزارش نسخه و خروج.
نمایش پیام راهنما و خروج.

دستور hwloc-patch تفاوت میان دو توپولوژی را از یک فایل XML (یا از ورودی استاندارد) بارگذاری کرده و آن را روی یک توپولوژی موجود اعمال می‌کند تا توپولوژی جدید و تغییریافته‌ای تولید شود.

تفاوت XML ممکن است پیش‌تر توسط hwloc-diff یا hwloc-compress-dir محاسبه شده باشد.

اگر <output.xml> داده شود، توپولوژی جدید و تغییریافته در آن فایل جدید ذخیره می‌شود. اگر - به عنوان خروجی مشخص شود، توپولوژی تغییریافته به stdout ارسال می‌شود. اگر هیچ خروجی‌ای داده نشود، <topology.xml> به‌صورت درجا (in-place) اصلاح می‌شود.

اگر به جای <topology.xml> مقدار refname وارد شود، نام فایل توپولوژی ورودی به‌طور خودکار با خواندن فیلد refname از فایل XML diff تشخیص داده می‌شود. به‌طور پیش‌فرض، hwloc-diff فایل‌های XML diff را با نام فایل توپولوژی مرجع مناسب (بدون هیچ‌گونه پیشوند مسیر) تولید می‌کند.

اگر به جای <diff.xml> علامت - وارد شود، تفاوت توپولوژی از ورودی استاندارد خوانده می‌شود.

نکته: اگر برخی از داده‌های کاربری مختص برنامه (userdata) به فایل‌های XML ورودی صادر شده باشند، نادیده گرفته شده و از خروجی حذف می‌شوند، چرا که hwloc راهکاری برای درک و اعمال وصله روی آن‌ها ندارد.

نکته: اکیداً توصیه می‌شود پیش از مطالعه این صفحه راهنما، صفحه مرور کلی hwloc(7) را بررسی فرمایید. بیشتر مفاهیم شرح داده شده در hwloc(7) به‌طور مستقیم روی ابزار hwloc-patch نیز صدق می‌کنند.

عملکرد hwloc-patch با ارائه چند مثال به بهترین شکل شرح داده می‌شود.

اعمال یک فایل تفاوت توپولوژی XML بر روی یک توپولوژی موجود:


$ hwloc-patch fourmi023.xml diff.xml fourmi023-new.xml

بررسی اینکه آیا یک فایل تفاوت توپولوژی XML بر روی یک توپولوژی موجود قابل اعمال است یا خیر، بدون اعمال آن:


$ hwloc-patch --dry-run fourmi023.xml diff.xml

اعمال یک فایل تفاوت توپولوژی XML که فیلد refname آن شامل توپولوژی ورودی صحیح است:


$ hwloc-patch refname diff.xml fourmi023-new.xml

اعمال یک توپولوژی XML از ورودی استاندارد:


$ cat diff.xml | hwloc-patch fourmi023.xml - fourmi023-new.xml

محاسبه مستقیم تفاوت بین دو توپولوژی و اعمال درجا (in-place) آن روی دیگری:


$ hwloc-diff fourmi023.xml fourmi024.xml | hwloc-patch fourmi025.xml -

پس از اجرای موفقیت‌آمیز، hwloc-patch توپولوژی تغییریافته را در خروجی می‌نویسد. مقدار بازگشتی 0 است.

همچنین در صورت بروز هرگونه خطا، مانند (اما نه محدود به) ناتوانی در تجزیه خط فرمان، hwloc-patch یک مقدار غیرصفر بازمی‌گرداند.

hwloc(7), lstopo(1), hwloc-diff(1), hwloc-compress-dir(1)

June 8, 2026 2.14.0