cxl-create-region - ایجاد
ناحیه
حافظه
تعبیهشده CXL
با
پیکربندی
ویژگیهای
دستگاههای
حافظه CXL
تشکیلدهنده
cxl create-region [<options>]
یک ناحیه CXL
از یک یا چند
قطعه (slice) از
memdevهای CXL تشکیل
شده است،
همراه با
تنظیمات
درهمتنیدگی
(interleave)
قابلپیکربندی
- هم تعداد
مسیرهای
درهمتنیدگی
(interleave ways) و هم
دانهبندی
درهمتنیدگی
(interleave granularity).
برای create-region،
میتوان
اندازه را
به صورت
اختیاری
مشخص کرد،
اما در صورت
عدم تعیین،
حداکثر
اندازه
ممکن برای
هر memdev تا سقف
ظرفیت
رمزگشایی (decode
capacity) موجود در
سیستم برای
نوع حافظه
دادهشده
استفاده
خواهد شد.
برای نواحی
پایدار (persistent
regions)، میتوان
یک UUID به صورت
اختیاری
مشخص کرد،
اما در صورت
مشخص نشدن،
یکی به طور
خودکار
تولید
خواهد شد.
اگر
عملیات
ایجاد
ناحیه
موفقیتآمیز
باشد، یک
شیء ناحیه
در قالب JSON در
خروجی
استاندارد
(stdout) صادر
میشود (به
بخش مثال
مراجعه
کنید). اگر
آرگومانهای
مشخصشده
با یک
پیکربندی
معتبر
برآورده
نشوند،
خطای
مناسبی در
خروجی خطای
استاندارد
(stderr) صادر
خواهد شد.
#cxl create-region -m -d decoder0.1 -w 2 -g 1024 mem0 mem1
{
"region":"region0",
"resource":"0xc90000000",
"size":"512.00 MiB (536.87 MB)",
"interleave_ways":2,
"interleave_granularity":1024,
"mappings":[
{
"position":1,
"decoder":"decoder4.0"
},
{
"position":0,
"decoder":"decoder3.0"
}
]
}
created 1 region
<target(s)>
هدفهای
CXL که باید
برای تشکیل
ناحیه
استفاده
شوند. تعداد
آرگومانهای
target باید با
گزینه --ways (در
صورت ارائه)
مطابقت
داشته
باشد.
-b, --bus=
محدود
کردن
عملیات به
گذرگاه (bus)
مشخصشده.
-m, --memdevs
نشان
میدهد که
آرگومانهای
غیرگزینهای
برای target(s) به
نامهای
دستگاههای
memdev اشاره
دارند. اگر
این گزینه
حذف شود و
هیچ هدفی
مشخص
نگردد، create-region
به طور
داخلی از
معادل cxl list -M -d $decoder
به عنوان
فهرست هدف
استفاده
میکند.
توجه داشته
باشید که
بسته به
توپولوژی،
برای مثال
در حضور
سوییچها،
ترتیب
خودکار
فهرست هدف
ممکن است
معتبر
نباشد و
تعیین دستی
فهرست هدف
الزامی
است.
-s, --size=
مشخص
کردن
اندازه کل
برای ناحیه
جدید. این
گزینه
اختیاری
است و به طور
پیشفرض،
حداکثر
اندازه
ممکن
استفاده
خواهد شد.
حداکثر
اندازه
ممکن توسط
فضای خالی و
پیوسته HPA
باقیمانده
در دکودر
ریشه (root decoder) و
همچنین
فضای DPA در
دسترس در
memdevهای
تشکیلدهنده
محدود
میشود.
-t, --type=
مشخص
کردن نوع
ناحیه - pmem یا
ram. مقدار
پیشفرض به
قابلیت
دکودر ریشه
بستگی دارد
و در صورت
ابهام،
مقدار
پیشفرض pmem
خواهد بود.
-U, --uuid=
مشخص
کردن یک
شناسه یکتا
(UUID) برای
ناحیه جدید.
معمولاً
نیازی به
مشخص کردن
آن نیست،
چرا که به
طور
پیشفرض
یکی تولید
خواهد شد.
این گزینه
تنها برای
نواحی pmem
کاربرد
دارد.
-w, --ways=
تعداد
مسیرهای
درهمتنیدگی
برای
درهمتنیدگی
ناحیه جدید.
در صورت
ارائه --memdevs،
این مقدار
باید برابر
با تعداد
memdevهای
مشخصشده
در --memdevs باشد.
اگر --ways مشخص
نشود، بر
اساس تعداد
هدفهای memdev
ارائهشده
تعیین
خواهد شد.
-g, --granularity=
دانهبندی
درهمتنیدگی
(interleave granularity) برای
ناحیه جدید.
باید با
دانهبندی
دکودر ریشه
انتخابشده
(در صورت
ارائه)
مطابقت
داشته باشد.
اگر دکودر
ریشه در بیش
از یک پل
میزبان (host-bridge)
درهمتنیده
باشد، این
مقدار باید
با آن
دانهبندی
مطابقت
داشته باشد.
در غیر این
صورت، برای
پنجرههای
رمزگشایی
غیردرهمتنیده،
هر
دانهبندیای
را میتوان
مشخص کرد به
شرطی که
تمام
دستگاهها
از آن تنظیم
پشتیبانی
کنند.
-d, --decoder=
دکودر
ریشهای که
ناحیه باید
تحت آن
ایجاد شود.
در صورت عدم
ارائه،
نخستین
دکودر پل
بینمیزبانی
(cross-host bridge) در صورت
وجود، که از
بزرگترین
درهمتنیدگی
پشتیبانی
میکند،
انتخاب
خواهد شد.
-Q, --enforce-qos
پارامتری
برای اعمال
شکست در
صورت عدم
تطابق qos_class. اگر
qos_class دکودر
ریشه و یکی
از memdevهای
پشتیبان
ناحیه
یکسان
نباشد،
عملیات
ایجاد
ناحیه با
شکست مواجه
میشود.
-u, --human
به طور
پیشفرض
این دستور
دادههای
عددی خام و
مناسب
ماشین
تولید
میکند. در
عوض با این
فلگ، اعداد
نشاندهنده
اندازه
ذخیرهسازی
به صورت
رشتههای
خوانا برای
انسان
همراه با
واحدها
قالببندی
میشوند و
سایر
فیلدها به
رشتههای
هگزادسیمال
تبدیل
خواهند شد.
--debug
فعال
کردن
پیامهای
اشکالزدایی
بیشتر شامل
اشکالزدایی
کتابخانه.
Copyright © 2016 - 2022, Intel Corporation. License GPLv2:
GNU GPL version 2 http://gnu.org/licenses/gpl.html.
این یک
نرمافزار
آزاد است:
شما مجاز به
تغییر و
توزیع مجدد
آن هستید.
هیچ ضمانتی
وجود
ندارد، تا
حدی که
قانون
اجازه
میدهد.