معماری AMD GCN

مقاله پیش و روی شما بخش اول بررسی معماری GCN است که به صورت محوری به بررسی آن پرداخته شده و در بخش دوم به صورت عمیق تر به بررسی زوایای مهم این معمار یو مبحث مهم موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines» پرداخته شده که با کلیک روی لینک زیر میتوانید بخش دوم این بررسی را مشاهده کنید:

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

ما در این بررسی قصد داریم این معماری و گذشته آن را موشکافی کنیم تا متوجه شویم معماری GCN چه طور به معماری اول کنسول های نسل هشتمی PS4 و Xbox One بدل شد. آیا این معماری کیفیت لازم برای این مهم را داشت یا موارد دیگری در پس پرده است که ما بی خبریم!؟

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

نگاهی کوتاه به معماری GCN

Graphics Core Next یا به اختصار GCN نام رمزی است برای میکرو معماری واحد های پردازشی گرافیکی (Graphics Processing Unit Micro Architectures) که توسعه آن از سال ۲۰۱۱ توسط کمپانی AMD به عنوان جانشینی برای میکرو معماری TeraScale آغاز شده و تا زمان حال نیز ادامه دارد. GCN در تراشه های ۲۸ نانومتری همچون HD 7700-7900, HD 8000M, Rx 240-290 و سری Rx 300 استفاده شده است.

AMD The Future Is Fusion

همچنین در تراشه های گرافیک مجتمع AMD به نام «AMD Accelerated Processing Units» یا به اختصار APU نیز از نام های رمزی همچون «Temash»، «Kabini»، «Kaveri»، «Carrizo»، «Beema» و «Mullins» مورد استفاده قرار گرفته است. یکی از موارد مهم استفاده معماری GCN به کنسول های نسل هشتمی PS4 و Xbox One برمیگردد. جایی که AMD موفق شده از این معماری در تراشه هایی با اسم رمز «Liverpool» در PlayStation 4 و تراشه «Durango» در Xbox One مایکروسافت استفاده کند.

تراشه «Liverpool» استفاده شده در کنسول PlayStation 4 توان خام محاسباتی معادل ۱۸۴۳.۲ گیگافلاپس که با استفاده از یک رابط حافظه یا همان باس ۲۵۶ بیتی میتواند ۱۷۶ گیگابایت پهنای باند برای این کنسول فراهم کند. (توجه کنید منظور از کلمه کنسول، پهنای باند کلی موجود در PS4 است نه خود قاب پلاستیکی کنسول! ضمن اینکه این پهنای باند در تراشه به واسطه MMU ها با حافظه در ارتباط هستند و درواقع MMUتمام کارهای تراشه را انجام میدهند) این در حالی است که تراشه «Durango» موجود در Xbox One در خوش بینانه ترین حالت فقط میتواند ۶۸.۳ گیگابایت بر ثانیه پهنای باند برای این کنسول به همراه داشته باشد.

این یعنی اختلاف دو کنسول رقم قابل توجهی است. رم (Ram) قابل توجه ترین تفاوت هر دو کنسول است.  هر دو کنسول از ۸ گیگابایت حافظه GDDR5 برای خود استفاده میکنند که این مقدار روی PS4 برابر است با ۸ گیگابایت حافظه GDDR5 و برای Xbox One برابر است با ۸ گیگابایت حافظه GDDR3 که مایکروسافت برای جبران مشکل پهنای باند از ۳۲ مگابایت حافظه فوق سریع SRAM استفاده کرده است که در هر مسیر ۱۰۲ گیگابایت و مقدار پهنای باند کلی ای برابر با ۲۰۴ گیگابایت بر ثانیه را در اختیار Xbox One قرار میدهد.

به هر حال بحث ما مقایسه این دو کنسول نیست و فقط گوشه ای از معماری های GCN موجود در این دو کنسول را تشریح کردیم. اما به ودی چند مطلب خوب از این دو کنسول منتشر میکنیم. میکرو معماری GCN از معماری RISC SIMD به عنوان پایه طراحی خودش برای انجام محاسبات موازی و … بهره میبرد که جانشین میکرو معماری VLIW SIMD موجود در معماری گذشته TeraScale است.

