بازی Ashes of the Singularity

تمام نگاه ها در بازار رابط های برنامه نویسی سطح بالا به بازی جنجالی Ashes of the Singularity و رابط DX12 است. دو موردی که محل اختلاف انویدیا و استدیو Oxide Games است. مهمترین محل اختلاف این دو هم موتورهای ACE است و ما هم پیش از این در مقاله ای به نام «بررسی Ashes of the Singularity و ماجرای DX12» به بررسی بخش از زوایای آن پرداختیم. موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines» در پردازنده های گرافیکی مبتنی بر میکرو معماری GCN برای افزایش توانایی قابلیت سایه زنی غیر همزمان برو روی DX12 به کار میرود.

این واحد ها به این منظور به خدمت گرفته شدند که به دستورات پردازنده (Command Processor) برای عملیات های مربوط به محاسبات (Compute) کمک کنند. هدف اصلی ACEs ها قبول کارها برای ارسال به CU برای پردازش است. (نقشی شبیه GTE یا Giga Thread Engine های انویدیا که شاید عملکرد صحیح و برنامه ریزی صحیح این واحد، میتوانست کارایی نهایی و قدرت فرمی را در محاسبات GPGPU افزایش میداد که اینگونه نشد).

از آنجایی که هدف اصلی میکرو معماری GCN همان محاسبات (compute) است، ACEs ها باید بتوانند با وظایف مختلف به خوبی کار کنند. اطلاعات زیادی از اینکه AMD چه طور بی واسطه از قابلیت های ACEs و تعداد وظیفه های مختلف به طورهمزمان استفاده میکند در دست نیست. اما چیزی که مشخص است، این است که وظایف (Tasks) موازی متعدد، نیاز مند ACE های متعددی هم میباشند.

بررسی تخصصی معماری GCN کمپانی AMD (بخش اول)

بیاید با هم راحت صحبت کنیم. انویدیا کلا زمانبندی و سازماندهی دستورالعمل ها را به دوبخش تقسیم کرده و اکثر بخش های نرم افزاری این کمپانی بر پایه درایور و باقی آنها نیز در داخل بستر تراشه و به صورت سخت افزاری قرار گرفتند. اما AMD همچون معماری Fermi انویدیا اکثر بخش ها، یعنی تقریبا همه بخش های سازماندهی Wave Front ها را داخل تراشه و به صورت سخت افزاری قرار داده است.

انویدیا از زمان کپلر به بعد بخشی را به درایور و پردازنده سپرده که دلایلی تکنیکی دارد. اینطور بگوییم که از لحاظ پشتیبانی از فیچر لول های DX12 هیچ کدام از محصولات AMD حتی به نزدیکی اینتل هم نمیتوانند برسند و این دقیقا چیزی بود که آناندتک هم تایید کرد. البته فیچر لول های DX12.1 که یک مورد آن VXGI موجود در Quantum Break است، هنوز پشتیبانی آن در کارت های انویدیا و AMD تایید نشده است! اما جالب است همین مورد روی کنسول Xbox One به صورت شبیه سازی شده اجرا میشود! شایدم هم شبیه ساز نباشد!

در تست خام Async Compute ای که یکی از کاربرای انجمن Beyond درست کرده  است، نتایج جالبی حاصل شده! کارت HD ۷۹۵۰ با ٢ واحد Async Compute موفق شده عملکرد بهتری به نسبت Fury X ثبت کند و این یعنی گام های افزایش سربارش کمتر بوده است. انویدیا نیز از این نظر در ابتدای کار خیلی خیلی سریعتر از AMD بوده و بعد با اضافه شدن سربار اضافی، گام هاش افزایش میافت. این کار همانند روش AMD اما باشدت بیشتر  است که باید با تریک های نرم افزاری مشکلش حل شود.

بازی Ashes of the Singularity

بررسی پایه معماری ماکسول (Maxwell)

هر دو کمپانی AMD و انویدیا در این مورد و با توجه معماری تراشه های خود میتوانند از یک سری موارد پشتیبانی کنند و از یک سری دیگر خیر. اما فیچر لول سطح ۱ خودش ٨ مدل دیگر دارد که در هر دو معماری از بقیه آنها پشتیبانی نمیشود. اینتل از ۶ مورد اضافی پشتیبانی میکند. یعنی میشود گفت که انویدیا از نظر پردازش سریع داده موفق شده در بررسی پایه معماری ماکسول (Maxwell) به اوج پختگی وتوانایی این کار برسد و نمونه آن کارتهای سری ۹۰۰ ای هستند که اکثر آنها را در سایت بررسی کردیم.

