تک باکس

02632100000 داخلی 410

What Is a DPU

 

یک DPU چیست ؟

 

… و تفاوت بین یک DPU  ، یک CPU  و یک GPU ؛ چیست ؟

متخصصان انتقال داده ها در مراکز داده، DPU ها یا واحدهای پردازش داده، کلاس جدیدی از پردازنده های قابل برنامه ریزی هستند و به CPU و GPU به عنوان یکی از سه ستون محاسباتی می پیوندند. البته، احتمالاً قبلاً با واحد پردازش مرکزی آشنا هستید. عناصری انعطاف‌پذیر و پاسخگو، که برای سال‌های متمادی باعث گردیده اند، CPU ها تنها عنصر قابل برنامه‌ریزی در اکثر رایانه‌ها بودند.

 

اخیراً GPU یا واحد پردازش گرافیکی نقش اصلی را ایفا کرده است. در حالیکه ؛  در اصل برای ارائه گرافیک های غنی و Graphics Real-Time  استفاده می شود، اما قابلیت های پردازش موازیشان، آنها را برای انجام کارهای محاسباتی سریع ، در هر حالتی ایده آل می کند.  به لطف این قابلیت ها، GPU ها برای برنامه های کاربردی هوش مصنوعی، یادگیری عمیق و تجزیه و تحلیل داده های بزرگ ضروری هستند.

 

با این حال، در دهه گذشته، با CPU و GPU که به مراکز داده در مقیاس عظیم؛ نیروی فوق‌العاده می‌دهند ،  محاسبات از محدودیت‌های کارکردهای رایانه‌های شخصی و سرورها خارج شده است و این مراکز داده با یک دسته جدید و قدرتمند از پردازنده ها به هم گره خورده اند. در نتیجه ، DPU  به سومین عضو مدل محاسباتی شتاب داده محور ؛ تبدیل شده است.

CPU برای محاسبات همه منظوره است، GPU برای محاسبات سریع است و DPU که داده ها را در مرکز داده حرکت می دهد، پردازش داده ها را انجام می دهد.

 

DPU چیست؟

 

سیستمی روی تراشه ای، که ترکیبی است از:

 

  • پردازنده چند هسته ای با استاندارد صنعتی، با کارایی بالا و قابل برنامه ریزی توسط نرم افزار.
  • رابط شبکه با کارایی بالا.
  • موتورهای شتاب دهنده انعطاف پذیر و قابل برنامه ریزی.

 

 

   CPU v GPU v DPU    :  چه چیزی یک DPU را متفاوت می کند؟

 

DPU  کلاس جدیدی از پردازنده های قابل برنامه ریزی است که سه عنصر کلیدی را ترکیب می کند.  DPU ، یک SoC   است که ترکیبی است از :

 

  1. یک CPU استاندارد صنعتی، با کارایی بالا، قابل برنامه ریزی نرم افزاری و چند هسته ای، که معمولاً مبتنی بر معماری Arm پرکاربرد است که به طور محکم با سایر اجزای SoC همراه است.
  2.  یک رابط شبکه با کارایی بالا که قادر به تجزیه، پردازش و انتقال موثر داده ها در Line Rate  یا سرعت بقیه شبکه نسبت به  GPU ها و CPU ها است.
  3.  مجموعه‌ای غنی از موتورهای شتاب‌گیری انعطاف‌پذیر و قابل برنامه‌ریزی که عملکرد برنامه‌ها را برای هوش مصنوعی و یادگیری ماشین، امنیت، مخابرات و ذخیره‌سازی و غیره؛ بارگیری و بهبود می‌بخشد.

 

همه این قابلیت‌های DPU برای فعال کردن یک پلت‌فرم محاسباتی ابربومی ، جدا شده و Bare-Metal ، که نسل بعدی محاسبات در مقیاس ابری را تعریف می‌کند ؛ حیاتی هستند.

 

DPU های گنجانده شده در SmartNIC ها

 

DPU را می توان به عنوان یک پردازنده تعبیه شده مستقل، استفاده کرد. اما اغلب در   SmartNIC ، یک کنترلر رابط شبکه که به عنوان یک جزء حیاتی در سرورهای نسل بعدی استفاده می شود، گنجانده می شود.