معماری Liverpool PlayStation 4

معماری GCN در حال حاضر در سه نسل مختلف عرضه شده که شامل معماری GCN 1.0 (ایسلند جنوبی/Southern Islands، استفاده شده در HD 7000 و سری Rx 200)، نسل دوم GCN به نام GCN 1.1 (جزایر دریایی/Sea Islands، استفاده شده در HD 7790 و سری Rx 290/260) و در نهایت نسل سوم GCN به نام GCN 1.2 (استفاده شده در جزایر آتشفشانی/Volcanic Islands و R9 285) میشود.

تاریخچــه معماری GNC

ATI اولین شرکتی بود که اولین نسل Unified shader (سیستم سایه زنی یکپارچه) را در اولین پردازشگر گرافیکی مبتنی بر این تکنولوژی استفاده کرد و این GPU چیزی نبود جزء Xenos موجود در پردازشگر گرافیکی کنسول Xbox 360 که جزو برترین معماری های کنسولی چند نسل اخیر است. با اینکه از لحاظ توان محاسباتی از رقیب RSX خود در PS3 کمی ضعیف تر بود، اما به خاطر خروجی توان داده ها (Data throughput) پیشرفته نسل آینده شیدرها میشود گفت که از عملکرد به مراتب بهتری برخوردار بود.

در واقع Xenos کنسول X360 آنقدر خوب بود که ضعف های این کنسول در مقابل Cell قدرتمند PS3 را پوشاند تا این کنسول بتواند حدود ۷ سال در مقابل Cell های بسیار قدرتمند PS3 مقاوت کند. طراحی اولین نسل unfied shader ها بر اساس معماری VLIW بود. البته نه به شکل پردازند های جریانی (Stream processor) فعلی که در کارت های امروزی AMD موجود است.

در واقع هر پردازنده سایه زن (shader processor) همانند یک SIMD یا یک بسته پردازنده جریانی (Stream processor) متشکل از ۵ پردازنده سایه زن عمل میکرد و در هر سیکل زمانی میتوانست ۱۰ عمل متفاوت را انجام دهد. اما دومین نسل unified shader ها که در واقع اولین نسل از تراشه های قدرتمند سیستم های رومیزی (PC) هم محسوب میشوند در سری R600 به کار رفتند که در واقع همان نسل HD2000 برند ATI محسوب میشوند.

معماری-تاهیتی

درست همین زمان بود که انویدیا اولین نسل از Unified shader های خودش را معرفی کرد که با اختلاف بسیار زیادی به نسبت HD ۲۹۰۰ از عملکرد بهتری برخوردار بود و باعث شد انویدیا تقریبا تا ۲.۵ نسل درجا بزند، چون اختلاف این دو معماری به حدی شدید بود که AMD تا نسل R700 که یک طراحی فوق العاده داشت، هنوز نتوانسته بود پاسخ قدرت بی چون و چرای کارت گرافیک ۸۸۰۰GTX را بدهد.

کمپانی AMD در طراحی Stream processor ها یا همون SIMD های نسل ۴۰۰۰ بسیار بهتر عمل کرد و VLIW 5 به خوبی تونست انویدیا رو به چالش بکشد، اما هنوز فاصله زیادی بین دو معماری بود. این مورد تا همین اواخیر که AMD/ATI از معماری معروف به «جزایر شمالی» استفاده میکرد وجود داشت. البته تغییرات زیاد و بهنیگی در عملکرد SIMD ها باعث شد که AMD بتواند در دقت مضاف (Double precision) و پیاده سازی اندک متد TLP برای اولین بار موفق شود و عملکرد GPU های خودش را به شدت بهبود بخشد.

از آن زمان به بعد شاهد نسل جدیدی از تراشه های (GPUs) گرافیکی AMD بودیم که دیگر کمتر برای پردازش موازی کاملا مطلق استفاده میشدند. در واقع AMD حرکت به سمت طراحی پردازشگرها برای محسابات (Compute) را آغاز کرده بود. شعار این شرکت هم مشخص بود؛ «The Future Is Fusion» شعاری بود برای حرکت به سمت ترکیب پردازنده و تراشه گرافیکی.