نکته مهم دیگری که باید گفت این است که چون تعداد هسته های AMD بیشتره است لزوماً نمیشود گفت که قدرت تراشه هایش بیشتر است. هر کدام از معماری ها در یک سری موارد قدرت و برتری بیشتری نسبت به دیگری دارند. استدیو Oxide دیتاهای Ashes of the Singularity را برای میکرو معماری GCN بهینه کرده و این مورد نیز توسط AMD تایید شده است. یعنی مدل پردازشی دیتاها در ACE به صورت ۶۴ تایی است. اما در تستی همچون Star Swarm که در مبحث قبلی نتایجش را منتشر کردیم، کارت های انویدیا دو برابر سرعت بیشتر به نسبت کارت های AMD داشتند و البته تفاوت در این بود که AMD اینقدر سر و صدا به پا نکرد!

انویدیا با DX11 در همین بازی از AMD در DX12 سریعتر بود و خود استدیو Oxide هم اعلام کرده که تمرکز انویدیا روی DX11 است. در واقع موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines» بستگی زیادی به این دارد که شرکت های بازی سازی بار پردازشی را چه گونه تقسیم کنند و داده های ارسالی Async را چه گونه برنامه ریزی کنند تا به حداکثر کارایی برسد. انویدیا کار سختی برای بهینه سازی بازی Ashes of the Singularity دارد، چون به احتمال خیلی زیاد دیتا ها به صورت ۶۴ تایی آدرس دهی شدند و به اصطلاح Amd Favor هستند.

بررسی فنی | ویژگی های جدید DirectX 12 در ویندوز ۱۰

بازی Ashes of the Singularity

نکته دیگر این است که مسیر انویدیا مسیر راحت تری است. چون همانطور که در بالا عرض کردیم،  انویدیا کلا زمانبندی و سازماندهی دستورالعمل ها رو به دوبخش تقسیم کرده و اکثر بخش ها نرم افزاری این کمپانی بر پایه درایور هستنن و باقی هم در داخل تراشه و به صورت سخت افزاری قرار گرفتند. این بدین معناست که انویدیا به راحتی میتواند رفتار سخت افزارش راتغییر دهد، چون نرم افزاری است، در صورتی که AMD در این زمینه به مشکل میخورد.

اینطور بگویم که رشته دستورالعمل ها در یک Wave Front قابل منظم سازی نیستند. ACE ها میتوانند در اولویت بندی خودشان وظایف (Tasks) را تغییر بدهند و به آنها این اجازه را بدهند تا در نوبت های دیگر اجرا شوند. ولی این مخصوص معماری های نا منظم است و در معماری منظمی همچون GCN ممکن است این مورد هرگز اتفاق نیفتد. این همان چیزی است که Guru3d هم به آن اشاره کرده است. البته پشتیبانی نکردن انویدیا و معماری ماکسول دو از پردازش های ناهمگام (Asynchronous Compute) در بازی Ashes of the Singularity میتواند نتایج مختلفی داشته باشد.

این مورد میتواند به معنای پشتیبانی نکردن  نسل دوم معماری ماکسول از قابلیت های موجود در فیچر لول های DX12.1 باشد که البته احتمالش بسیار ضعیف است. چون نسل دوم معماری ماکسول پردازش های ناهمگام (Asynchronous Compute) را به صورت شبیه سازی و به واسطه نرم افزار اجرا میکند. همان مورد و تغییر رویه ای که انویدیا از نسل کپلر به نسل ماکسول در کارت هایش ایجاد کرده بود، حالا بر عکسش توسط AMD در حال انجام است!

بررسی فنی پلتفرم DirectX 12

بازی Ashes of the Singularity

Asynchronous Compute Engine اصولا برای کاربردهای Computing استفاده میشود. هدف اصلی موتورهای ACE پذیرفتن کارها و انتقال آنها به واحدهای CU است. اما یک نکته مهم وجود دارد و آن هم این است که معماری GCN اصولا توانایی محدودی در اجرای دستورات نامنظم دارد و یک معماری منظم محسوب میشود. سوال این است که پس چه گونه از Asynchronous Compute Engine پشتیبانی میکند؟! چیزی که جلب توجه میکند استفاده از فیچر لول های DX12.1 ای همچون  VXGI موجود در عنوان انحصاری Quantum Break کنسول Xbox One است.

