هارد

آشنایی با NVMe

آشنایی با NVMe

آشنایی با NVMe
آشنایی با NVMe

(NVM Express (NVMe یک پروتکل برای حمل داده ها بر روی رسانه های مختلف و ذخیر سازی بهینه در NAND فلش ها میباشند. پورتهای PCIe ها بطور معمول کاربرد متوسطی برای رسانه های انتقال دیتا دارند. رسانه های دیگر مانند NVMe over Fabrics اخیرا برای تراشه های NAND فلش بهینه سازی شده اند. با پیشرفت های NAND فلش ها , یک چارچوب با پهنای باند بالا و زمان تاخیر کمتر برای پروتکل ذخیره سازی فراهم شده است.

NVMe (Non-Volatile Memory Express)  یک پردازشگر مقیاس پذیر و با کارایی بالا برای PCIe Gen3 می باشد که برای سیستم های Client  و Enterprise با استفاده از تکنولوژِی SSD ها طراحی شده است. این تکنولوژی برای کاهش زمان تاخیر(Latency) و ارایه پردازنده سریعتر (CPU) به عملکرد دستگاه ذخیره سازی داده (Data Storage) برای محاسبات پیشرفته طراحی شده است.

با استفاده از NVMe مشتریان میتوانند از تاخیر کم, افزایش عملیات ورودی/خروجی در هر ثانیه (IOPs), و مصرف انرژی پایین تر بهرمند شوند.

پروتکل NVMe :

پروتکل NVMe یک پروتکل پیشرفته و بهینه سازی شده برای انتقال اطلاعات کارآمد از PCIe برای ذخیره سازی در NAND فلش ها میباشد. که در حال حاظر روی SSD ها استفاده میشود.

برای بهینه سازی ذخیرسازی و بازیابی اطلاعات, NVMe ها تا حداکثر 64K  دستور را تا حداکثر 64K درخواست I/O در هر صف را به صورت همزمان  مورد استفاده قرار می دهند. نرم افزار سیستم Host دستورات را به صف ارسال می کند و کنترل کننده NVMe , دستورات کامل شده را به صف مربوط به دستورات تکمیل شده منتقل میکند و هنگامی که دستورات تکمیل شده زیاد می شوند همه آن ها را در یک تک صف تکمیل شده گزارش میدهد و در این بین کنترل کننده , دستورات را اولویت بندی می کند. همپچنین پیام های قطع شده ناخواسته (MSI-X) و هر وقفه ای به خوبی پشتیبانی می شود ؛ و در صورت نیاز از بسیاری از قابلیت های سازمانی مانند حفاظت از داده های به پایان رسیده (سازگار با استاندارد های T10 DIF و DIX), گزارش Error های افزایش یافته را, پشتیبانی میکند.

پروتکل NVMe چندین صف را پشتیبانی می کند که پیشترفتی نسبت به پروتکل  های SAS و SATA داشته است. هارد های SAS معمولی تا 256 فرمان پشتیبانی می کند و هارد های SATA از 32 فرمان در یک صف پشتیبانی میکنند.در مقابل NVMe ها از حداکثر 64K فرمان در هر صف و حداکثر 64K صف را پشتیبانی می کند. این صف ها به طوری طراحی شده اند که دستورات I/O و پاسخ به آن دستورات را بر روی یک هسته پردازنده و قابلیت پردازش موازی پردازنده های چند هسته ای را دارا باشند. هر برنامه می تواند یک صف مستقل به خود داشته باشد. NVMe همچنین با پشتیبانی از MSI-X که باعث ایجاد وقفه و از ایجاد ترافیک, که از ایجاد گلوگاه در سطح Cpu جلوگیری می شود و اجازه گشترش پذیری فوق العاده ای را می دهد و کارایی بهتری را پشتیبانی میکند.

سرور, هارد

مفهوم NVMe و کاربرد آن

مفهوم NVMe و کاربرد آن

مفهوم NVMe و کاربرد آن
مفهوم NVMe و کاربرد آن

NVMe مخفف کلمه Non-Volatile Memory Express می باشد. این کلمه، اخیرا بسیار بسیار زیاد در مورد هارد سرور ها شنیده می شود و همین موضوع، موجب شده است تا بسیاری از افراد و حتی سرویس دهندگان محترم، این طرز فکر را داشته باشند که درایو هایی که اخیرا محبوب شده اند با نام SSD NVMe، به طور کلی از هارد های SSD متفاوت می باشند. امروز در این پست برای شما به طور کامل به توضیح NVMe خواهیم پرداخت تا این سوء تفاهم ها به طور کامل از بین برود و اطلاعاتی کامل تر از پیش در این مورد داشته باشید.

NVMe در اصل یک پروتکل ارتباطی است و توسط شرکت های Samsung،Seagateو… که سازنده درایو های SSD هستند ساخته شده است. یکی از نکات مثبت NVMe که باعث افزایش سرعت هارد های SSD NVMe می شود، این است که تعداد صف های پردازشی نسبت به ساتا بسیار بیشتر شده ( در ساتا، صف پردازشی فقط یک بوده است ولی در SSD NVMe این عدد به 65 هزار و 536 صف پردازشی رسیده ). علت این که هارد های SSD NVMe معمولا برای سرور ها استفاده می شوند، این است که این سرعت پردازشی، در حدی است که تقریبا برای هیچ یک از سیستم های شخصی مورد استفاده قرار نمی گیرد.

پورت NVMe

برای هارد های سری جدید SSD و SSD NVMe، پورت های قدیمی موسوم به AHCI که برای هارد های ساتا استفاده می شد، کاربردی نداشت چراکه هدف از ساخت این درگاه ها، ارتباط بین پردازنده و رم، با هارد هایی مانند ساتا بود که اطلاعات توسط دیسک های گردان فراخوانده می شد در حالیکه در هارد های SSD، خبری از دیسک گردان وجود ندارد و هارد های SSD شبیه به رم کامپیوتر عمل می کنند. برای این سرعت بالا، مجبور به ساخت پورت NVMe شدند تا بتواند این سرعت را پردازش کند. علت اصلی افزایش توانایی پردازش پروت های NVMe، این است که حداکثر طول صف در پورت های AHCI، یک صف و 32 دستور در هر صف بوده در حالیکه این عدد در پورت های NVMe، به 65536 صف و 65536 دستور در هر صف رسیده که می توانید تفاوت سرعت را به وضوح مشاهده کنید.