چرا پردازندههای چندهستهای در حوزه گیمینگ حرفهای زیادی برای گفتن ندارند؟
بازیها به شکلهای متفاوتی از CPU و GPU استفاده میکنند؛ اما تقریباً همه بر این نکته توافق دارند که برای اجرای بازیهای جدید، به گرافیک قوی و CPU توانمند نیاز است. با اینکه پردازندههای چندهستهای بیش از دو دهه عمر دارند، بازیها هنوز نتوانستهاند از آنها بهطور کامل بهرهبرداری کنند.
ممکن است حین اجرای بازی، کارت گرافیک با تمام ظرفیت خود در تلاش باشد تا بازی را با نرخ فریم مطلوبی اجرا کند؛ اما CPU در گوشهای آرام گرفته و در حال استراحت باشد. در ادامه توضیح مختصری از این رفتار گیجکنندهی پردازندهها ارائه میشود.
توسعهدهندگان بازی بهدلیل پیچیدگی نوشتن کد برای بهرهبرداری از چند هسته، معمولاً روی یک هسته تمرکز میکنند
یکی از دلایلی که هنوز میبینیم بازیها بهشدت به عملکرد تکهستهای وابستهاند، این است که نوشتن کدی که به بازیها اجازه دهد از چند هسته بهطور مؤثر استفاده کنند، بسیار پیچیدهتر از حالت تکهستهای خواهد بود. توسعهدهندگان بازی بهدلیل پیچیدگیهای موجود در نوشتن کد برای بهرهبرداری از چند هسته، معمولاً روی یک هسته تمرکز میکنند.
برای طراحی بازی مبتنیبر پردازش چندهستهای، توسعهدهندگان بازی باید منابع و زمان محدود خود را صرف پیداکردن راهی برای توزیع عملیات مختلف در چند هسته کنند. در مقابل، برخی از وظایف بهسادگی نمیتوانند آنقدر «موازیسازی» شوند (کارها را بهصورت موازی پیشببرند) که مزایای آنها فرایند را ارزشمند و توجیهپذیر کند.
با توجه به آنچه گفته شد، تمرکز بر عملکرد تکهستهای آسانتر میشود و بهینهسازی بازیها برای استفادهی کامل از یک هستهی CPU بهسادگی انجام میگیرد. بنابراین، معمولاً با نظارت بر روند اجرای بازی دیده میشود که هستهی اصلی CPU بیشترین بار را دارد و سپس درگیری نسبتاً کمی در سایر هستهها وجود دارد.
بسیاری از محبوبترین موتورهای بازی از پردازش چندهستهای پشتیبانی نمیکنند
یکی از دلایل اینکه بسیاری از بازیها نمیتوانند از چند هستهی CPU بهخوبی استفاده کنند، به موتور بازی مربوط میشود. بسیاری از موتورهای بازی محبوب سالها پیش ایجاد شدهاند و برخی در دههی ۱۹۹۰ و زمانی که برای بهکارگیری عملکرد چندهستهای طراحی نشده بودند.
با اینکه موتورهای بازی جدید از هستههای چندگانه پشتیبانی میکنند، همچنان نتوانستهاند موازیسازی را بهخوبی پیادهسازی کنند. بسیاری از وظایف بازی هنوز بهگونهای طراحی نشدهاند که بهطور مؤثر روی چند هسته اجرا شوند.
بهگفتهی Xda-developers، بیشتر بازیهای جدید بهگونهای طراحی شدهاند که کارت گرافیک بار سنگینتری به دوش میکشد. پردازندههای گرافیکی در انجام پردازشهای موازی عالی هستند. این یعنی میتوانند همزمان تعداد زیادی محاسبهی مشابه را انجام دهند. این ویژگی آنها را برای وظایفی مانند پردازش ورتکس، شطرنجیسازی (Rasterization)، سایهزنی، نورپردازی و رهگیری پرتو ایدئال میسازد.
اگرچه برخی امور اجرای بازی هنوز به CPU واگذار شده است، GPU عامل اصلی رندرکردن بازیها با جلوههای بصری پیچیده به شمار میرود. بنابراین، معمولاً برای توسعهدهندگان منطقی خواهد بود که بهینهسازی برای پردازندهی گرافیکی را در اولویت قرار دهند؛ بهجای اینکه منابع را برای استفاده از هستههای اضافی CPU صرف کنند.
بسیاری از سازندگان PC برای داشتن گرافیک قدرتمندتر، قدرت CPU را فدای آن میکنند. وقتی بیشتر بار بازی بر دوش GPU است، گیمرها منطقی میدانند که بخش عمدهای از بودجهی خود را صرف خرید کارت گرافیک کنند.
با اینکه بازیهای جدید تاکنون نتوانستهاند بهطور کامل از CPUهای چندهستهای استفاده کنند، باید علاوهبر استفاده از کارت گرافیک قدرتمند، به خرید پردازنده پرقدرت گیمینگی فکر کنید که با کارت گرافیک و مادربرد سازگار باشد تا به عملکرد بهینهی سیستم کمک کند.