تراشه گرافیکی PlayStation 4 و Xbox One

نسل اول پردازنده های Fusion هنوزم هم موجود است. پردازنده هایی که در ابتدای راه بودند و قدرت لازم برای همکاری در پردازش GPU و ترکیب آن با قدرت کنترلی CPU را نداشتند و نمیتوانستند به طور کامل با یکدیگر ارتباط داشته باشند و تنها ارتباط آنها و از طریق یک NB (پل شمالی) انجام میشد که به صورت SOC در پردازنده وجود داشت. هنوز خیلی زود است که به این ترکیب APU بگوییم و بهترین جمله برای صدا زدن آن System on chip است که بهترین معنا را دارد.

در واقع AMD در نسل حاضر علاوه بر سرمایه گذاری گسترده در محاسبات COMPUTE برای تراشه های نسل بعدیش، بر روی نسل آینده APU ها نیز سرمایه گذرای کرده است. بدین معنا که توسعه دهندگان بازی بتوانند علاوه بر بهره گیری از توان بالای قدرت پردازش گرافیکی GPU ها، از توان محاسباتی بسیار بالای آنها برای عملیات های محاسباتی استفاده کنند.

در واقع به صورت تئوری توان محاسباتی یک GPU میتواند تا بیش از ۲۰۰ برابر یک CPU هم باشد و قصد AMD از به کار گیری این توان محاسباتی در محاسبات مربوط CPU این است که بتواند از توان کنترلی CPU برای برنامه ریزی وظایف (Task) ها برای ارسال داده ها به واحد های پردازشی GPU برای سرعت بخشیدن به عملیات پردازشی استفاده کند.

مقایسه PS4 و Xbox One با کارت های هم رده خود

 HD 7870HD 7790PS4Xbox One
لیتوگرافی۲۸ نانومتری۲۸ نانومتری۲۸ ۲۸ نانومتری۲۸ نانومتری
کارت معادلHD 7870HD 7790
معماری Pitcairn
BonaireLiverpool
(همان Pitcairn)
Durango
(همان Bonaire)
ترانزیستور۲,۸۰۰ میلیون۲,۰۸۰ میلیوننامشخص۵,۰۰۰ میلیون
حافظه ویدئویی۲۰۴۸ مگابایت
GDDR5
۱۰۲۴ مگابایت
GDDR5
۸۱۹۲ مگابایت
GDDR5
۸۱۹۲ مگابایت
GDDR3
رابط حافظه (Bus)۲۵۶ بیت۱۲۸ بیت۲۵۶ بیت۲۵۶ بیت
پهنای باند حافظه۱۵۴ گیگابایت۹۶ گیگابایت۱۷۶ گیگابایت۶۸ گیگابایت
سرعت کلاک هسته۱۰۰۰ مگاهرتز۱۰۰۰ مگاهرتز۸۰۰ مگاهرتز۸۵۳ مگاهرتز
سرعت کلاک حافظه۱۲۰۰ مگاهرتز۱۵۰۰ مگاهرتز۱۳۷۵ مگاهرتز۱۰۶۶ مگاهرتز
پردازنده سایه زن
(Shading Units)
۱۲۸۰۸۹۶۱۱۵۲۷۶۸
TMUs۸۰۵۶۷۲۴۸
ROPs۳۲۱۶۳۲۱۶
Compute Units۲۰۱۴۱۸۱۲
Pixel Rate۳۲.۰ GPixel/s۱۶.۰ GPixel/s۲۵.۶ GPixel/s۱۳.۶ GPixel/s
Texture Rate۸۰.۰ GTexel/s۵۶.۰ GTexel/s۵۷.۶ GTexel/s۴۰.۹ GTexel/s
Floating-point۲,۵۶۰ GFLOPS۱,۷۹۲ GFLOPS۱,۸۴۳ GFLOPS۱,۳۱۰ GFLOPS
DirectX۱۲.۰۱۲فعال نیست۱۲
OpenGL۴.۴۴.۴۴.۴۴.۴
OpenCL۱.۲۱.۲۱.۲۱.۲
Shader Model۵.۰۵.۰۵.۰۵.۰
وضوح تصویرحداکثر ۱۹۲۰x1080حداکثر ۱۶۸۰x1050حداکثر ۱۹۲۰x1080حداکثر ۹۰۰P
قیمت۲۱۰ لار۳۱۰ دلار۵۵۰ دلار۴۵۰ دلار

