رفتن به محتوای اصلی
Koohestun
توضیح کوهستانمحاسبات در حافظهگزارش تشریحی· 5 دقیقه مطالعه· در هوش مصنوعی

چگونه معماری‌های «پردازش در حافظه» از تنگنای فون نویمان در شتاب‌دهنده‌های هوش مصنوعی عبور می‌کنند

معماری‌های سخت‌افزاری نوظهور با تعبیه منطق محاسباتی مستقیماً در داخل تراشه‌های حافظه، در حال از بین بردن تنگناهای انتقال داده هستند که هوش مصنوعی مدرن را محدود می‌کنند.

به قلم ندا وزیری

فروشندگان تجاری حافظه 40%پژوهشگران معماری سخت‌افزار 30%تحلیلگران اکوسیستم نرم‌افزار 30%
فروشندگان تجاری حافظه
تمرکز بر ارائه شتاب‌دهنده‌های سخت‌افزاری آماده‌ای که مصرف انرژی را برای استنتاج LLM به‌شدت کاهش می‌دهند.
پژوهشگران معماری سخت‌افزار
تمرکز بر جابه‌جا کردن مرزهای پهنای باند داخلی حافظه و موازی‌سازی در سطح زیرآرایه.
تحلیلگران اکوسیستم نرم‌افزار
تأکید بر اصطکاک در پذیرش PIM به دلیل فقدان کامپایلرها و چارچوب‌های برنامه‌نویسی بالغ.

دیدگاه‌هایی که این گزارش پوشش نداده

  • تولیدکنندگان سنتی پردازنده‌های گرافیکی که مدل‌های کسب‌وکارشان به معماری‌های محاسباتی متمرکز متکی است.
  • ارائه‌دهندگان زیرساخت‌های ابری که باید استقرار فیزیکی و خنک‌سازی این ماژول‌های حافظه جدید را مدیریت کنند.

چرا مهم است

با رشد مدل‌های هوش مصنوعی و رسیدن آن‌ها به صدها میلیارد پارامتر، انرژی مورد نیاز تنها برای جابه‌جایی داده‌ها بین حافظه و پردازنده‌ها به سطحی ناپایدار رسیده است. معماری‌های «پردازش در حافظه» با انجام محاسبات دقیقاً در همان جایی که داده‌ها قرار دارند، این مشکل را حل می‌کنند و نویدبخش کاهش چشمگیر توان مصرفی و هزینه‌های اجرای هوش مصنوعی مولد هستند.

پارادوکس بنیادین سخت‌افزارهای مدرن هوش مصنوعی این است که پردازنده‌ها هرگز تا این حد سریع نبوده‌اند، اما بیشتر زمان خود را در حالت انتظار سپری می‌کنند. در معماری سنتی فون نویمان (von Neumann)، گیت‌های منطقی که محاسبات را انجام می‌دهند، از نظر فیزیکی از حافظه دسترسی تصادفی پویا (DRAM) که داده‌ها را ذخیره می‌کند، جدا هستند. با گسترش مدل‌های زبانی بزرگ و رسیدن آن‌ها به صدها میلیارد پارامتر، گذرگاه باریکی که پردازنده را به حافظه متصل می‌کند، به یک تنگنای بحرانی تبدیل شده است.[5]

اقتصاد انرژی در این جداسازی بسیار بی‌رحمانه است. انتقال تنها یک بایت داده از حافظه خارج از تراشه به واحد پردازش مرکزی (CPU) یا واحد پردازش گرافیکی (GPU) بین ۱۰۰ تا ۱۰۰۰ برابر بیشتر از انجام یک محاسبه ممیز شناور با همان بایت، انرژی مصرف می‌کند. در طول مرحله رمزگشایی در استنتاج مدل‌های زبانی بزرگ (LLM)، جایی که مدل متن را توکن به توکن تولید می‌کند، بار کاری تقریباً به‌طور کامل وابسته به حافظه است. پردازنده گرافیکی ضرب‌های بردار-ماتریس خود را در کسری از نانوثانیه به پایان می‌رساند و سپس بیکار می‌ماند و در حالی که منتظر رسیدن دسته بعدی وزن‌ها از طریق رابط اتصال است، فقط انرژی هدر می‌دهد.[1][5]

