نگاهی گذرا به معماری Maxwell : سبک ولی قدرتمند!

DieDie

کاربر سایت
Feb 28, 2010
2,772
از زمان معرفی کارت گرافیک GTX750ti خیلی ها معتقدن که با توجه به تکنولوژی های فعلی و نود 28 نانومتری معماری مکسول تقریبا اوج بهره وری به حساب میاد و با رونمایی از کارتهای GTX980 و GTX970 این نظریه قوت بیشتری گرفت با نگاه مختصری به اعداد و ارقام و قیاس اون با نسل قبل متوجه میشیم که تعداد هسته های کامپوت شیدر از 2880 در GTX780ti به 2048 در GTX980 کاهش پیدا کرده و گذرگاه حافظه هم از 384 بیت به 256 بیت تقلیل پیدا کرده تا اینجا کمتر کسی میتونه توقع داشته باشه که GTX980 کارت قدرتمند تری نسبت به GTX780ti باشه ولی
با توجه به بنچمارکها GTX980 نسبت به 780TI حدودا 10% قویتر هست در حالیکه 30% شیدر کر کمتر ، 33% پهنای باند باریکتر و 2 میلیارد ترانزیستور کمتر داره و حدودا 25% برق کمتری مصرف میکنه.



به نظر میرسه اونویدیا با تغییر آرایش شیدرها و feed کردن اونها تونسته occupation ratio رو تو معماری جدید به حدی افزایش بده که با وجود همه موراد بالا و فلوتینگ پوینت پائینتر از نسل قبل خودش جلو بزنه ! و در واقع از دل واقعیت چیزی به جز عددهای روی کاغذ بیرون کشیده.







tlvgg6vqs0dnijlg5937.jpg


تراشه GM204 که در کارتهای GTX980 و 970 به کار رفته و به گفته انویدیا به زودی در محصولات دیگه ای هم استفاده خواهد شد از چهارتا کلاستر ساخته شده که توی شکل با مربعهای قرمز مشخص شده به این کلاسترها Graphics Processing Clusters یا به صورت مخفف GPC میگن.
لازم به ذکره که کارت GTX980 از این تراشه به صورت فول چیپ یا کامل استفاده میکنه ولی GTX970 از همین تراشه با تعداد SMـهای کمتر استفاده میکنه!

هر کلاستر یک Raster Engine داره و از چهار تا SMs یا Streaming Multiprocessors ساخته شده که داخل شکل تو یکی از کلاسترها (اولی از بالا سمت چپ) با مستطیلهای آبی مشخص هست در نتیجه این چهار کلاستر مجموعا 4x4 برابر با 16 عدد SMs دارن.
هر SM از 128 عدد شیدر پروسسور که انویدیا بهشون هسته های CUDA میگه ساخته شدن که تو شکل مربعهای سبز کوچیک هستن به علاوه 8 تکسچر یونیت.
با توجه به اینکه این تراشه 16 تا SMs داره که هر کدوم متشکل از 128 هسته CUDA هستن در نتیجه GM204 مجموعا از 16x128 = 2048 عدد هسته CUDA ساخته شده.
هر تراشه 4 مموری کنترلر 64 بیت برای هر پارتیشن از حافظه داره که در نهایت پهنای باند 256 بیت رو برای کل حافظه DRAM فراهم کرده.

در قیاس با نسل قبل در معماری کپلر هر کدوم از SMـها از 192 هسته CUDA ساخته شده بود برای همین تراشه های کپلر با وجود هسته های CUDA ـی بیشتر SMـهای کمتری نسبت به مکسول داشتن که از نظر تعداد ترانزیستور و هسته های CUDA چگال تر از SMـهای مکسول هستن (192 در مقابل 128) با توجه به این موارد میشه احتمال داد که انویدیا آنالیز کرده و متوجه شده اون تعداد هسته CUDA در یک SM باعث کامپلکسیتی میشن و بهره وری کافی رو در ارتباط با سایر اجزاء و در نهایت عملکرد کلی کارت ندارن برای همین با بهینه سازی و آرایش مجدد SMـها و تخصیص ریسورسها به هسته های کمتر و بالا بردن مقدار کش L2 سعی کرده درصد اشتغال به کار هسته های CUDA رو بالا ببره تا به شکل موثر تر و با بهره وری بالاتر از کپلر کار کنن.
در نهایت به نظر میرسه اساس معماری مکسول با کپلر تغییرات نه چندان رادیکالی هم تو ساختار هسته های CUDA داشته مثل کم کردن FPUـهای 64 بیتی برای فلوتینگ پوینت با دقت دوبرابر (Double Precision) و در عوض خرج کردن ترانزیستورها برای کارهای دیگه مثلا برای بیشتر کردن کش و feed کردن بهتر شیدرها.

