یکی از قابلیت‌های جالب دایرکت ایکس ۱۲ که قبلاً مشابه آن را در Mantle ای‌ام‌دی شاهد بودیم، استفاده‌ی صریح و ناهم‌زمان از کارت گرافیک‌هایی با معماری کاملاً متفاوت است که SLI و CrossFire فعلی را دچار تحولی شگرف می‌کند.

یکی از منابع آگاه در مورد API (واسط برنامه‌نویسی) خاصی که احتمالاً همان دایرکت ایکس ۱۲ باشد سخنان جالبی گفته است که اگر صحت داشته باشند، باید منتظر یک شگفتی جالب باشیم، آن هم در رابطه با استفاده‌ی موازی از کارت گرافیک‌های مختلف.

ویندوز ۱۰ به همراه دایرکت ایکس ۱۲ در راه است و تکلیف همه‌چیز را روشن می‌کند. هدف اصلی دایرکت ایکس ۱۲ استفاده‌ی بهینه از سخت‌افزار است و برای نیل به این مقصود، سطح دسترسی به سخت‎افزار را به مرزهایی فراتر از دایرکت ایکس ۱۱ برده است. نتیجه هم روشن است، سرعت اجرای بیشتر و نیاز به پردازنده‌ی معمولی‌تر. قبلاً در این باره مفصلاً بحث کردیم:

بررسی تخصصی عملکرد DirectX 12 و مقایسه با Mantle؛ منتظر تحول باشیم

بررسی تخصصی DirectX 12 و مقایسه با Mantle؛ منتظر تحول باشیم

هنوز دایرکت ایکس ۱۲ به همراه ویندوز ۱۰ وارد صحنه نشده اما بررسی تخصصی DirectX 12 و مقایسه باDirectX 11 از برتری عجیب آن در اجرای هر چه سریع‌تر بازی‌ها خبر می‌دهد. در ادامه با نگاهی عمیق به این پدیده‌ی جدید دنیای گیم با ما باشید.

با استفاده‌ی صریح و ناهم‌زمان، همه‌ی کارت گرافیک‌ها یکی می‌شوند.

اما خاصیت جدیدی که در دایرکت ایکس ۱۲ احتمالاً وجود داشته باشد به موازی‌سازی کارت گرافیک‌های مختلف که محصول انویدیا و ای‌ام‌دی هستند مربوط می‌شود. یکی از قابلیت‌های جالب DirectX 12 استفاده‌ی آسنکرون و صریح از چند پردازنده‌ی گرافیکی است. Explicit Asynchronous Multi-GPU یا استفاده‌ی صریح و آسنکرون یا نا‌هم‌زمان به این معنی است که API می‌تواند قدرت پردازنده‌های گرافیکی مختلف را ترکیب کند و در یک سطل بریزد. سازنده‌ی بازی هم می‌تواند وظایف هر یک از کارت گرافیک‌ها را تعیین کند و از همه‌ی آنها علی‌رغم تفاوت ساختاری استفاده نماید.

DirectX 12 استفاده‌ی موازی از چند کارت گرافیک را به روشی بهینه ممکن می‌کند.

DirectX 12 استفاده‌ی موازی از چند کارت گرافیک را به روشی بهینه ممکن می‌کند.

اما چطور شده که دایرکت ایکس ۱۲ به این مرحله از پیشرفت رسیده است؟

مقدماتی که استفاده از کارت گرافیک‌های کاملاً متفاوت به صورت موازی را میسر کرده است

اولین پیشرفت این است که بافر فریم‌ها (حافظه‌ای که فریم‌های رندر شده را نگه می‌دارد) در مورد چند کارت گرافیک موجود روی سیستم، یکسان نیست، چیزی که در دایرکت ایکس ۱۱ شاهد بودیم. در حقیقت در روش AFR یا Alternate Frame Rendering هر دو کارت گرافیک مشغول رندر کردن می‌شوند و برای اجرای محاسبات و تولید فریم بعدی، به تمام منابع که شامل بافت و هندسه است نیاز دارند. بنابراین نتیجه این است که اگر فرضاً دو کارت گرافیک ۴ گیگابایتی داشته باشید، فضای مفید همان ۴ گیگابایت خواهد بود چرا که اطلاعات روی هر دو حافظه و به صورت مشابه ذخیره شده است.

دایرکت ایکس ۱۲ از این ایده‌ی معمولی تبعیت نمی‌کند و روش خاص خودش را دارد که به SFR معروف است. Split Frame Rendering یعنی اینکه فریم به بخش‌های کوچک‌تری تقسیم شود و توسط پردازنده‌های گرافیکی مختلف رندر شود. سازنده‌ی بازی می‌تواند منابع را بین کارت گرافیک‌ها تقسیم و وظیفه‌ی هر یک را معین کند. در این صورت هر دو کارت گرافیک در رندر کردن یکایک فریم‌ها مشارکت می‌کنند.

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

مزیت دیگری که SFR نسبت به AFR دارد این است که نیازی به ذخیره کردن چند فریم در بافر و پیش از نمایش نیست. در واقع در AFR تصویری که روی نمایشگر می‌بینیم، تصویری مربوط به ۴ ۵ لحظه پیش است. منظور من از لحظه، ثانیه نیست بلکه زمانی در حد رندر شدن یک فریم است. ۴ ۵ فریم رندر شده و آماده هم در صف قرار گرفته‌اند تا تجربه‌ای روان نصیب بیننده شود و همیشه فریم‌هایی آماده برای نمایش روی صفحه داشته باشیم. در SFR تأخیر به مراتب کمتر است و نیازی به در صف قرار گرفتن چند فریم رندر شده نداریم.