بازی بزرگی که همین چند روز قبل یک تریلر فنی در مورد روش های رندرینگ و نورپردازی این بازی در همایش Siggraph 2015 منتشر شد و ما نیز آن را در بررسی ویژه ای به نام «بررسی سیستم نور پردازی پیشرفته Quantum Break» منتشر کردیم که میتوانید با کلیک روی لینک فوق مقاله را مشاهده کنید. سوال اصلی این است که وقتی Quantum Break از VXGI پشتیبانی میکند معنایش چیست؟! برداشت نگارنده این است که ممکن است کنسول های PS4 و Xbox One هم از فیچر لول های DX 12.1 پشتیانی کنند!

حالا ممکن است این اتفاق به صورت موتور بازی، نرم افزاری و یا با روش های دیگر باشد. نمیشود که مایکروسافت فیچر لول های DX12.1 را طراحی کند، اما همین ویژگی های بسیار مهم را در کنسول خودش اضافه نکند! اگر اینطور باشد که به ضرر مایکروسافت و کنسول Xone است. به هر حال یکی از دلایل مهم سازگاری و عملکرد بسیار خوب بازی Ashes Of Singularity روی کارت های AMD این است که این بازی اولین بار با استفاده منتل روی کارت های AMD به نمایش درآمده بود و به همین دلیل موتور بازی با تراشه های گرافیکی AMD سازگارتر است.

بررسی کامل نسل دوم معماری ماکسول (Maxwell)

بازی Ashes of the Singularity

طی تست هایی که چند روز پیش بخش دیجیتال فاندری سایت یوروگیمر در عملکرد DX12 روی کارت های انویدیا و AMD انجام داده بود شاهد حصول نتایج عجیب و جالب توجهی بودیم. نتایج این تست ها بدین صورت بوده که در اغلب نتایج، عملکرد کارت های AMD با DX12 گاهی تا ۷۵ درصد بهتر از مورد مشابه در کارت های انویدیا بوده است. در واقع کارتی همچون R9 290X در DX11 تا ۵۰ درصد هم ضعیف تر از Titan X عمل میکند و جالب اینجاست عملکرد همین کارت در DX12 با عملکرد  Titan X برابر میشود!

بنا به گفته استدیو Oxide عملکرد میکرو معماری GCN شرکت AMD در پردازش های موازی به مراتب بهتر از عملکرد نسل دوم معماری ماکسول (Maxwell) در DX12 است. بدین معنا که معماری ماکسول (Maxwell) شرکت انویدیا در پردازش های موازی و غیر همزمان قادر است ۳۱ کار/دستور العمل پردازشی را انجام دهد، در حالی که GCN AMD میتواند ۶۴ تا کار/دستور العمل پردازشی را انجام دهد. این یعنی اینکه  معماری AMD GCN در DX12 از عملکرد به مراتب بهتری برخوردار است..

در واقع عمده تمرکز انویدیا با معماری Maxwel روی DX11 بوده و به همین دلیل در تست های DX11 از نتایج بهتری برخوردار است. اما دیجیتال فاندری سایت یوروگیمر در ادامه گریزی به کنسول های نسل هشتمی PS4 و Xbox One زده و به این نتیجه رسیده که در کنسول PS4 شرکت سونی تعداد ۸ واحد ACE وجود دارد و همین مقدار در تراشه گرافیکی (GPU) کنسول Xbox One به دو عدد ACE محدود میشود. موردی که در آینده میتواند تاثیر زیادی در عملکرد بازی های بین دو کنسول بگذارد.

همراه با PS4: بررسی معماری سخت افزار کنسول PS4

بازی Ashes of the Singularity

نظر مارک سرنی در رابطه با پردازش های ناهمگون PS4
«Our belief is that by the middle of the PlayStation 4 console lifetime, asynchronous compute is a very large and important part of games technology» «Mark Cerny» باور ما این است که در اواسط عمر کنسول PlayStation 4 محاسبات ناهمزمان (asynchronous compute) بخش بسیار بزرگ و مهمی از بازی ها میشود.

اما نتایج دیجیتال فاندری خیلی هم دقیق نیست. البته تا حدودی درست است، اما موتور استفاده شده در Ashes of the Singularity بر پایه DX12 ساخته شده و به صورت کامل از Async Compute پشتیبانی میکند. در صورتی که درایور های انویدیا توان استفاده از این دستورالعمل ها را ندارند. در واقع مهمترین علت نتایج بد انویدیا در تست های اخیر DX12 پشتیبانی بسیار ضعیف انویدیا از Async Compute است که احتمالا با درایورهای بهینه این مشکل بر طرف میشود.

