سلام هابر! مجموعه دادهها برای Big Data و یادگیری ماشینی به طور تصاعدی در حال رشد هستند و ما باید با آنها همراه باشیم. پست ما در مورد یکی دیگر از فناوری های نوآورانه در زمینه محاسبات با کارایی بالا (HPC، محاسبات با عملکرد بالا)، نشان داده شده در غرفه کینگستون در
عملکرد GPU از بارگذاری داده ها پیشی می گیرد
از زمانی که CUDA، یک معماری محاسباتی موازی سخت افزاری و نرم افزاری مبتنی بر GPU برای توسعه برنامه های کاربردی همه منظوره، در سال 2007 ایجاد شد، قابلیت های سخت افزاری خود پردازنده های گرافیکی به طرز باورنکردنی افزایش یافته است. امروزه، پردازندههای گرافیکی به طور فزایندهای در برنامههای HPC مانند Big Data، یادگیری ماشین (ML) و یادگیری عمیق (DL) استفاده میشوند.
توجه داشته باشید که علیرغم شباهت اصطلاحات، دو مورد آخر از نظر الگوریتمی وظایف متفاوتی هستند. ML کامپیوتر را بر اساس داده های ساختاریافته آموزش می دهد، در حالی که DL کامپیوتر را بر اساس بازخورد از یک شبکه عصبی آموزش می دهد. یک مثال برای کمک به درک تفاوت ها بسیار ساده است. بیایید فرض کنیم که کامپیوتر باید بین عکسهای گربهها و سگهایی که از سیستم ذخیرهسازی بارگذاری شدهاند تمایز قائل شود. برای ML، شما باید مجموعه ای از تصاویر را با برچسب های زیادی ارسال کنید که هر کدام یک ویژگی خاص از حیوان را مشخص می کند. برای DL، کافی است تعداد بسیار بیشتری از تصاویر را بارگذاری کنید، اما تنها با یک برچسب "این یک گربه است" یا "این یک سگ است". DL بسیار شبیه به نحوه آموزش کودکان خردسال است - به سادگی تصاویری از سگ ها و گربه ها در کتاب ها و زندگی به آنها نشان داده می شود (اغلب حتی بدون توضیح جزئیات) و مغز کودک خود شروع به تعیین نوع حیوان می کند. تعداد معینی از عکس ها برای مقایسه (طبق تخمین ها، ما فقط در مورد صد یا دو نمایش در اوایل دوران کودکی صحبت می کنیم). الگوریتمهای DL هنوز چندان کامل نیستند: برای اینکه یک شبکه عصبی بتواند روی شناسایی تصاویر نیز با موفقیت کار کند، لازم است میلیونها تصویر را در GPU تغذیه و پردازش کند.
خلاصه مقدمه: بر اساس پردازندههای گرافیکی، میتوانید برنامههای HPC را در زمینه Big Data، ML و DL بسازید، اما یک مشکل وجود دارد - مجموعه دادهها به قدری زیاد هستند که زمان صرف شده برای بارگذاری دادهها از سیستم ذخیرهسازی به GPU است. شروع به کاهش عملکرد کلی برنامه می کند. به عبارت دیگر، پردازندههای گرافیکی سریع به دلیل دادههای ورودی/خروجی کندی که از زیرسیستمهای دیگر میآیند، کمتر مورد استفاده قرار میگیرند. تفاوت در سرعت ورودی/خروجی پردازنده گرافیکی و گذرگاه به CPU/سیستم ذخیره سازی می تواند یک مرتبه بزرگ باشد.
فناوری GPUDirect Storage چگونه کار می کند؟
فرآیند I/O توسط CPU کنترل می شود، همانطور که فرآیند بارگیری داده ها از ذخیره سازی به GPU ها برای پردازش بیشتر انجام می شود. این منجر به درخواست فناوری شد که دسترسی مستقیم بین GPU و درایوهای NVMe را برای برقراری ارتباط سریع با یکدیگر فراهم کند. NVIDIA اولین شرکتی بود که چنین فناوری را ارائه کرد و آن را GPUDirect Storage نامید. در واقع، این نوعی از فناوری GPUDirect RDMA (آدرس حافظه مستقیم از راه دور) است که قبلا توسعه داده بودند.
جنسن هوانگ، مدیرعامل انویدیا، GPUDirect Storage را به عنوان گونهای از GPUDirect RDMA در SC-19 ارائه خواهد کرد. منبع: NVIDIA
تفاوت بین GPUDirect RDMA و GPUDirect Storage در دستگاه هایی است که آدرس دهی بین آنها انجام می شود. فناوری GPUDirect RDMA برای جابجایی مستقیم دادهها بین کارت رابط شبکه جلویی (NIC) و حافظه GPU تغییر کاربری داده شده است، و GPUDirect Storage یک مسیر داده مستقیم بین ذخیرهسازی محلی یا راه دور مانند NVMe یا NVMe روی Fabric (NVMe-oF) و حافظه GPU.
هم GPUDirect RDMA و هم GPUDirect Storage از جابجایی های غیرضروری داده از طریق بافر در حافظه CPU جلوگیری می کنند و به مکانیسم دسترسی مستقیم حافظه (DMA) اجازه می دهند داده ها را از کارت شبکه یا ذخیره سازی مستقیماً به یا از حافظه GPU منتقل کند - همه اینها بدون بارگذاری روی CPU مرکزی. برای GPUDirect Storage، محل ذخیره سازی مهم نیست: می تواند یک دیسک NVME در داخل یک واحد GPU، داخل یک رک یا از طریق شبکه به عنوان NVMe-oF متصل شود.
طرح عملکرد GPUDirect Storage. منبع: NVIDIA
سیستم های ذخیره سازی Hi-End در NVMe در بازار برنامه های HPC مورد تقاضا هستند
با درک اینکه با ظهور GPUDirect Storage، علاقه مشتریان بزرگ به ارائه سیستمهای ذخیرهسازی با سرعت ورودی/خروجی متناسب با توان پردازش گرافیکی معطوف میشود، در نمایشگاه SC-19 کینگستون نمایشی از یک سیستم را نشان داد که شامل یک سیستم ذخیره سازی مبتنی بر دیسک های NVMe و واحدی با GPU که هزاران تصویر ماهواره ای را در ثانیه تجزیه و تحلیل می کرد. قبلاً در مورد چنین سیستم ذخیره سازی مبتنی بر 10 درایو DC1000M U.2 NVMe نوشته ایم.
یک سیستم ذخیره سازی مبتنی بر 10 درایو DC1000M U.2 NVMe به اندازه کافی یک سرور را با شتاب دهنده های گرافیکی تکمیل می کند. منبع: کینگستون
این سیستم ذخیره سازی به عنوان یک واحد رک 1U یا بزرگتر طراحی شده است و می تواند بسته به تعداد درایوهای DC1000M U.2 NVMe، هر کدام با ظرفیت 3.84-7.68 ترابایت، مقیاس بندی شود. DC1000M اولین مدل NVMe SSD در فرم فاکتور U.2 در خط درایوهای مرکز داده کینگستون است. دارای رتبه استقامت (DWPD، درایو مینویسد در روز)، به آن اجازه میدهد تا یک بار در روز، دادهها را با ظرفیت کامل خود برای عمر تضمینی درایو بازنویسی کند.
در تست fio v3.13 در سیستم عامل اوبونتو 18.04.3 LTS، هسته لینوکس 5.0.0-31-عمومی، نمونه ذخیره سازی نمایشگاه سرعت خواندن (خواندن پایدار) 5.8 میلیون IOPS با توان عملیاتی پایدار (پهنای باند پایدار) را نشان داد. ) از 23.8 گیگابیت بر ثانیه.
آریل پرز، مدیر بازرگانی SSD در کینگستون، درباره سیستمهای ذخیرهسازی جدید میگوید: «ما آماده هستیم تا نسل بعدی سرورها را به راهحلهای U.2 NVMe SSD مجهز کنیم تا بسیاری از تنگناهای انتقال داده را که به طور سنتی با ذخیرهسازی مرتبط بودهاند، از بین ببریم. ترکیبی از درایوهای NVMe SSD و سرور پریمیوم DRAM برتر ما، کینگستون را به یکی از جامعترین ارائهدهندگان راهحلهای داده سرتاسر صنعت تبدیل میکند."
تست gfio v3.13 توان عملیاتی 23.8 گیگابیت بر ثانیه را برای سیستم ذخیره سازی آزمایشی در درایوهای DC1000M U.2 NVMe نشان داد. منبع: کینگستون
یک سیستم معمولی برای برنامه های HPC با استفاده از GPUDirect Storage یا فناوری مشابه چگونه به نظر می رسد؟ این یک معماری با جداسازی فیزیکی واحدهای عملکردی در یک رک است: یک یا دو واحد برای RAM، چندین واحد دیگر برای گرههای محاسباتی GPU و CPU، و یک یا چند واحد برای سیستمهای ذخیرهسازی.
با اعلام GPUDirect Storage و ظهور احتمالی فناوری های مشابه از دیگر فروشندگان GPU، تقاضای Kingston برای سیستم های ذخیره سازی طراحی شده برای استفاده در محاسبات با کارایی بالا در حال گسترش است. نشانگر سرعت خواندن دادهها از سیستم ذخیرهسازی است که با توان کارتهای شبکه 40 یا 100 گیگابیتی در ورودی یک واحد محاسباتی با GPU قابل مقایسه است. بنابراین، سیستمهای ذخیرهسازی با سرعت فوقالعاده، از جمله NVMe خارجی از طریق Fabric، از حالت عجیب و غریب به جریان اصلی برای برنامههای HPC تبدیل خواهند شد. علاوه بر علم و محاسبات مالی، آنها در بسیاری از زمینههای عملی دیگر مانند سیستمهای امنیتی در سطح شهر امن یا مراکز نظارت حملونقل، که در آن به سرعت شناسایی و شناسایی میلیونها تصویر HD در ثانیه نیاز است، کاربرد پیدا خواهند کرد. جایگاه بازار برترین سیستم ذخیره سازی
اطلاعات بیشتر در مورد محصولات کینگستون را می توانید در اینجا بیابید
منبع: www.habr.com