AMD به این نتیجه رسیده که معماری قدیمی VLIW 5 برای این کار مناب نیست و نیاز به معماری جدیدی است تا از پس از وظایف برآید. نتیجه آن که معماری جدیدی تحت نام GCN که اختصار Graphic core next معرفی شد که در ادامه به بررسی زوایای آن میپردازیم.

نگاه نزدیک به معماری GCN کمپانی AMD

همانطور که گفتیم، GCN نام معماری نسل آاینده پردازشگر های گرافیکی AMD هست که برای دو منظور پردازش های گرافیکی و محاسبات طراحی شده است. در واقع این معماری آینده APU ها است و به طور دقیق برای پردازش های گرافیکی طراحی نشده به همین دلیل میتوان گفت که در زمینه پردازش های گرافیکی نمیتواند به طور کامل با تراشه های گرافیکی نسل کپلر (Kepler)، فرمی (Fermi) و ماکسول (Maxwell) مقایسه شود.

طی کنفراس AFDS 2011 (که معادل  GTC انویدیا و IDF اینتل است) AMD اعلام کرد که در نسل آینده APU ها معماری بولدوزر نیمه اول بوده و GCN نیمه دوم APU است و این در کنار هم میتوانند قدرت بسیار بالاییدر پردازش داده های گرافیکی داشته باشند و به راحتی تراشه های انوییدا/اینتل را به چالش بکشند. اما بیاید ببینیم VLIW چیه که AMD از اون در نسل فعلی و گذشته تراشه های خودش استفاده میکند.

معماری VLIW در نسل جدید و قریم تراشه های AMD

بنیادی ترین واحد پردازشی مستقل نسل فعلی و قبلی تراشه های تولید شده توسط کمپانی AMD را میتوان پردازنده های جریانی (Stream processor) دانست که در حال حاضر به آن SIMD هم گفته میشود و در گذشته هم به اسم Stream processor Unit یا به اختصار SPU معروف بود.

هر SPU (اگر به خاطر داشته باشید در کنسول PS3 ومعماری شاهکار Cell حدود ۸ واحد SPU وجود داشت که این پردازنده را به یک هیولای بی نظیر بدل کرده بود) خود متشکل از چند واحد پردازشی و منطقی ALU است که پردازنده سایه زن هم (Shader processor) خواند هم خوانده میشوند. این واحد ها در نسل جدید و قدیم بر اساس معماری VLIW 5 در گذشته یا VLIW 4 در نسل جدید مورد استفاده قرار گرفتند.

(نکته اینکه AMD اسم اصلی هر ALU را Radeon core گذاشته است. اما چون کمتر استفاده میشود به پردازنده سایه زن (Shader processor) معروف است). همانطور که اشاره کردیم، پردازنده های Radeon core میتواند بر اساس معماری VLIW 5 همانند شکل زیر در SIMD یا SPU قرار بگیرند:

معماری VLIW 5

یا اینکه میتوانند بر اساس معماری VLIW 4 استفاده شده در کارت گرافیک ۶۹۰۰ در قالب Streaming Processing Unit ها به صورت زیر قرار بگیرند:

معماری VLIW 4

برای درک بهتر از هر دو دیاگرام هم میتوانید نحوه قرار گرفتن SPU ها را در تصویر زیر ببینید:

دیاگرام معماری VLIW 4 و معماری VLIW 5

یکی از دلایل طراحی و اجرای معماری VLIW برتری در اجرا و پردازش بیشتر تعداد زیادی عملیات و وظایف مختلف (Tasks) در یک حالت موازی است که به Wavefront معروف شده بودند. هر Wavefront شامل یک گروه ۶۴ تایی از پیکسل ها و مقادیر pixels/values همزاه با دستور العمل هایی است  که باید روی پیکسل ها و مقادیر آنها اجرا شود. در واقع روی هر Pipeline یک wavefront مشتکل از ۴-۵ واحد دستور العمل مختلف انجام میشود تا پردازنده های Radeon core یا همان ALU ها بتوانند دستورالعمل های سنگین را پردازش کنند.