معماری‌های «پردازش در حافظه» (PIM) تلاش می‌کنند با وارونه کردن پارادایم محاسباتی سنتی، این محدودیت را دور بزنند: آن‌ها به جای انتقال داده‌ها به سمت واحد محاسباتی، محاسبات را به سمت داده‌ها می‌برند. سیستم‌های PIM با تعبیه گیت‌های منطقی مستقیماً در داخل تراشه‌های حافظه، انتقال داده‌ها به خارج از تراشه را به‌طور کامل حذف می‌کنند. این رویکرد، پهنای باند داخلی عظیم آرایه‌های حافظه را آزاد کرده و اجازه می‌دهد محاسبات به‌صورت موازی در هزاران بانک حافظه به‌طور همزمان انجام شوند.[1][4]

معماری‌های PIM با انتقال محاسبات به سمت داده‌ها، گذرگاه خارجی باریکی را که پردازنده‌های سنتی را محدود می‌کند، دور می‌زنند.

استارتاپ فرانسوی UPMEM با تعبیه پردازنده‌های ۳۲ بیتی با مجموعه دستورات کاهش‌یافته (RISC) مستقیماً در بانک‌های حافظه استاندارد DDR4، پیشگام اولین PIM همه‌منظوره تجاری شد. اگرچه معماری UPMEM برای پرس‌وجوهای پایگاه داده و بارهای کاری مبتنی بر اعداد صحیح بسیار کارآمد است، اما فاقد واحدهای حساب ممیز شناور لازم برای مدیریت بار محاسباتی سنگین شبکه‌های عصبی مدرن است. برای پاسخگویی به نیازهای خاص هوش مصنوعی، تولیدکنندگان حافظه مجبور شده‌اند شتاب‌دهنده‌های تخصصی طراحی کنند که مستقیماً با استانداردهای حافظه با پهنای باند بالا یکپارچه می‌شوند.[1]

شرکت سامسونگ دوام صنعتی این رویکرد را با معماری HBM-PIM خود که با نام Aquabolt-XL شناخته می‌شود، به اثبات رساند. سامسونگ با ادغام موتورهای برنامه‌پذیر «یک دستور، چند داده» (SIMD) ممیز شناور ۱۶ بیتی (FP16) مستقیماً در مرزهای بانک‌های حافظه با پهنای باند بالا (HBM2)، امکان پردازش همزمان در چندین بانک حافظه را فراهم می‌کند. یک ماژول حافظه خطی دوگانه (DIMM) معمولی PIM-AI که بر اساس این مفهوم ساخته شده است، می‌تواند ۱٫۶ ترابایت بر ثانیه پهنای باند داخلی کل و تا ۱۲۸ ترافلاپس ظرفیت محاسباتی ارائه دهد که تقریباً به‌صورت خطی با اندازه حافظه مقیاس‌پذیر است.[1][4]

شرکت سامسونگ دوام صنعتی این رویکرد را با معماری HBM-PIM خود که با نام Aquabolt-XL شناخته می‌شود، به اثبات رساند.

شرکت SK Hynix نیز به همین ترتیب با فناوری «شتاب‌دهنده در حافظه» (AiM) خود، بازار استنتاج LLM را هدف قرار داده است. تراشه‌های GDDR6-AiM آن‌ها به‌طور خاص برای شتاب بخشیدن به ضرب‌های بردار-ماتریس که در مدل‌های مبتنی بر ترانسفورمر غالب هستند، طراحی شده‌اند. در اجلاس سخت‌افزار هوش مصنوعی و هوش مصنوعی لبه (Edge AI) در سال ۲۰۲۳، شرکت SK Hynix کارت شتاب‌دهنده AiMX را به نمایش گذاشت و اجرای یک مدل ۱۳ میلیارد پارامتری را روی سروری مجهز به این نمونه اولیه نشان داد.[3]

دستاوردهای عملکردی گزارش‌شده توسط این طراحی‌های حافظه‌محور، نشان‌دهنده یک تغییر ساختاری در نحوه ارزیابی سخت‌افزار هوش مصنوعی است. اوی-چول لیم (Eui-cheol Lim)، معاون بخش توسعه راهکارها در SK Hynix، اظهار داشت که «AiMX شرکت SK Hynix راهکاری است که عملکرد بالاتری ارائه می‌دهد در حالی که انرژی کمتری مصرف می‌کند و هزینه آن از پردازنده‌های گرافیکی معمولی کمتر است.» این شرکت گزارش می‌دهد که سیستم AiMX زمان پردازش داده‌ها را در مقایسه با تنظیمات سنتی GPU بیش از ۱۰ برابر کاهش می‌دهد و در عین حال ۸۰ درصد انرژی کمتری مصرف می‌کند. با اجرای عملیات در همان مکانی که پارامترها قرار دارند، سیستم از جریمه‌های حرارتی و تأخیر گذرگاه حافظه خارجی جلوگیری می‌کند.[3]

شرکت SK Hynix گزارش می‌دهد که شتاب‌دهنده AiMX آن در مقایسه با پردازنده‌های گرافیکی سنتی، زمان پردازش را ۱۰ برابر و مصرف انرژی را ۸۰ درصد کاهش می‌دهد.

با این حال، گذار به PIM صرفاً یک تعویض سخت‌افزاری نیست؛ بلکه نیازمند بازنویسی بنیادین اکوسیستم نرم‌افزاری است. کامپایلرها و کیت‌های توسعه نرم‌افزار (SDK) سنتی برای یک پردازنده متمرکز طراحی شده‌اند که سلسله مراتبی از حافظه‌های پنهان (Cache) را مدیریت می‌کند. استفاده از PIM نیازمند مدیریت صریح حافظه است، جایی که توسعه‌دهندگان باید به‌صورت دستی بارهای کاری را تقسیم کرده و انتقال داده‌ها را بین میزبان و واحدهای پردازش حافظه توزیع‌شده هماهنگ کنند.[1][2]

پژوهشگران به‌طور فعال در حال توسعه چارچوب‌های جدیدی برای انتزاع این پیچیدگی‌ها هستند. یک مطالعه در سال ۲۰۲۴ در مورد موازی‌سازی در سطح زیرآرایه، استراتژی‌های کاشی‌کاری تطبیقی را برای مدیریت اندازه‌های متغیر ماتریس که در مدل‌های زبانی کوچک‌تر رایج است، پیشنهاد کرد و به افزایش سرعت ۳٫۹ برابری در زمان تولید توکن دست یافت. تا زمانی که این انتزاع‌های نرم‌افزاری به بلوغ نرسند، پذیرش PIM احتمالاً محدود به کاربردهای بسیار تخصصی دیتاسنترها باقی خواهد ماند، جایی که صرفه‌جویی در انرژی، هزینه‌های سربار مهندسی را توجیه می‌کند.[2][5]

ادغام PIM در دیتاسنترهای موجود نیازمند چارچوب‌های نرم‌افزاری جدیدی برای مدیریت واحدهای پردازش حافظه توزیع‌شده است.

با ادامه رشد مدل‌های هوش مصنوعی مولد، محدودیت‌های فیزیکی انتقال داده به‌طور فزاینده‌ای طراحی سخت‌افزار را دیکته خواهند کرد. تنگنای فون نویمان دیگر با استفاده از گذرگاه‌های خارجی عریض‌تر یا حافظه‌های پنهان بزرگ‌تر پردازنده قابل حل نیست. معماری‌های PIM با انتقال کامل محدودیت‌های حرارتی و توانی به گیت‌های منطقی تعبیه‌شده در داخل حافظه، مقیاس‌پذیری آینده پارامترها را از محدودیت‌های رابط اتصال جدا کرده و حافظه را به‌عنوان موتور جدید محاسبات تثبیت می‌کنند.[5]

