GPU چیست؟

GPU یا واحد پردازش گرافیک (Graphics Processing Unit)، یک پردازشگر اختصاصی است که جهت تسریع در برنامه‌های گرافیکی، رابط‌های کاربر و محتوای سه بعدی در تلفن‌های هوشمند، تبلت و دستگاه‌های IoT طراحی شده است. بازیهای 3D نوری و رابط‌های کاربر گرافیکی “زنده” (GUIs: Graphical User Interfaces ) نمونه‌هایی هستند که به طور خاص برای GPU طراحی شده‌اند. GPU به بخشی ضروری از مشخصات محصول برای کلیه پردازنده‌های برنامه‌های تلفن همراه و MCU/MPU‌های سطح متوسط/بالا تبدیل شده است. این پردازنده صرفاً به عملیات پردازش گرافیک یا محاسبات “نقطه شناور” (” floating point “) اختصاص یافته است و به تمایز محصول شرکت‌ها کمک می‌کند. یکی از اصلی‌ترین کارکردهای GPU، سبک کردن بار روی CPU (واحد پردازش مرکزی) است، خصوصاً در هنگام اجرای برنامه‌های فشرده گرافیکی مانند بازی‌های hi-res یا برنامه‌های گرافیکی سه بعدی. گرافیک سه بعدی یکی از بهترین نمونه‌های پردازش موازی با توان بالا است زیرا GPUها می‌توانند میلیاردها پیکسل /عمودی یا عملیات نقطه شناور را در هر ثانیه پردازش کنند. معماری یک پردازنده گرافیکی تفاوت چندانی با یک CPU ندارد، با این حال ساخت و ساز آن بسیار بهینه شده‌است تا اطلاعات گرافیکی به صورت کارآمد محاسبه شود. GPU برای تهیه تصاویر در بازیهای یارانه‌ای استفاده می‌شود.

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

در جدول زیر تفاوت بین CPU و GPU به طور خلاصه آورده شده است.

GPUCPU
واحد پردازش گرافیکواحد پردازش مرکزی
دارای تعداد زیادی هسته‌دارای تعداد کمی هسته
توان عملیاتی بالازمان تاخیر کم
مناسب برای پردازش موازیمناسب برای پردازش سری
توانایی انجام دادن تعداد زیادی عملیات به طور همزمانتوانایی انجام دادن تعداد اندکی عملیات به طور همزمان

انواع GPU

  • کارتهای گرافیکی اختصاصی، یکی از انواع GPU است که توان بالاتری را ارائه می‌دهند. آنها به‌ طور خاص برای این کار طراحی شده‌اند و ازطریق درگاه جداگانه‌ای با مادربرد ادغام می‌شوند. همچنین این نوع GPU دارای رم جداگانه‌ای با CPU است که فقط توسط GPU قابل استفاده است. این نوع کارتهای گرافیکی در دستگاه‌های اندروید یافت نمی‌شوند اما در رایانه‌های شخصی و لپ‌تاپ‌ها وجود دارند.
  • پردازنده گرافیکی مجتمع ( Integrated Graphics Processing ) از انواع دیگر GPU است. گرافیک‌های Integrated برای کاربران اندرویدی بیشتر آشنا است زیرا در آنچه که ما از آن به عنوان SOC یا ( System-on-a-Chip ) می‌شناسیم مانند سیستم Snapdragon 810 گنجانده شده است که شامل یک پردازنده گرافیکی integrated Adreno 430 می‌باشد. حافظه مورد استفاده حافظه سیستم است و GPU در خود پردازنده ادغام می شود.
  • GPUهای هیبریدی وجود دارد که ترکیبی از هر دو نوع هستند. یعنی آنها مقدار کمی رم اختصاصی دارند اما از حافظه سیستم نیز استفاده می کنند.

GPU چگونه کار می‌کند؟

برخلاف پردازنده‌های مرکزی که دارای تعداد کمی هسته با سرعت بالا هستند، GPU دارای تعداد زیادی هسته‌های پردازشی با سرعت کم است. این هسته‌ها به طور اساسی دو عملکرد مختلف را انجام می‌دهند: پردازش رئوس و پیکسل‌ها.

پردازش Vertex اساساً حول ایده سیستم‌های مختصات می‌چرخد. GPU محاسبات هندسی را برای تولید ابعاد فضا روی صفحه نمایش انجام می‌دهد. این امر منجر به ایجاد مواردی مانند عمق و داده‌های فضایی در بازیها و همچنین امکان چرخش در فضای سه بعدی می‌شود.

پردازش پیکسل GPUها یا به عبارت ساده‌تر، گرافیکی که می‌بینیم بسیار پیچیده است و حتی به توان پردازش بیشتری نسبت به vertices نیاز دارد. پردازش پیکسل لایه‌های مختلفی را ارائه می‌دهد و از افکت‌های مورد نیاز برای ایجاد بافت‌های پیچیده استفاده می‌کند تا واقع‌بینانه‌ترین گرافیک ممکن بدست آید.

پس از انجام هر دو فرایند، نتیجه به یک بازخوانی دیجیتال منتقل می‌شود. فرایند‌های شرح داده شده به طور مداوم میلیون‌ها بار در ثانیه اتفاق می‌افتد، به همین دلیل است که گاهی دستگاه تلفن در حین بازی گرم می‌شود.

مراجع: https://www.androidpit.com https://blogs.nvidia.com

مطالب مرتبط