سایر دستگاه هایی که ادعا می کنند DPU هستند ، عناصر مهمی از این سه قابلیت حیاتی را از دست می دهند.

 

 

DPU ها را می توان به عنوان یک پردازنده تعبیه شده مستقل استفاده کرد، اما آنها اغلب در یک   SmartNIC ، یک کنترلر رابط شبکه که به عنوان یک جزء کلیدی در سرورهای نسل بعدی استفاده می شود ؛ ادغام می شوند.

 

تمرکز بر پردازش داده ها

 

این رویکرد رقابتی نیست و قیاس نمیکند، زیرا تلاش برای شکست دادن پردازنده سنتی 32بیتی با نیروی اجرایی که دارد، یک نبرد از قبل بازنده است. اگر پردازش بسته 100 گیگابیت بر ثانیه میتواند یک پردازنده سنتی 32بیتی  را به زانو در می آورد، چرا یک پردازنده Embedded ، بهتر عمل می کند؟

در عوض، رابط شبکه باید به اندازه کافی قدرتمند و منعطف باشد تا بتواند پردازش مسیر داده های شبکه را انجام دهد. پردازنده  Embedded باید برای کنترل مقداردهی اولیه مسیر و استثنائات پردازشی استفاده شود، نه بیشتر.

 

 

حداقل 10 قابلیت وجود دارد که موتورهای شتاب دهنده مسیر داده شبکه، باید بتوانند ارائه دهند:

 

  1.  تجزیه، تطبیق و دستکاری بسته داده برای اجرای یک OVS
  2.  شتاب انتقال داده RDMA  برای فن آوری  Zero Touch RoCE
  3. شتاب دهنده های GPUDirect –   جهت ایجاد مسیر جنبی برای CPU و تغذیه داده های شبکه به طور مستقیم به GPU ها (هم از ذخیره ساز و هم از سایر GPU ها)
  4.  شتاب TCP  شامل  RSS  ، LRO، checksum  و غیره.
  5.  مجازی سازی شبکه برای پوشش های VXLAN  و  همپوشانی   Geneve   و VTEP
  1. شتاب‌دهنده Packet Pacing   شکل‌دهنده ترافیک برای فعال کردن جریان چندرسانه‌ای، شبکه‌های توزیع محتوا و ویدیوی جدید 4K/8K  از طریق IP   برای  (RiverMax for ST 2110)
  2.  شتاب‌دهنده‌های زمان‌بندی دقیق برای RAN ابر مخابراتی مانند 5Tبرای قابلیت‌های 5G
  3.  شتاب و تسریع رمزنگاری برای IPSEC  و TLS که به صورت درون خطی انجام شده است، بنابراین همه شتاب‌گیری‌های دیگر هنوز عملیاتی هستند.
  4.  پشتیبانی از مجازی سازی برای SR-IOV   ،   VirtIO و ParaVirtualization
  5. جداسازی ایمن: ریشه و مسیر امن و مورد اعتماد، راه‌اندازی امن، ارتقاء سیستم عامل امن، و کانتینرهای تأیید شده و مدیریت چرخه عمر برنامه‌ها

 

 

 

اینها فقط 10 مورد از قابلیت‌های شتاب دهندگی و سخت‌افزاری هستند که برای پاسخ مثبت به این سوال ضروری هستند: “DPU چیست؟”

 

شاید توضیح زیر، تفسیر مناسبی برای  یک DPU باشد :

 

 

 

بسیاری از DPU ها به اصطلاح روی ارائه تنها یک یا دو مورد از این عملکردها تمرکز می کنند، که بدترین تلاش، برای تخلیه مسیر داده در پردازنده های اختصاصی است. اگرچه برای نمونه سازی خوب است، اما به دلیل مقیاس، وسعت و گستردگی مراکز داده؛ اقدامی احمقانه است.

 

منبع :

 

https://blogs.nvidia.com/blog/2020/05/20/whats-a-dpu-data-processing-unit/

 

 

گرد آوری ، ترجمه و تنظیم :  بهشاد ابرقوئیان 

 

 

#تکباکس_آی_آر #تکباکس_آی_آر #ذخیره_ساز #سرور

techboxir #techboxiran #server #storage #network  #DPU

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *