درباره NVMe

هرآنچه باید درباره NVMe بدانید

آینده SSD با سرعتی خیره کننده

همان طور که روز به روز نام SSD بیشتر به گوش میخورد، ممکن است در این میان نام ” حافظه سریع السیر ثابت ” یا همان Non-volatile Memory Express که عموما با نام NVM Express یا NVMe شناخته می شود، را هم شنیده باشید. NVMe یک رابط و پروتوکل ارتباطی است که بوسیله کنسرسیومی از سازندگان مانند Intel, Dell, Samsung, SanDisk, Seagate ، در خصوص هاردهای SSD ساخته شده است.

NVMe طراحی شده تا از مزیتهای بی نظیر حافظه های SSD بهره ببرد. مشخصات فنی آن همچنین نشان میدهد روشهایی برای کم کردن تاخیر اطلاعات نسبت به SATA و AHCI در آن بکار رفته.

دیگر پیشرفتهای قابل توجه یکی افزایش انتقال دهندگان پیامها از ۲KB به ۴KB و قابلیت پردازش چندین صف درخواست به جای تنها یک صف در SATA است. البته وقتی میگوییم چند صف منظور عدد شگفتی آور ۶۵,۵۳۶ صف درخواست اطلاعات است!!!!!. البته ممکن است این چندان بدرد کاربان خانگی نخورد ولی سرعت کار برای پردازشهای سروری با درخواستهای همزمان ورودی و خروجی ( I/O ) فراوان را بسیار بالا خواهد برد.

پیشرفت SSDها با مانع بزرگی روبروست و آن busهای ذخیره سازی است که از نسل قدیمی هاردهای دیسکی به ارث برده است. پورتهای SATA و SAS پهنای باند زیادی را برای هارد دیسک های قدیمی فراهم می کنند ولی با SSDهایی که روز به روز در حال سریعتر شدن هستند، از نفس می افتند.

بخاطر سقف سرعت پورت SATA در ۶۰۰Gbps، هر هارد SSD پیشرفته امروزی با این پورت در آزمایشات تنها به سرعتی حدود ۵۰۰MBps دست پیدا میکند. حتی سرعت نامی ۱۲GBps پورتهای SAS هم در عمل تنها تا ۱٫۵GBps خروجی میدهند. ولی قابلیتهای تکنولوژی SSD بسیار بیش از اینهاست.

تولید کنندگان این صنعت از آغاز هم میدانستند که با این تنگنا مواجه خواهند شد. وجوه تشابه SSDها با حافظه های پرسرعت سیستم ( RAM ) بسیار بیشتر از هارد دیسک های کندی است که جای آنها را گرفته اند. در اوایل آسانتر بود که هاردهای SSD را روی پورتهای SATA و SAS ( که البته به نسبت RAM کنتر بودند ) قراردهند و از زیرساختهای موجود ذخیره سازی در PC استفاده کنند. تا مدتی این راه مناسب بود زیرا طول کشید تا SSDها به سرعتهای موجود دستیابند. ولی از آن زمان خیلی گذشته است.

استفاده ار تکنولوژی موجود

خوشبختانه درگاهی با تکنولوژی مناسب و پهنای باند بالا از قبل نصب شده و در دسترس بود یعنی PCI Express یا PCIe. درگاه PCIe لایه اصولی انتقال اطلاعات برای کارتهای گرافیک و دیگر کارتها مانند Thunderbolt است. نسل ۲ این نوع درگاه به ازای هر خط ارتباط سرعتی در حدود ۵۰۰MBpc ارائه میدهد و نسخه سوم یا نسل سوم، در حدود ۹۸۵MBps به ازای هر خط. اگر کارتی را در یک اسلات ۴ خطی یا x4 قرار دهیم، با نسل دوم به پهنای باندی در حدود ۲GBps و با نسل سوم نزدیک به ۴GBps در اختیار خواهیم داشت و این باند مناسبی حتی برای جدیدترین SSDها فراهم میکند که پیشرفت عظیمی است.

خیلی وقت است که محصولات مختلف کارتهای PCIe مانند RevoDrive از شرکت OCZ و Predator M.2/PCIe از شرکت Kingston و M6e از شرکت Plextor، در بازار موجود هستند ولی تا کنون این محصولات به پروتوکلهای SATA و SCSI وابسته بودند که هنوز بخاطر هارددیسک ها از روشهای تک خطی استفاده میکنند. کاملا واضح بود که رویکرد جدید لازم است.

درایورها آماده شدند، BIOS و کانکتورها نه

یکی از بهترین ویژگی های NVMe این است که لازم نیست نگران درایورهای آن باشید. لینوکس از کرنل ۳٫۱ این تکنولوژی را ساپورت میکند، همچنین windows 8.1 و Server 2012 R2 هم درایورهای آن را بطور پیشفرض نصب داشته و درایورهای آن برای FreeBSD در دست تهیه است. و اگر شرکت اپل هم تصمیم بگیرد از این تکنولوژی حمایت کند، نباید زیاد طول بکشد تا شاهد ارائه درایورهای مناسب باشیم.

هرچند که پشتیبانی BIOSها از این سیستم هنوز بشدت کمبود دارد. بدون BIOSی که NVMe را بشناسد نمی توان از این نوع درایو بوت کرد، با این وجود هر سیستمی با اسلات PCIe x4 و یا کانکتور M.2 می تواند از مزایای این درایو به عنوان فضای ذخیره سازی ثانویه بهره مند شود. ساخت BIOSهای NVMe مشکل تکنینکی بزرگی نیست ولی نیازمند صرف ساعتها مهندسی و هزینه است پس انتظار نداشته باشید که این قابلیت برای مادربوردهای قدیمی آپدیت شود.

مقایسه با AHCI

درگاه کنترل پیشرفته میزبان یا Advanced host controller interface یا نام معمولتر آن AHCI، این مزیت را دارد که قابلیتهای نرم افزاری بسیار را ارائه میداد ولی در نقطه مقابل آن، عملکرد مطلوبی را در مقایسه با SSDهای متصل به درگاه PCIe از خود نشان نمی دهد. باید توجه داشت که AHCI بطور سری عمل میکرد و زمانی توسعه داده شد که هدف آن تنها برقراری ارتباط بین CPU و RAM با منبع ذخیره سازی بسیار کندتری بود که براساس دیسکهای گردان عمل میکرد. بنابراین وقتی با SSD مورد استفاده قرار گرفت محدودیت های ویژه ای بروز داد. زیرا همان طور که گفته شد SSD بیشتر شبیه به RAM عمل میکند تا مانند هارددیسکهای قدیمی.

درگاه سخت افزاری NVMe با توجه ویژه به عملکرد موازی PCIe بطور کامل از صفر طراحی مجدد شده و ساخته شد تا مکمل عملکرد موازی CPU، سیستم عامل و نرم افزارهای موجود باشد.

جدول زیر تفاوتهای بارز AHCI و NVMe را خلاصه میکند:

منبع:bestadmins.ir