به طور مثال در حالت تئوری میتوان گفت که کارت گرافیک HD5870 در حالت سینکل پریسیشن (Single precision) میتواند تا ۲.۷۲ ترافلاپس  توان خام محساباتی و در دقت مضاعف (double precision) هم میتواند تا ۵.۴۵ ترافلاپس توان خام محساباتی را پردازش کند. این در صورتی است که GTX 480 در حالت دقت مضاعف (Double precision) تقریبا کمتر از ۱.۳ ترافلاپس توان خام محساباتی دارد که بسیار کمتر از قدرت پردازشی خام کارت گرافیک HD5870 است.

نکته: کلمه Single precision معنای دقیقی در فارسی ندارد. میزان دقت حافظه و ریجستر از عدد صفر به بالا است. یعنی دقتی بسیار بالا که این دقت برای  ۳۲ بیت اعشار چیزی معادل ١.٠٩٨٧۶۵۴٣٧۴ است. Single precision به معنای پردازش ۳۲ بیتی است و Double precision به معنای پردازش مقدار ریجستر ۶۴ بیتی است که مبنای محاسبات مکان هندسی یک vertex است. تصویر زیر مربوط به Single precision تحت استاندارد IEEE 754 است.

single-precision-IEEE-754

اما میزان این دقت برای ۶۴ بیت بسیار بسیار بالاست و رقمی معادل ۱.۸۵۷۸۴۶۸۴۷۵۸۵۹۲۰۳۶۴۶۵۸۴۹۳۰۰۳۸۴۶۵۵۴۷۳۰۲۷۶۴ است. این یعنی حجم ذخیره سازی عدد بسیار بسیار بیشتر میشود و قدرت محاسبات در حالت دقت مضاعف یا همان محاسبات اعشاری در حالت Double precision بسیار بیشتر از مقدار Single precision یا محاسبات اعشاری با دقت واحد است. این دو جمله «Single precision و Double precision به معنای حجم ذخیره سازی اعداد است که در زمینه های مهندسی و علوم کاربردی استفاده میشوند.

جایی که محاسبات بسیار بسیار مهم باشد از Double precision یا ۶۴ بیت استفاده میکنند که بسیار بزرگتر و دقیق تر از مقدار محاسبات اعشاری عدد صحیح Single precision است و در اینگونه  محاسبات معمولا  stageهای EU Pipline ها نیز قطورتر است. البته محسابات ۱۶ بیت هم داریم که بسیار بدرد بخور است و معمولا از آن در پردازش هوش مصنوعی استفاده میشود. تصویر زیر مربوط به محاسبات ۶۴ بیتی IEEE 754 float است.

64bit-IEEE-754-float

اینجا این سوال پیش می آید که چه عاملی سبب شده این همه هدر رفت توان پردازشی در کارت HD5870 وجود داشته باشد؟! برای رسیدن به جواب ادامه مطلب را مطالعه کنید

همانطور که در بالا اشاره کردیم، در معماری vliw 5 تنها در صورتی قابلیت پردازش نهایی به حداکثر توان خود میرسد که هر ۵ دستور العمل موجود در پردازنده های Radeon core یا همان ALU ها بتوانند به صورت غیر وابسته یا Non-Interdependent در کنار هم قرار بگیرند و استفاده شوند. امادر واقعیت این اتفاق نمی افتد و چون اکثر دستور العمل ها به دستورالعمل دیگری وابسته هستند نمیتوان از همه Radeon core به صورت همزمان استفاده کرد.

نمایش Radeon core های معماری vliw 5

برای درک بهتر به تصویر بالا نگاه کنید. همانطور که میبینید یک رشته دستورالعمل وجود دارد که به صورت پشته در یک ثبات ذخیره شدند. بدین معنا که آخرین دستور العمل ها اولین دستور العمل های اجرایی هستند. در تصویر بالا یک عدد پردازنده جریانی (Stream processor) میبینید که بر مبنای معماری vliw 5 طراحی شده و از ۵ عدد پردازنده Radeon core یا همان دستورات منطقی ALU استفاده میکند.