اگر نگاهی به تعداد Render Output یا ROP ـهای تراشه GM204 بندازین متوجه میشین که انودیا نسبت ROP به پارتیشنهای حافظه رو هم در تراشه های جدید افزایش داده تراشه GM204 از 4 مموری کنترلر 64 بیتی استفاده میکنه که با توجه به 64 عدد ROP ـی که این تراشه داره نسبت ROP ـها به حافظه 16 به 1 هست یعنی به عوض هر مموری کنترل که یک پارتیشن از حافظه رو کنترل میکنه 16 عدد ROP وجود داره به عبارتی این ROPـها 16 پیکسل یا به بیان دیگه Color Sample رو در هر سیکل کلاک پردازش میکنن که این نسبت در نسل قبل 8 به 1 بود.
متاسفانه بر عکس قسمتهای محاسباتی که میشه توانایی اونها رو با افزایش تعداد واحدها محاسباتی و و روشهای ذخیره سازی بهتر جهش داد این روش برای ROPـها کارساز نیست چون که ROPـها اشتهای وصف ناپدیزی در بلعیدن پهنای باند دارن برای همین حتی اگر شما ROP bound یا از نظر تعداد ROPـها محدود شده باشید بیشتر کردن تعداد ROPـها اگر پهنای باند کافی برای تخصیص دادن به اونها نداشته باشین دردی رو از شما دوا نمیکنه ، برای همین مشکل تا زمانیکه مسئله پهنای باند حل نشده باشه سر جای خودش باقیه مگر اینکه از سازو کار دیگه ای استفاده کنید!

f0ch9haeg6eqsj6f0goo.jpg


با وجود حساسیت ROP ـها نسبت به پهنای باند حتما متوجه شدین که در معماری مسکول انویدیا از پهنای باند باریکتر و در نتیجه کمتری برای کارتهای جدیدش استفاده کرده! پس در نتیجه با وجود ROP ـهای بیشتر تراشه باید در اکثر مواقع که رزولوشن بازی بالا هست Bandwidth bound باشه و از نظر پهنای باند کم بیاره و تعداد ROPـهای بالاتر در عمل حروم کردن ترانزیستور به نظر بیاد!
و در نهایت ممکنه استفاده از پهنای باند کمتر این مسئله رو برای مخاطب تداعی کنه که این تراشه در رزولوشنهای بالا یا موقع استفاده از تکسچرهای با کیفیت با مشکل در فریم دهی مواجه بشه و پهنای باند پایین نتونه ROP ـها رو به درستی تغدیه کنه ...
جواب این معما در استفاده انویدیا از نسل سوم Delta Color Compression نهفته که رنگهارو به نسبت 8 به 1 فشرده سازی میکنه و کمک کرده تا موقع نوشتن فریم بافرها اطلاعات تکراری مثل پیکسلهایی که رنگهای یکسان یا نزدیک به همی دارن به نحو موثری کاهش پیدا کنن و پهنای باند سیستم هدر نره و در نتیجه
با استفاده از این روش ROP ـها Color sample ـهای تکراری کمتری رو پردازش میکنن.
مورد قابل توجه دیگه کش L2 بزرگی هست که بین همه کلاسترهای GPU تقسیم شده و میتونه از تعداد دفعات رجوع پردازنده به حافظه DRAM کم کنه و پهنای باند رو بیش از قبل آزاد نگه داره.

اما اگر فکر میکنید این پایان ماجرا هست اشتباه میکنید تمام موارد بالا کمک میکنه تا با وجود مصرف انرژی و ریسورسهای کمتر در بازیهای امروزی عملکرد بهتر یا تقریبا مساوی با نسل قبل داشته باشیم ولی شکاف اصلی بین این کارتها با نسل قبلی زمانی مشخص میشه که بازیها از Rendering Feature ـها یا توانایی هایی که درون سخت افزار قرار گرفته استفاده کنن کارتهای GTX980/970 از رندرینگ فیچرهای DX12 و DX11.3 پشتیبانی سخت افزاری میکنن قابلیتهایی که باعث میشن کل پروسه رندرینگ با ترفندها و قابلیتهای ویژه ای سبک تر از قبل صورت بگیره به علاوه استفاده از Fixed function ـهایی که به جای شیدر ها برخی از کارهای GPU رو انجام میدن و با Offload کردن کار GPU توان پردازنده رو برای کارهای دیگه حفظ میکنن ، در نتیجه وقتی سازنده ها از این قابلیتها در بازیهاشون استفاده کنن احتمالا نه تنها شاهد برتریهای محسوس تر در نرخ فریم بازیها خواهیم بود بلکه تفاوتهایی رو هم در کیفیت بازیها خواهیم دید.

در آخر فراموش نکنید که چندی قبل شرکت AMD کارت گرافیک R9 285 خودش رو با تراشه ای به اسم رمز Tonga Pro برپایه معماری GCN 1.2 معرفی کرد که به لحاظ معماری یک پله بالاتر از سایر کارتهای خانواده R9 قرار میگیره و
با استفاده از lossless delta color compression (مشابه آنچه در بالا گفته شد) و به روز رسانی ISA instruction ـها تقریبا مشابه مکسول عمل کرده البته به اون سطح از بهره وری نرسیده (Floating point per watt) ولی چیزی که میشه انتظار داشت این هست که نسل بعد پردازنده های AMD درست مثل انویدیا دچار بهینه سازیهایی شدن که شاید روی کاغذ از نسل قبل ضعیفتر به نظر بیان ولی واقعیت چیز دیگه ای هست.
 
آخرین ویرایش:

کاربرانی که این قسمت را مشاهده می‌کنند

Top
رمز عبور خود را فراموش کرده اید؟
or ثبت‌نام سریع از طریق سرویس‌های زیر