بازی سیویلایزیشن از رندر کردن قطعات فریم توسط چند کارت گرافیک استفاده می‌کند

بازی سیویلایزیشن از رندر کردن قطعات فریم توسط چند کارت گرافیک استفاده می‌کند

و مقایسه با Mantle ای‌ام‌دی

اگر یادتان باشد در بررسی منتل به بازی استراتژی Civilization: Beyond Earth پرداختم. بازی جدیدی که از روش SFR پشتیبانی می‌کند چرا که SFT در منتل ای‌ام‌دی پشتیبانی شده است و این بازی هم نمایشی از قدرت منتل است. تاکنون دایرکت ایکس‌ها از روش SFR پشتیبانی نکرده‌اند و دایرکت ایکس ۱۲ شروع راه جدید استفاده‌ی موازی از منابع پردازش گرافیکی است.

Civilization: Beyond Earth

واسط برنامه‌نویسی Mantle ای‌ام‌دی چیست؟ نگاهی به اثر منتل AMD در بازی‌ها

ای‌‌ام‌دی با API منتل قصد بهینه‌سازی استفاده از پردازنده‌های چند هسته‌ای و به طور کلی ارتباط بین پردازنده‌ی اصلی و گرافیکی را دارد. در ادامه به معرفی و اثر Mantle در سرعت اجرای بازی‌ها می‌پردازم.

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

علت کاربرد عمومی AFR سادگی آن است. البته همین سادگی از منظر سازندگان بازی به معنی پیچیدگی SLI و CrossFire است، دو تکنولوژی مشابه که توسط انویدیا و ای‌ام‌دی برای موازی کردن دو کارت گرافیک و استفاده از هر دو معرفی شده است.

تحولی قریب‌الوقوع در کراس‌فایر و اس‌ال‌آی

دایرکت ایکس ۱۲ و منتل در حرکتی همسو می‌توانند محدودیت‌های فعلی SLI و CrossFireX را از بین ببرند و شاید GLNext که نسخه‌ی بعدی OpenGL است هم به آنها ملحق شود. با توضیحاتی که داده شد، منطقی است که تفاوت معماری محصولات انویدیا و ای‌ام‌دی و نیز پردازنده‌های گرافیکی اینتل که به صورت مجتمع با پردازنده‌ی اصلی عرضه می‌شوند، مشکلی در برابر دایرکت ایکس ۱۲ و منتل نیست.

البته قرار نیست در چند ماه آتی شاهد اتفاقی عجیب در دنیای گیم باشیم و ببینیم که کاربران حرفه‌ای سیستم‌هایی ترکیبی جمع کرده‌اند تا فناوری‌های انحصاری ای‌ام‌دی و انویدیا را با هم ترکیب کنند و در بازی‌ها از هر دو بهره‌مند شوند. باید بیش از اینها صبر کرد تا سازندگان بازی هم تفاوت‌های SFR و AFR را تحلیل و بررسی کرده و در بازی‌های جدید از روش‌های نوین استفاده کنند.

تکنولوژی‌های خاص فعلاً ترکیب‌شدنی نیستند!

و یک نکته، فناوری‌های انحصاری مثل TressFX ای‌ام‌دی و HBAO+ انویدیا باید روی تمام فریم اجرا شده و پردازش کنند. البته TressFX لزوماً به محصولات ای‌ام‌دی و معماری GCN نیاز ندارد اما روی سخت‎‌افزار ای‌ام‌دی با روشی متفاوت و بهینه اجرا می‌شود. اما نتیجه اینکه تقسیم کار بین چند پردازنده‌ی گرافیکی در مورد این تکنولوژی‌های خاص، ممکن نیست. منظور از ترکیب فناوری‌ها این است که فرض مثال TrueAudio ای‌ام‌دی را برای شبیه‌سازی دقیق و طبیعی صدا به کار ببریم و برای اجرای سه‌بعدی بازی از ۳D Vision انویدیا استفاده کنیم.

پراکنش محیط نور در بازی فار کرای 4 با HBAO+

پراکنش محیط نور در بازی فار کرای ۴ با HBAO+

با این تفاسیر پیاده‌سازی قابلیت Explicit Asynchronous Multi-GPU دایرکت ایکس ۱۲ به این سادگی‌ها هم نیست و به مرور زمان پیشرفت می‌کند و نه به صورت آنی.

به نظر شما اگر این حرف و حدیث‌ها واقعیت پیدا کند، عملکرد لپ‌تاپ‌ها و دستاپ‌هایی که به پردازنده‌های گرافیکی مجزا و مجتمع دسترسی دارند، چه قدر بهتر می‌شود؟
لينک کوتاه:

FacebookTwitterGoogle


بيشتر بخوانيد:

دیدگاه بگذارید

1 دیدگاه روشن "دایرکت ایکس ۱۲ با ترکیب انواع کارت گرافیک شگفتی می‌آفریند"

اطلاع از
امین نادری
مهمان

البته به دلیل ساختار بسیار متفاوت در نوع پردازش تقریبا غیر ممکن هست
مگر اینکه مثل گذشته که کارت انویدیا را به عنوان کارت فیزیک استفاده میکردیم و یک کارت دیگر چه از AMD و چه از انویدیا برای پردازش بازی

wpDiscuz

تبلیغات

تبلیغات

تبلیغات

×