نکته: پردازده های جریانی یا همان stream processor ها در واقع همان cuda core های موجود در کارت های انویدیا است که از نظر شکل، محتوا و نوع طراحی با stream processor های موجود در کارت های AMD تفاوتی ندارند. تمامی آنها تحت استاندارد IEEE 754 یا همان IEEE floating point تولید میشوند و نکتنه بسیار مهم این هسته ها نحوه به کارگیری آنها است که تراشه اصلی را شکل میدهد.

این هسته ها نقش اجرایی در تراشه دارند و مهم شکل چیدمان و نحوه به کار گیری آن ها روی تراشه است که قدرت تراشه را مشخص میکند. وگرنه خود هسته ها تحت استاندارد IEEE floating point تولید میشوند و تفاوتی باهم ندارند.

در پشته ما ۵ دستور العمل غیر وابسته به هم نوع را میبینیم که همزمان در داخل ۵ عدد Radeon core پردازش میشوند. اما در مرحله بعد ما یک دستورالعمل زرد رنگ را میبینم که وابسته است. یعنی نمیتواند همزمان با دستورالعمل های دیگر پردازش شود و به همین خاطر ۴ عدد از دستورات منطقی ALU یا همان پردازنده های Radeon core بیکار هستند. این عمل ادامه پیدا میکند تا به ۲ دستور العمل غیر وابسته هم نوع قرمز رنگ میرسد، یعنی ۲ واحد ALU در اینجا مشغول به پردازش میوشند و ۳ واحد آنها بیکارند.

در مرحله بعدی هم باز یکی کم میشود و باز به سبز رنگ ۲ تایی غیر وابسته میرسد. بدین معنا که همزمان ۲ رشته پردازش میشوند تا باز به ۴ دستور العمل غیر وابسته هم نوع برسند. این یعنی اینکه ۴ واحد ALU مشغول به کار میوشند و تنها ۱ عدد از این واحدها بکیار میماند.

Unified-virtual-memory

اما نتیجه گیری این بخش این است که:

تنها در صورتی میتوان از تمام قدرت پردازشی SPU ها که شامل ۵ هسته Radeon core (بخوانید واحد های پردازش منطقی یا ALU) استفاده کرد که همه رشته های پردازشی به صورت زیر باشند:

  • ۱: اولا رشته های پردازشی (Threads) به صورت دستورالعمل های ۵ تایی هم نوع باشند و به صورت متداول تکرار شوند. (یعنی ۵ تا ۵ تا با هم پردازش شوند).
  • ۲: دوما همه دستورالعمل های ۵ تایی غیر وابسته باشند. (منظور از غیر وابسته بودن این است که انجام دستور العمل ها نیاز به اجرای دستورالعمل دیگری پیش از آن نداشته باشد). برای مثال به حاصل عبارت زیر توجه کنید:

۱. e = a + b
۲. f = c + d
۳. g = e * f

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

در دنیای واقعی پردازش بسیاری از دستورالعمل ها به صورت وابسته و غیر هم نوع هستند.(مثلا ۳۲ بیتی یا ۲۴ بیتی عدد صحیح و  حتی پردازش ۶۴ بیتی). در واقع میتوان اینطور گفت که در معماری های AMD مقدار بسیار زیادی از توان محاسباتی SPU ها در مقایسه با معماری های انویدیا هدر رفت دارند و به درستی پردازش نمیشوند.

به همین علت در پردازش های GPGPU میبینید که هسته های کودا انویدیا بسیار بسیار موفق تر از معادل AMD خود عمل میکنند و این موضوع را متوانید به خوبی در کارت های گرافیک سری Quadro انویدیا ببینید. نکته اینجاست که AMD پس از برسی داد های فعلی متوجه شد که داده های بهینه موجود به صورت دستورالعمل های هم نوع و غیر وابسته، بعد از نسل DX9 کمتر و کمتر میشوند.

