آشنایی با NVDIMMs RAM

چکیده :امروزه شرکت ها نیازمند سیستم هایی هستند که دسترسی سریعتری به داده های حیاتی میدهند. سرورهای HPE ProLiant تلاش می کنند در صدر تکنولوژی هایی قرار گیرند که عملکرد را در برابر از دست دادن داده ها و به حداقل رساندن خرابی تسریع میکنند. این مقاله حافظه پایدار NVDIMM را معرفی می کند ، این تکنولوژی جدید یک راه حل مناسب با کارایی بالا برای سرورهای HPE ارائه می دهد و محدودیت های تکنولوژی را برای مدیران فناوری اطلاعات مرتفع و مزیت هایی را فراهم می کند.معرفی :کسب و کارهای امروزی برای دستیابی به نتایج سریعتر نیازمند دسترسی به اطلاعات در لحظه هستند. این کسب و کارها نیازمند سیستم هایی هستند که بدون هیچ مشکلی برنامه های کاربردی بهینه سازی شده را به صورت سریع و قابل اطمینان در دسترس قرار دهند. برای دهه ها، صنایع کامپیوتری ، تحقیقاتی برای کاهش افت عملکرد بین پردازنده با تاخیر کمتر (low-latency) و دستگاه های ذخیره سازی با تاخیر بیشتر (longer-latency) انجام داده است. به این ترتیب پیشرفت فن آوری ذخیره سازی در هر دو نحوه دسترسی داده ها (SAS / SATA به PCI bus) و نحوه ذخیره اطلاعات (رسانه های مغناطیسی به حالت جامد) تکامل یافته است.اخیرا قابلیت ذخیره سازی در حافظه Bus پدیدار شده است که در بهره گیری از زمان تاخیر (low-latency) و عملکرد سریع این اتصالات، استفاده می شود.قرار دادن چیپ های ذخیره سازی بر روی حافظه، چیزی بیشتر را ارائه می دهد - چشم اندازدستگاه های ذخیره سازی با توجه به بایت - معانی جدیدی که از طریق لایه های نرم افزاری و سخت افزاری برداشته می شود و دستگاه هایی با تاخیرهایی کمتر از , چند میکروثانیه را ارائه می دهد.HPE حافظه پایدار (NVDIMM) ها را معرفی کرده که یک دسته جدید از دستگاه های ذخیره سازی سرور هستند که در حافظه Bus سرور قرار دارند. حافظه پایدار به دو زیر شاخه تقسیم می شود:حافظه پایدار با بهینه سازی عملکرد (performance-optimized persistent memory)حافظه پایدار با ظرفیت بهینه (capacity-optimized persistent memory)هر دو در جدول 1 مقایسه شده است.HPE 8GB Non-Volatile DIMM (NVDIMM) Single Rank x4 DDR4-2133 که یک ماژول بهینه سازی عملکرد و اولین محصول به عنوان حافظه پایدار HPE ارائه شده است.این NVDIMM ها به عنوان حافظه مبتنی بر DRAM با کارایی بالا مورد استفاده قرار میگیرند. اما از حافظه Flash NAND برای حفظ داده ها در صورت خرابی یا خرابی سیستم استفاده می کنند. هنگامی که سیستم راه اندازی مجدد میشود، HPE NVDIMMs داده ها را به حالت دسترسی قبلی خود بازمی گرداند. HPE NVDIMMs عملکرد موفقیت آمیزی برای برنامه های دنیای واقعی ارائه می دهد.حافظه HPE NVDIMM ترکیبی از 8 گیگابایت درایو DRAM و 8 گیگابایت فلش در یک ماژول واحد است که در یک اسلات DIMM سرور استاندارد قرار میگیرد. DRAM با سرعت بالا عمل می کند، اما نسبتا گران است، و اگر یک سرور به طور غیر منتظره خاموش شود، هر گونه اطلاعات در DRAM از بین می رود اما فلش کندتر است ولی قابل انعطاف است، به این معنی که داده ها را هنگامی که منبع برق برداشته می شود، حفظ می کند.ذخیره سازی مبتنی بر سرور اغلب می تواند با استفاده از یک سلسله مراتب گوناگون توصیف شود، که عمدتا توسط نیازمندی های data availability تعریف می شود. یک سلسله مراتب ذخیره سازی مبتنی بر سرور معمولی دارای سطح بالا (Tier 0) با استفاده از Accelerators Workload برای ذخیره و سرعت بخشیدن در اغلب موارد استفاده می شود. شتاب دهنده های کاری معمولا از تکنولوژی Flash NAND و PCI Bus استفاده می کنند. سطوح بعدی شامل رسانه های ذخیره سازی قدیمی تر، از طریق رابط SAS و SATA عمل می کنند.HPE NVDIMMs ها با کارایی بالا ، جدید و بالاترین Tier ذخیره سازی سرور محسوب میشوند. HPE NVDIMM ها نیاز به جایگزینی دستگاه های موجود ذخیره سازی سرور مانند شتاب دهنده های کار را ندارند اما عملکرد آنها را تکمیل میکنند. مزایای NVDIMM ها دو برابر است: دسترسی به داده های بیشتر استفاده شده به مقدار قابل ملاحظه ای سریعتر و استقامت شتاب دهنده های کار بر روی NAND فلش و SSD ها افزایش می یابد.امروزهHPE قصد دارد HPE NVDIMM ها را به عنوان یک option برای سرورهای HPL ProLiant DL380 Gen9 و DL360 Gen9 ارائه دهد.نمای کلی HPE NVDIMM :ماژول HPE 8GB NVDIMM Single Rank x4 DDR4-2133 اولین راه حل کامل NVDIMM برای سرورهای ProLiant است. این ماژول حافظه دارای بسیاری از ویژگی های یکسان با دستگاه های در حال ظهور حافظه است، اما با اجزای قابل اعتماد و بر اساس تکنولوژی های تکامل یافته ساخته شده است.معماری NVDIMM :HPE NVDIMM ترکیبی از DRAM-based system memory با NAND flash-based Persistency Components به منظور دستیابی به عملکرد بهتر و Power-off storage persistency است (شکل 2). HPE NVDIMMs در سوکت های حافظه DDR4 HPE نصب می شود که شامل i2C bus و the Asynchronous DRAM Refresh (ADR) signal و هر دوی (BU) power busses اصلی و پشتیبان میباشد.دستگاه های NVDIMM با توجه به استانداردهای JEDEC به سه دسته تقسیم میشود :NVDIMM-F: این حافظه نیازمند یک حافظه مرسوم با دسترسی تصادفی همراه با یک ماژول حافظه دو خطی ذخیرساز میباشد.NVDIMM-N: در این نوع NVDIMM ها سیستم به حافظه های مرسوم DRAM به صورت مستقیم دسترسی دارند. اگر در سیستم برق خطا رخ بدهد اطلاعات از حافظه DRAM بر روی حافظه Flash کپی شده و هنگام بازگشت برق به حالت عادی, این اطلاعات به حافظه DRAM باز میگردد.NVDIMM-P: این نوع حافظه یک حافظه پایدار از نوع DRAM میباشد که برای ذخیر سازی موقت داده های پر کاربرد در حافظه های فلش خارجی استفاده میشود و قادر خواهد بود که اطلاعات را با استفاده از ReRAM و DDR5 درون حافظه ذخیره کند.به عنوان یک رسانه ذخیره سازی مبتنی بر DRAM , HPE NVDIMM هر دو رابط ذخیره سازی را با توجه به دسکتاپ و بلوک(block storage) ارائه می دهد. به عنوان یک دستگاه ذخیره سازی پشتیبان, HPE NVDIMM از اجزای مبتنی برFlash NAND در شرایط پشتیبان استفاده می کند.عمکرد عادی :در عملکرد عادی (شکل 3)، NVDIMM از DRAM های با سرعت بالا برای ارائه DATA ACCESSES و دیگر خدمات مانند Standard System Memory DIMM استفاده میکند.در طول عملکرد عادی، کنترلر پایداری دائما در حال نظارت بر سیگنال I2C Bus و ADR برای اطلاع رسانی از رویدادهایی که داده ها را در DRAM تهدید می کند است ، از قبیل:قطع ناگهانی برقخاموش / راه اندازی مجدد سیستم عاملخطاهای بحرانی سیستمآسیب های سیستم عاملکنترل کننده ی پایداری , عملیات پشتیبان گیری را هنگام نمایش اعلان های هر یک از این مشکلات شروع میکند. عملکرد اطلاع رسانی مورد نیاز کنترل کننده پایداری, فقط در پلتفرم های مشخصی از HPE ProLiant که شامل Complex programmable logic divce (CPLD) و سری پردازنده های Intel Broadwell هستند ارائه میشوند. این اجزا از سیگنال ADR , که نشان میدهد پردازنده باید بافر Write-Protected Data را فلش و DRAM را در حالت Self-Refresh قرار دهد.توجه داشته باشید:قابلیت های NVDIMM , فقط در پلتفرم های مشخصی از HPE ProLiant که شامل Complex programmable logic divce (CPLD) و سری پردازنده های Intel Broadwell هستند ارائه میشوند. بدون این اجزاء، HPE NVDIMM ها به درستی کار نمی کنند.عملیات پشتیبان گیری :عملیات تهیه پشتیبان, زمانی آغاز می شود که کنترل کننده پایداری اطلاعیه ای از رویداد هایی که داده ها را در DRAM تهدید میکند, دریافت کند. کنترل کننده پایداری به طور سیستماتیک تمام محتویات درون DRAM را به دستگاه Flash NAND بر روی دستگاه انتقال می دهد (شکل 4). عملیات انتقال می تواند بیش از یک دقیقه طول بکشد تا تکمیل شود .در طول این زمان LED ها نشان می دهند که عملیات پشتیبان در حال انجام است و NVDIMM ها باید از سیستم خارج شوند.فرض بر این است که سیستم ممکن است در طول عملیات پشتیبان گیری ، جریان AC را از دست دهد. از آنجا که یک منبع تغذیه برای حفظ عملکرد NVDIMM در هنگام تهیه نسخه پشتیبان تهیه شده است، NVDIMM ها همچنین از جریان BU استفاده میکنند. حداکثر 16 NVDIMM را می توان در یک سیستم (بسته به ظرفیت باتری هوشمند ذخیره سازی) نصب کرد.عملکرد بازیابی:عملکرد بازیابی (شکل 5) برعکس عملکرد پشتیبانگیری است. به عنوان یک سیستم با boots NVDIMM، عملیات زیر رخ می دهد:کنترل کننده ماندگاری محتویات دستگاه Flash را به DRAM منتقل می کند.حافظه برای هر خطایی که ممکن است در طول عملیات پشتیبان رخ دهد، اسکن شده است.BIOS System ProLiant سطح شارژ باتری NVDIMM را اندازه می گیرد تا اطمینان حاصل شود که شارژ کافی برای انجام پشتیبان گیری از تمام NVDIMM ها در سیستم است.فرآیند بوت سیستم تا زمانی که هر دو محتوای DRAM بازسازی نشده اند و باتری دارای شارژ کافی برای انجام این فرآیند نباشد، کامل نمی شود. اگر هر خطایی در این فرایند وجود داشته باشد، اعلان ها به عنوان پیام های POST ارسال می شوند واردLog IML میشود.استقرار HPE NVDIMM :حافظه پایدار HPE, تنها یک تکنولوژی جدید سخت افزار نیست , بلکه یک اکوسیستم کامل سخت افزار / نرم افزاری است که برای کار با برنامه های کاربردی و کارهای روزانه طراحی شده است . سخت افزار سرورهای HPE ProLiant برای قابلیت HPE NVDIMM بهینه شده است که از طریق (CPLD)Complex Programmable Logic Device ، پردازنده Intel Broadwell و Smart Storage Battery Backup System قابل دسترس اند. بخش نرم افزاری شامل فریم ور سرور، سیستم عامل و برنامه های کاربردی نرم افزاری می باشد. ما BIOS سرور های HPE ProLiant و فریم ور Integrated Lights Out (iLO) برای حافظه پایدار بهینه کرده ایم همچنین با ارائه دهنده های سیستم عامل ها به منظور پشتیبانی داخلی OS از درایور ها همکاری میکنیم.بخش های زیر سخت افزار و نرم افزار مورد نیاز برای راه اندازی HPE NVDIMM را تعریف می کنند.سخت افزار / فریم ور مورد نیازHPE NVDIMM را می توان در سیستم های HPE زیر استفاده کرد:سرور HPE ProLiant DL380 Gen9با پردازشگرهای Intel Broadwell (Xeon® E5-2600 v4)سرور HPE ProLiant DL360 Gen9 با پردازشگرهای Intel Broadwell (Xeon E5-2600 v4)سیستم با HPE Smart Storage Batteryسیستم با حداقل یک DIMM ثبت شده (RDIMM) به ازای هر پردازندهسیستم ROMPaq HPE با فریم ور v2.40 یا بالاترHPE iLO 4 Firmware v2.40 یا بالاترسیستم عامل مورد نیاز :بخش های زیر سیستم عامل هایی را معرفی می کنند که حافظه پایدار HPE را پشتیبانی می کنند.Microsoft Windows Server 2012 R2 drivers :اجزای ویندوز سرور مانند فضای ذخیره سازی را می توان در دستگاه ها با حافظه NVDIMM استفاده کرد. این دستگاه ها را می توان به منظور ساختن Volume SCM های بزرگ تر و ساده تر یا mirrored با هم گروه بندی کرد. فعال سازی اولیه حافظه پایدار HPE توسط درایور های Windows Server 2012 R2 اجازه پیاده سازی به دو روش متفاوت را میدهد:With a block-interface overlay, using SCM as block-storage devices applications can readily use no differently than SATA HDDs or SAS SSDs.With a byte-addressable memory interface, allowing applications to directly access physical memory locations on the SCM device as a “Memory Mapped Interface,” enabled on a per-volume basis or interleave access for multiple NVDIMMs.فعال سازی اولیه حافظه پایدار HPE توسط درایور های داخلی Windows Server 2016 TP5 اجازه استفاده از دستگاه با NVDIMM های جداگانه را میدهد. اجزای ویندوز سرور مانند فضای ذخیره سازی را می توان در دستگاه ها با حافظه NVDIMM استفاده کرد. این دستگاه ها را می توان به منظور ساختن Volume SCM های بزرگ تر و ساده تر یا mirrored با هم گروه بندی کرد. Windows Server 2016 توانایی فرمت کردن Volume ها به روش قدیمی Block Mode یا روش جدید آدرس دهی به صورت بایت, Direct Access Storage (DAX) که عملکرد را افزایش میدهد ؛ را دارا است.Linux :پشتیبانی از NVDIMM ها توسط HPE Linux® Software Development Kit (SDK) در دسترس است. ما در حال کار بر روی بسیاری از توزیعهای عمده لینوکس به منظور اضافه کردن قابلیت حافظه پایدار به هسته آن هستیم. آپدیت ها و پشتیبانی از توزیع های جدید لینوکس در سایت HP.com اطلاع رسانی خواهد شد.نیازمندی های نرم افزاری :برنامه ها تاثیر مزایای حافظه پایدار HPE را به عنوان دستگاه های بسیار سریع Block Storage را به سرعت میبینند هر چند که تاثیر واقعی زمانی که برنامه ها برای استفاده از روش Byte-Addressable (load/store) در حافظه پایدار HPE به روز رسانی شوند , Unlock میشود. به این معنی است که برنامه نویسی نرم افزار ها کار آمد تر شده و تاخیر را کاهش میدهد تا پتانسیل واقعی حافظه پایدار HPE را نشان دهند.NVDIMM به عنوان یک Device Block :ساده ترین راه برای راه اندازی NVDIMM ها به عنوان یک Device Block است. جدول 2 عملکرد NVDIMM را با مقایسه کردن دستگاه 8 GiB NVDIMM با سریعترین کارت های Accelerator SSD و PCIe Workload Accelerator در مجموعه HPE نشان می دهد. توجه داشته باشید که این اعداد هنگامی که دستگاه های اضافی به سیستم اضافه می شوند، تغییر میکنند.راه دیگری برای استقرار HPE 8 GiB NVDIMM را به عنوان حافظه با سرعت Cache بالا در مقابل یک سیستم ذخیره سازی استفاده کنید. همانطور که انتظار می رود مانند هر Caching Deployment ، عملکرد Subsystem جایی بین عملکرد cache و عملکرد اجزای ذخیره سازی Subsystem می باشد. این تاثیر پذیری کاملا بر اساس الگوی دسترسی برنامه ها در Temporal/Spatial locality میباشد. HPE در حال کار برای شناسایی برنامه هایی است که محل دسترسی خوبی دارند.حافظه پایدار به عنوان Byte-Addressable Storage:Overhead در Block Accesses برای دسترسی به Storage بسیار زیاد است .در شکل 6 سه سناریو نمایش داده شده. نوار سمت چپ دسترسی به دستگاه های NAND Flash را نشان می دهد. بخش های سبز زمان صرف شده در رسانه های فلش، بخش های خاکستری زمان کنترل کننده رسانه در Bus PCI، نوار سیاه زمان نرم افزار را نشان میدهد. نوار میانی زمان لازم برای دسترسی به NVDIMM 8 GiB را از طریق لایه Block نشان می دهد. در حالی که به طور قابل توجهی سریعتر از SSD است, اما همچنان چند میکروثانیه Overhead در بخش نرم افزار دارد. نوار سمت راست کاهش زمان تاخیر را اگر Overhead بخش نرم افزاری حذف شود نشان میدهد. همانطور که اشاره شد، انتقال از یک SSD به یک دستگاه NVDIMM مزایای زیادی دارد، اما هنوز اختلاف زیادی بین دسترسی های Block و byte-addressable است.برنامه های فعلی نمی دانند چگونه به Byte Addressable Storage دسترسی داشته باشند , برای استفاده از این مدل برنامه نویسی باید نرم افزار ها باید بازنویسی شوند. HPE در حال همکاری با شرکای صنعتی است تا این قابلیت را با استفاده از ابزارهای فعال مانند PMEM Library در http://www.pme.io آسانتر کند. همچنین HPE در حال کار با فروشندگان نرم افزار برای ایجاد این به روز رسانی ها در نرم افزارهای خود است.مدیریت :عملکرد HPE NVDIMM به طور کامل با سیستم عامل سیستم های HPE ProLiant سازگار است.UEFI System Utilities اجازه کنترل پیاده سازی NVDIMM را اجازه میدهد که شامل:Enabling/disablingMemory interleavingBackup power policySanitization controlData integrity checkingIntegral Lights Out (iLO) همچنین وضعیت سلامت و هشدارهای NVDIMM ها را فراهم می کند.HPE NVDIMM ها نیاز به ملاحظات خاصی برای دستیابی به عملکرد مطلوب و ملاحظات منحصر به فرد در مورد حذف و جابجایی دارند. در هنگام تنظیم و کار با HPE NVDIMM، دستورالعمل های زیر باید توسط پرسنل IT دنبال شود .برای کسب اطلاعات بیشتر، به راهنمای کاربر HPE NVDIMM مراجعه کنید که در پایان این سند اشاره شده است.دستورالعمل برای عملکرد مطلوب :برای دستیابی به عملکرد مطلوب HPE NVDIMM، رهنمودهای زیر را دنبال کنید:Enable NVDIMMs for interleavingInstall NVDIMMs evenly across memory channels (two per channel for 2133 MT/s)Change Power Profile setting to Maximum Performance in UEFI System UtilitiesEnable Intel Performance Monitoring in UEFI System Utilitiesدستورالعمل برای حذف NVDIMM :برای کاهش احتمال از دست دادن داده ها یا آسیب رساندن به اجزای الکترونیکی دستورالعمل های زیر باید دنبال شود:Take the same electrostatic precautions required for all electronic devices.Ensure the system is powered downEnsure no LEDs on the NVDIMM are illuminated before removing (removing a NVDIMM with an LED illuminated may result in loss of data)نتیجه :(HPE Persistent Memory) حافظه ماندگار HPE دارای عملکردی است که شما نیاز دارید تا اطلاعات را برای عملکرد سریعتر در کسب و کار خود , و پایداری در مقابل خاموش شدن ناگهانی محافظت کنید. HPE NVDIMM ها به عنوان یک رسانه ذخیره سازی محلی با حافظه پویا مبتنی بر DRAM، عملکرد فوق العاده ای را ارائه می دهند.حداکثر 34 برابر IOPs ، پهنای باند 16 برابر بهتر و زمان تاخیر 81 برابر کمتر (latency) از SAS ، SSD ، و 24 برابر بیشتر IOP ها، پهنای باند 6 برابر بهتر و زمان تاخیر 73 برابر کمتر از PCIe Accelerators Workload. علاوه بر این، NVDIMM ها باعث افزایش عمر شتاب دهنده های کار و SSD ها می شود زیرا نوشتن روی DRAM های با استقامت بسیار بالاتر در NVDIMM ها انجام میشود. HPE NVDIMMs یک گام اولیه برنامه نویسی جدید است: جایی که داده ها همیشه پایدار هستند و ما می توانیم میلیون ها خط کد را که هیچ کاری انجام نمی دهند، دور بریزیم اما داده ها را بین ساختار داده های کارآمد و ذخیره سازی دائمی انتقال می دهد.این مقاله ارائه اولیه ما از دستگاه های حافظه مداوم و سیستم عامل های حمایتی را توصیف کرده است. ما در حال تلاش برای افزایش ظرفیت و عملکرد مداوم حافظه دستگاه و برنامه ریزی در گسترش قابلیت حافظه پایدار در سراسر خطوط HPE سرورها هستیم.نویسنده : محمد نعمتیمنبع : HP