در آخر هم با نیم نگاهی به مقاله آناندتک تحلیل خودمان را تمام کنیم. آناندتک در بررسی عمیقی با عنوان «AMD Dives Deep On Asynchronous Shading» به صورت کامل این موضوع را برسی کرده و طی بنچمارک Async compute بر روی کارت های انویدیا اعلام کرده که کارت های این کمپانی از به خوبی میتوانند از Async Compute پشتیبانی کنند! این در حالی است که استدیو Oxide Games نظر دیگری دارد.

بررسی فنی دو تکنیک پیشرفته DirectX 12 در کنفرانس انویدیا

بازی Ashes of the Singularity

در واقع گل سر سبد کارت های انویدیا به نام GTX 980 TI که بهترین و بیشترین عملکرد ممکن در بین کارت های این کمپانی را دارد روی DX12 نتایجی مشابه ۲۹۰X تولید میکند و دقیقا به همین دلیل بود که سران انویدیا از استدیو Oxide خواستند قابلیت Async Compute را روی کارت های سری ۹۰۰ غیر فعال کند. سازنده بازی Ashes of the Singularity هم اعلام کرده بود که درایور شما در ظاهر از قابلیت Async Compute پشتیبانی میکند، اما در عمل توان این کار را ندارد.

این مورد زمانی مهم میشود که بدانیم طبق مقاله آناندتک، تعداد ACE ها و Queue های موجود در کارت های انویدیا بسیار بیشتر از کارت های AMD است.  اینجاست که باید گفت لزوماً افزایش تعداد ACE ها و Queue های موجود در کارت گرافیک به معنای عملکرد و توان انجام پردازش بیشتر نیست. به هر حال فقط باید صبر کرد و دید که در آینده ای نزدیک چه اتفاقاتی رخ میدهد.

راي شما
1 Star2 Stars3 Stars4 Stars5 Stars6 Stars7 Stars8 Stars9 Stars10 Stars
Loading...

نوشته شده در AMD/ATI,Intel /Nvidia,بررسی سخت افزار,تحلیل فنی,کارت گرافیک

آخرین نقد و بررسی ها
بررسی مانیتور Samsung CFG70 27-Inch gaming

بررسی مانیتور Samsung CFG70 27-Inch gaming

تاريخ بررسي: ۲۶ آبان, ۹۶
بررسی کارت گرافیک ASUS ROG STRIX GTX 1060 OC 6GB

بررسی کارت گرافیک ASUS ROG STRIX GTX 1060 OC 6GB

۱۹ مرداد, ۹۶

9.0

بررسی کارت گرافیک Zotac GeForce GTX 1080 Ti AMP! Extreme

بررسی کارت گرافیک Zotac GeForce GTX 1080 Ti AMP! Extreme

۶ مرداد, ۹۶

9.6

بررسی کارت گرافیک Palit GTX 1080 GameRock Premium

بررسی کارت گرافیک Palit GTX 1080 GameRock Premium

۲۶ تیر, ۹۶

9.8

بررسی کارت گرافیک Sapphire Radeon RX 580 Nitro

بررسی کارت گرافیک Sapphire Radeon RX 580 Nitro

۲۳ اردیبهشت, ۹۶

9.2

روزی سگی، شیری را گفت: با من ستیز کن؛ شیر سر باز زد؛ سگ گفت: نزد تمام سگان خواهم گفت شیر از مقابله با من می هراسد. شیر گفت: سرزنش سگان را خوشتر دارم تا شماتت شیران، که گویند چون شیری باشد که با سگی پنجه در پنجه شده

×
کارت-گرافیک-AMD-FirePro-W8100

تــیم گارد3دی

تیم گــارد3دی (Guard3d.com) سعی بر ارائه مطالب متفاوت در زمینه سخت افزار و بازی دارد و امیدوار است در این زمینه بهترین عملکرد را داشته باشد . تیم گـــارد فعالیت خود را به صورت رسمی از تاریخ 2013-10-14 برابر با 1392-07-22 آغاز کرده و تمامی مطالب تولید شده توسط این سایت برای صاحبین آن محفوظ میباشد. کپی مطالب تنها با ذکر نام (Guard3d.com) مجاز است و ما از کپی مطالب بدون ذکر دقیق لینک منبع به صفحه مطلب راضی نیستیم. امیدواریم رضایت شما را جلب کنیم .

شبکه های اجتماعی

کپی رایت 2013 © تمامی حقوق نزد Guard3d محفوظ است | طراحی و کدنویسی توسط hosseincode

error: نمیتوانید کپی کنید!!! فقط لینک صفحه برای آدرس دهی به این مطلب قابل کپی است