Unified-virtual-memory

 بنابر این پس از تحقیقات گسترده در زمینه معماری تراشه های خود به این نتیجه رسید که بهتر است vliw shrink را اعمال کند و با اعمال vliw shrink بود که نسل جدیدی از معماری VLIW به نام  VLIW 4 ایجاد شد. معماری VLIW 4 در محسابات دقت مضاعف (double precision) بهتر از بهتر از VLIW 5 عمل بود.

بدین معنا که واحدهای SPU  موجود در VLIW 5 عملا قادر به اجرای محسابات دقت مضاعف (double precision) به صورت ۶۴ بیتی نبودند. بنابراین تعداد زیاد SPU هایی که در ۶۹۰۰ وجود دارد با عث شده این کارت از لحاظ توان خام محاسباتی به ۶۷۲ ترافلاپس توان خام دقت مضاعف (double precision) در مقابل ۵۴۵ ترافلاپس توان خام دقت مضاعف (double precision) موجود در ۵۸۰۰ برسد.

نکته مهم دیگر در VLIW 4 عرض کمتر آن به نسبت VLIW 5 است که احتمال هدر رفتن توان SPU ها یا همان SIMD های موجود معماری را کاهش میدهد و این به معنای افزایش توان خام محساباتی است.

در بخش دوم، به تشریح و برسری جزئیات معماری GCN پرداختیم که با کلیک روی لینک فوق میتوانید آن را ببینید. 
راي شما
1 Star2 Stars3 Stars4 Stars5 Stars6 Stars7 Stars8 Stars9 Stars10 Stars
Loading...
  1. رضا says:

    چرا amd بهتر عمل میکنه رویdx12؟خب اگه انویدیا بهینه نیست amd هم بهینه نیست.
    میتونیم تو این زمینه amd رو بهتر دونست؟
    به آخرش کاری ندارم فعلا همینی که هست رو اگه مورد بررسی قرار بدیم نتیجه چی میشه؟

  2. مرتضی هیتلر says:

    آقا معماری gcn از چه سطحی از Async Compute پشتیبانی میکنه؟!

  3. روزبه says:

    بسیار عالیییییییییییییییییییی. با اینکه سنگین بود، ولی خیلی خوب بود. چیزای خوبی فهمیدم

  4. mortezaall says:

    من کلا انویدیا رو ترجیح میدم…دردسرهاش زیاد نیست…درایورهاش به فاجعه باری ای ام دی نیست…

    آکانتم همینه mortezaall@

  5. mortezaall says:

    درسته هم گرون فروشه هم ساپورت خوبی نداره اما آپدیت هاش و مخلفاتش بهتر هست…

    ازgtx 980ti و gtx 960 هم نمیشه گذشت…

    • حسین
      Hossein says:

      درسته. منم قبول دارم. انویدیا کلا زمانبندی و سازماندهی دستورالعمل هارو به دوبخش تقسیم کرده، اکثر بخش ها نرم افزاری و بر پایه درایور هستن و باقی هم در داخل تراشه و به صورت سخت افزاری. اما amd مثل معماری fermi انویدیا اکثر بخش هارو یعنی تقریبا همه بخش های سازماندهی wave front هارو داخل تراشه و به صورت سخت افزاری قرار داده. انویدیا از زمان کپلر به بعد بخشی رو به درایور و پردازنده سپرده که دلایل تکنیکی داره. میشه گفت از لحاظ ساپورت فیچر های dx12 هیچ کدوم حتی نزدیک اینتل هم نیستن. البته فیچر لول های DX12.1 که یکیش میشه VXGI موجود در Quantum Break رو فکر کنم پشتیبانی نمیکنه!

      مثلا اینو ببینید: البته تایید شده نیست:» http://www.upload.overclockingheroes.com/upload/avf3_sv2.jpg

      در تست خام async compute ای که یکی از کاربرای beyond درست کرده نتایجی که گرفتن جالبه! کارت hd7950 با ٢ تا async compute از furyx هم سرعتر انجام میداده و گام های افزایش سربارش کمتر بودن! انویدیا هم که خیلی خیلی سریعتر از amd بوده در ابتدای کار و با اضافه شدن سربار گام هاش اضافه میشده مثل amd اما باشدت بیشتر که باید با تریک های نرم افزاری درستش کنن. Amd و nvidia هرکدمشون ازیک چیزایی پشتیبانی میکنن که یکی دیگه نمیکنه. اما فیچر لول ١ خودش ٨ تا دیگه داه که اونا پشتیبانی نمیکنن.

      اینتل ۶ تای اضافی پشتیبانی میکنه. یعنی میشه گفت سرعت انویدیا توی داده های سری بر اساس معماریشه. چون تعداد هسته های AMD بیشتره لزوما نمیشه گفت قدرتش بیشتره. هر کدوم در جای خودشون برتری خودشونو دارن. ستدیو امسیاد دیتاهاش رو برای gcn بهینه کرده و اینو خود AMD گفته. یعنی مثلا گام های ۶۴ تایی. شما تست star swarm رو هم در نظر بگیر که انویدیا ٢ برابر سریعتره. اون بازی هم هست که فعلا به خاطر سر صدای oxide و amd روش بحث نشده. نکته دیگه ای هم هست، اونم اینه که انویدیا با dx11 توی همین بازی از AMD در dx12 سریعترهو خود اکساید هم گفته انیویدیا تمرکزش روی dx11 بوده.

      http://www.extremetech.com/wp-content/uploads/2015/08/DX11-High.png
      http://www.extremetech.com/wp-content/uploads/2015/08/DX12-High.png

      بستگی داره شرکت ها بار پردازشی رو چجوری تقسیم کنن و داده های ارسالی async رو چجوری برنامه ریزی کنن. انویدیا کار سختی برای بهینه سازی این بازی داره چون احتمالا دیتا ها ادرس دهی های ۶۴ تایی دارن و amd favor ان و نتیجه میتونه اینجوری هم باشه! http://images.anandtech.com/graphs/graph8962/71450.png

      و البته اینکه انویدیا میتونه رفتار سخت افزارشو بهتر تغییر بده چون نرم افزاری هست. حالا بازی های dx12 بیشتری میان ببنیم انویدیا به جای کاهش کارایی افزایش کارایی پیدا میکنه یا نه

  6. mortezaall says:

    آنالیز df. رو خوندم …خب مثل اینکه اکس باکس وان کلا سورپرایز کرده…اون ترفند هم عقب انداختن تاریخ ریلیز برای بیشتر کار کردن رو اکس باکس بوده…

  7. mortezaall says:

    دوست دارم بینشون دعوا بشه…این جالبه که oxide رک اومده گفته انویدیا خواسته ACE تو بنچمارک خاموش باشه … ج

    • حسین
      Hossein says:

      انویدیا از قدیم هم یه شرکت طماع و دروغ گو بوده! پیشنهاد میکنم نگاهی به لینک زیر بندازید:

      گزارش و تحلیل | بزرگترین اشتباه AMD در جنگ با انویدیا کجا بود!؟

      انویدیا خیلی شرکت مشتری مداری نیست@ مثلا کارت جدید GTX 950 و رو با اگر اشتباه نکنم ضعیف ترین کارت R9 یعنی R9 370 مقایسه کنید، R9 370 کم کمش دو برابر امکانات و قدرت بیشتر داره و قیمتش فقط ۳۰-۴۰ دلار بیشتره! در صورتی که کارت GTX 950 فکر کنم ۱۵۰ دلاره، در حالی که قیمتش به اندازه کارایی و امکاناتی که داره نیست! یعنی ۴۰ دلارم نمی ارزه! به شخصه هیچ وقت سمت محصولات انویدیا پول خوار نرفتم و نخواهم رفت.

Ramin-Cybran

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

آخرین نقد و بررسی ها
بررسی کارت گرافیک ASUS ROG STRIX GTX 1060 OC 6GB

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

تاريخ بررسي: ۱۹ مرداد, ۹۶
بررسی کارت گرافیک 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

بررسی کارت گرافیک GeForce GTX 1080 Ti Founders Edition

بررسی کارت گرافیک GeForce GTX 1080 Ti Founders Edition

۲۷ اسفند, ۹۵

9.3

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

×

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

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

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

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

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