طراحی شتابدهندههای سختافزاری
Hardware Accelerators Design
مقطع: تحصیلات تکمیلی | گرایش: معماری سیستمهای کامپیوتری |
نوع درس: نظری | تعداد واحد: ۳ |
پیشنیاز: – | همنیاز: – |
هدف کلی
هدف از این درس ارائه تکنیکهای معماری مورد استفاده برای طراحی شتابدهندهها برای آموزش و استنتاج در سیستمهای یادگیری ماشین است. این دوره الگوریتمهای کلاسیک ML مانند رگرسیون خطی و ماشینهای بردار پشتیبان و همچنین مدلهای DNN مانند شبکههای عصبی کانولوشنال و شبکههای عصبی بازگشتی را پوشش میدهد. در این درس هم آموزش و هم استنتاج را برای این مدلها در نظر گرفته میشود و تاثیر پارامترهایی مانند اندازه دستهای، دقت، پراکندگی و فشردهسازی را بر دقت این مدلها مورد بحث قرار خواهد گرفت. همچنین طراحی شتاب دهندهها برای استنتاج و آموزش مدل ML را پوشش داده میشود. دانشجویان با تکنیکهای پیادهسازی سختافزار برای استفاده از موازیسازی، محلی بودن و دقت کم برای پیادهسازی هستههای محاسباتی هستهای مورد استفاده در ML آشنا میشوند. برای طراحی شتابدهندههای کارآمد انرژی، دانشجویان شهودی را برای ایجاد معاوضه بین پارامترهای مدل ML و تکنیکهای اجرای سختافزار توسعه میدهند.
سرفصلها
- معرفی، نقش شتابدهندههای سختافزاری در دوران پس از دنارد و مور، مبانی جبر خطی و جبر خطی شتابدهنده،
- عملیات BLAST، معرفی معماری GPU مدل NVIDIA TESLA V100 (معرفی GPU مناسب برای مراکز داده)
- مبانی جبر خطی و جبر خطی شتابدهنده، تکنیکهای قرن بیستم: آرایههای سیستولیک و MIMD، CGRAs RDA
- مقدمهای بر تکنیکهای مکانی در ضرب ماتریسی با ابعاد بالا: تحلیل عملکرد و انرژی مصرفی با تکنیکهای مکانی
- ارزیابی عملکرد، بهرهوری انرژی، موازیسازی، روشهای استفاده از ابعاد مکانی، سلسله مراتب حافظه، مدل Roofline
- استنتاج در شبکههای عصبی چند لایه پرسپترون و شبکههای عصبی کانولوشنی، استنتاج در آموزش سریع
- پیادهسازی سریع کرنل یادگیری عمیق، پیادهسازی مستقیم کانولوشن با بازدهی بالا و سربار صفر در حافظه
- بهینهسازی روش درههای گرادیان، تکامل شتابدهندههای سختافزاری، تعمیم و منظمسازی آموزش
- مدلهای زبانی بزرگ و ترانسفورمرها در NVIDIA، ماژول توجه Flash، ماژول توجه دقیق و کارآمد با اطلاع از IO
- روشهای خط لوله مبتنی بر داده، سیستمهای توزیعشده، آموزش توزیعشده
- آموزش پراکندگی، دقت کم و آموزش ناهمزمان، طراحی هم تراز سلسله مراتبی TPU4
- طراحی شتابدهنده برای استنتاج و آموزش مدل ML، شبکههای عصبی: استنتاج MLP و CNN
ارزیابی پیشنهادی
- تمرینها و پروژه: ۳۰ درصد نمره
- آزمونهای میانترم و پایانی: ۵۰ درصد نمره
- پروژه پژوهشی: ۲۰ درصد نمره
منابع پیشنهادی
- C. Kachris, B. Falsafi, and D. Soudris (eds). Hardware Accelerators in Data Centers. Springer International Publishing, 2019.
- I. Skliarova and V. Sklyarov. FPGA-BASED hardware accelerators. Springer International Publishing, 2019.
- A. Mishra, J. Cha, H. Park, and S. Kim (eds). Artificial Intelligence and Hardware Accelerators. Springer International Publishing, 2023.