نکات کلیدی

  • جابه‌جایی داده‌ها بین حافظه و پردازنده‌ها تا ۱۰۰۰ برابر بیشتر از خود محاسبات انرژی مصرف می‌کند.
  • معماری‌های «پردازش در حافظه» (PIM) گیت‌های منطقی را مستقیماً در تراشه‌های حافظه تعبیه می‌کنند تا این تنگنا را دور بزنند.
  • شرکت‌های سامسونگ و SK Hynix تراشه‌های PIM تخصصی توسعه داده‌اند که ضرب‌های بردار-ماتریس مورد نیاز برای استنتاج هوش مصنوعی را شتاب می‌بخشند.
  • شرکت SK Hynix گزارش می‌دهد که شتاب‌دهنده AiMX آن زمان پردازش داده‌ها را ۱۰ برابر کاهش داده و مصرف انرژی را ۸۰ درصد کم می‌کند.
  • پذیرش گسترده PIM در حال حاضر به دلیل نیاز به بازنویسی کامپایلرهای نرم‌افزاری سنتی و چارچوب‌های مدیریت حافظه محدود شده است.

اصطلاحات کلیدی

تنگنای فون نویمان
محدودیت عملکردی ناشی از زمان و انرژی مورد نیاز برای جابه‌جایی داده‌ها بین حافظه کامپیوتر و واحد پردازش مرکزی آن.
پردازش در حافظه (PIM)
یک رویکرد معماری که منطق محاسباتی را مستقیماً در داخل تراشه‌های حافظه تعبیه می‌کند تا نیاز به انتقال داده‌های خارجی را از بین ببرد.
استنتاج LLM
مرحله‌ای از یادگیری ماشین که در آن یک مدل زبانی بزرگ آموزش‌دیده، بر اساس ورودی کاربر متن یا پیش‌بینی تولید می‌کند.
یک دستور، چند داده (SIMD)
یک معماری محاسبات موازی که در آن یک دستور واحد به‌طور همزمان روی چندین نقطه داده اجرا می‌شود.
ضرب بردار-ماتریس
عملیات ریاضی هسته‌ای که زیربنای شبکه‌های عصبی است و برای پردازش به مقادیر عظیمی از پهنای باند حافظه نیاز دارد.

منابع

پوشش منابع

5 منبع

3 دیدگاه شناسایی‌شده

فروشندگان تجاری حافظه 40%پژوهشگران معماری سخت‌افزار 30%تحلیلگران اکوسیستم نرم‌افزار 30%
  1. [1]arXivپژوهشگران معماری سخت‌افزار

    PIM-AI: A Novel Architecture for High-Efficiency LLM Inference

    مطالعه در arXiv
  2. [2]arXivپژوهشگران معماری سخت‌افزار

    SAL-PIM: A Subarray-Level Processing-in-Memory Architecture

    مطالعه در arXiv
  3. [3]Supercomputing Exhibitor Forumفروشندگان تجاری حافظه

    Cost-Effective LLM Inference Solution Using SK hynix's AiM (Accelerator-in-Memory)

    مطالعه در Supercomputing Exhibitor Forum
  4. [4]IEEE Xploreپژوهشگران معماری سخت‌افزار

    Hardware Architecture and Software Stack for PIM Based on Commercial DRAM Technology

    مطالعه در IEEE Xplore
  5. [5]تیم سردبیری کوهستانتحلیلگران اکوسیستم نرم‌افزار

    تحلیل تیم سردبیری کوهستان

    مطالعه در تیم سردبیری کوهستان

نظرات

همیشه در جریان باشید

هر زاویه. هر روز.

دریافت هوش مصنوعی اخبار همراه با پوشش کامل منابع و تحلیل دیدگاه‌ها، مستقیم در صندوق ورودی شما.