بررسی معماری کارت گرافیک GTX 1080

GeForce GTX 1080 به عنوان اولین کارت گرافیک سری ۱۰۰۰ انویدیا از ۴ خوشه پردازشی «GPC» استفاده میکند که هر کدامیک ا ۵ واحد SM با ظرفیت ۱۲۸ هسته پردازشی کودا «CUDA» استفاده میکنند و در مجموع این مقدار رقمی معادل ۲۵۶۰ هسته کودا را شکل میدهد. این کارت گرافیک غول پیکر از دومین تراشه بزرگ معماری پاسکال «Pascal» به نام GP104 استفاده میکند که پیش از این در مقاله مفصل «با دو تراشه گرافیکی Tesla P100 و Pascal GP100 آشنا شوید» در موردش صحبت کردیم.

سیلیکون GP104 نوعی مدل ارتقا یافته و البته محدود از سیلیکون GM204 است که در دو کارت نسل قبل «GTX 980 و GTX 970» مورد استفاده قرار گرفته و از مساحت ویفری «Die» معادل ۳۱۴ میلیمتر مربع استفاده میکند. این مقدار در سیلیکون GM204 معادل ۳۹۸ میلیمتر مربع است و بدین معناست که GP104 با وجود کوچک تر شدن سطح ویفر سبز رنگش، از بهره وری انرژی بهتری استفاده میکند. روی این سیلیکون ۷.۲ بیلیون ترانزیستور نصب شده و برای مقایسه بد نیست بدانید که همین مقدار روی سیلیکون GM204 فقط معادل ۵.۲ بیلیون ترانزیستور است!

اما؛ قویترین و بزرگترین تراشه معماری پاسکال «Pascal» سیلیکون GP100 است که برای پردازش ابر کامپیوتر Tesla P100 HPC مورد استفاده قرار گرفته است. بنابراین، معماری پاسکال «Pascal» دارای دو مدل سیلیکون است که یکی از آنها کامل است (یعنی تمام واحد های SM آن فعال است) و دیگری که قرار است در کامپیوترهای خانگی مورد استفاده قرار بگیرد محدود است (یعنی نیمی از واحد های SM آن فعال است).

بلوک دیاگرام نهایی معماری کارت گرافیک GeForce GTX 1080

بلوک دیاگرام نهایی معماری کارت گرافیک GeForce GTX 1080

لازم به ذکر است سیلیکون GF100 انویدیا نیز از ۵۱۲ پردازنده جریانی «Stream Processors» استفاده میکند که کمپانی انویدیا آنها را هسته های کودا «CUDA Cores» مینامد. این هسته ها در ۳۲ بلوک مجزا از هم قرار گرفتند که پردازنده چند جریانی «Streaming Multiprocessor» گفته میشوند. بنابراین سیلیکون GP100 معماری پاسکال «Pascal» از چهار بلوک Streaming Multiprocessor یا «SM» مخصوص به خودش استفاده میکند که هر کدام یک از این بلوک ها دارای خوشه های پردازشی «Graphics Processing Cluster» مساوی یا همان کلاسترهای سبز رنگ مخصوص به خودشان میباشند.

به طور خلاصه؛ هر سیلیکون از یک دیاگرام کلی (مثل تصویر زیر) تشکیل شده که شامل پردازنده جریانی «Stream Processors» است و هر پردازنده جریانی در واحد یا بلوک هایی به نام Streaming Multiprocessor یا «SM» قرار گرفتند و هر SM نیز درون واحد بزرگتری جای گرفته که به طور خلاصه GPC یا خوشه های پردازشی «Graphics Processing Cluster» و  یا به عبارتی ساده تر همان کلاسترهای سبز رنگ نامیده میشوند که بارها در معماری های مختلف مشاهده کرده اید.

از معماری فرمی «Fermi» به بعد، انویدیا پردازنده های جریانی «Streaming Multiprocessor» یا SM های خودش را با افزودن منابع اختصاصی اضافی بیشتر کرده و از طرف دیگر هم منابع پردازشی درون خوشه های پردازشی «کلاستر یا موتور GPC» خودش را کاهش داده که نتیجه آن افزایش بی نظیر بهره وری کارت گرافیک GeForce GTX 1080 در مقابل کارت های کارت های نسل قبل مبتنی بر نسل دوم معماری ماکسول «Maxwell» است. اما همین روند نیز دقیقاً با سیلکیون های مبتنی بر معماری پاسکال «Pascal» دنبال شده است.

واحدهای اجرایی به نام PolyMorph Engine و Raster Engine

واحدهای اجراییPolyMorph Engine و Raster Engine و توزیع کردن کارها میان خوشه‌های پردازشگر گرافیک (GPC)

سیلیکون GM204 همچون سیلیکون نسل قبلی GP104 از ۴ موتور GPC استفاده میکند و زیر رابط های فوق تخصصی به کار رفته در تراشه گرافیکی «GPU» این کارت با اسلات PCI-Express 3.0 x16 به اشتراک گذاشته شده که میتواند پهنای باند وسیعی را برای این کارت فراهم کند. همانطور که انتظار میرفت؛ کارت گرافیک GeForce GTX 1070 از ۸ گیگابیت حافظه GDDR5 در عوض ۱۰ گیگابیت حافظه GDDR5X به کار رفته در GeForce GTX 1080 استفاده کند. گفته میشد که احتمالاً از ۷ گیگابایت ویدئویی در GTX 1070 استفاده شود و این مورد با وجود استفاده از کنترلرهایی که از هر دو حافظه GDDR5X و GDDR5 پشتیبانی میکنند بعید به نظر نمیرسد.

از طرفی؛ گذرگاه حافظه ۲۵۶ بیتی و فناوری GDDR5X به کار رفته در هر دو کارت از ۸ واحد کنترلر حافظه استفاده میکنند. در کل؛ عملیات توزیع کردن کارها میان خوشه‌های پردازشگر گرافیک «GPC» توسط موتور GigaThread Engine انجام میشود که از ۲ مگابایت حافظه کش پر سرعت مشترک بین تمام GPC ها استفاده میکند. GigaThread Engine نوعی عملگر ثابت سخت افزاری است که انویدیا آنها را نوعی مکانیزم زمانبندی «Scheduler» نامیده و سیستم بسیار مهمی است که در قبلاً در مقاله  «از کپلر تا ماکسول | بررسی تخصصی مبحث زمان بندی در معماری های انویدیا» به طور مفصل در موردش صحبت کردیم.

در مورد عملگرها باید اشاره کنیم که دو مورد از مهمترین آنها واحدهای اجرایی به نام PolyMorph Engine و Raster Engine هستند. PolyMorph Engine در واقع یک موتور پردازش گرافیکی است که از پنج بخش مهم Vertex Fetch، Tessellation، Iewport Transform، Attribute Setup و Stream Output تشکیل شده است. کار این بخش ها بدین صورت است که پس از پردازش اولیه تصاویر گرافیکی، نتیجه نهایی هر بخش به یک Streaming Multi Processor فرستاده میشود.

طراحی عالی معماری کارت گرافیک GTX 1080 برای افزایش سرعت

طراحی عالی معماری کارت گرافیک GTX 1080 برای افزایش سرعت

اما اگر پردازش اولیه تصاویر گرافیکی به این بخش نرود، در بخش دیگری به نام Shader Program اجرا میشوند و سپس برای پردازش جلوه های گرافیکی به سایر بخش های PolyMorph Engine فرستاده میشوند. پس از پایان پردازش های لازم روی جلوه های ویژه گرافیکی، نتایج به Raster Engine ها فرستاده میشود. برای مقایسه بد نیست بدانید که در معماری GM204 هر دیاگرام SMM دارای یک موتور پردازش جلوه های گرافیکی بود و تعداد پردازند های جرانی «Streaming Multi Processor» های موجود در GM204 به نسبت سیلیکون های معماری GK104 به دو برابر افزایش یافته که نتیجه آن افزایش سرعت موتور PolyMorph Engine در پردازش سریعتر جلوه های گرافیکی است.

اما؛ نسخه سوم این موتور افزایش دو برابری سرعت پردازش های سنگین هندسی «Geometry» و افزایش سه برابری پردازش قابلیت های فناوری Tessellation را به همراه آورده است. موتور PolyMorph Engine در سیلیکون GP100 وظیفه ی رسیدگی به کارهای هندسی «Geometry» را بر عهده دارد. در واقع همانطور که در بالا هم عرض کردیم، رسیدگی به تسلیشن «Tessellation»، موزاییک کاری «Vertex Fetch»، تکنیک Attribute Setup، تکنیک Viewport Transform و Stream Output یا همان جریان های خروجی بر عهده PolyMorph Engine است.

در معماری پاسکال «Pascal» هر SM از یک PolyMorph Engine استفاده میکند. بدین معنا که در مجموع هر سیلیکون GP100 از ۱۶ واحد PolyMorph Engine استفاده میکند. تمامی این امور قبلاً توسط خط لوله ها «Pipeline» انجام میشد و حالا به دلایل نا مشخصی انویدیا تصمیم گرفته واحد جداگانه ای برای آنها در نظر بگیرد و در هر چیپ از ۱۶ واحد آنها به صورت یکجا استفاده کند. اما Raster Engine برای کارهایی همچون تنظیم لبه ها «Edge Setup»، بازتاب تصاویر «Rasterization» و Z-Culling مورد استفاده قرار میگیرد.

مقایسه پهنای باند GTX 1080 و GTX 980

مقایسه پهنای باند کارت گرافیک GTX 1080 و کارت گرافیک GTX 980

تمامی این کارها پیش از این توسط خط لوله ها «Pipeline» انجام میشد و حالا واحدی مجزا برای این پردازش ها در نظر گرفته شده است. بنابراین هر GPC یا خوشه پردازشی در معماری پاسکال «Pascal» از ۱ واحد Raster Engine استفاده میکند که در مجموع ۴ واحد Raster Engine در هر ویفر «Die» میشود. این واحد ز زمان GT200 تغییرات کمی داشته که بیشتر به تغییرات محل قرار گیری آن بر میگردد. Raster Engine های معماری پاسکال «Pascal» در هر کلاک می توانید ۸ پیکسل را پردازش کنند که در مجموع میتوان گفت که هر سیلیکون GF100 میتواند ۳۲ پیکسل را در یک کلاک پردازش کند که قدرت پردازشی بسیار بالایی است.

Raster Engine قابلیت بسیار مهمی است و اولین شرکت بازیسازی که به سمت پردازش Classic Raster Grahgics «تصویر سازی گرافیک به صورت کلاسیک یا گرافیک شطرنجی» حر کت کرده، استدیو id Software است که از این ویژگی در بازی Doom 2016 استفاده کرده است. در واقع این قابلیت مهم در بازی برای ایجاد ساختار گرافیکی هر عکس به صورت فرمت «BitMap» است که هر نقطه در این روش، نماینده یک شبکه گسترده از پیکسل ها است.

از منظر مقایسه مشود که گفت که در معماری پاسکال «Pascal» با دو سیلیکون GP100 و GF100 به نسبت GT200 تا ۸ برابر افزایش عملکرد در کارایی هندسی را شاهدیم و تنها دلیل افزایش بی حد و مرز توان پردازش هندسی در سری ۱۰۰ انویدیا را میتوان استفاده مناسب از تسلیشن «Tessellation» و تکنیک هی قدرتمند Displacement Mapping ها برای خلق کاراکترها و اشیای پیچیده دانست. بنابراین با این زاویه نگاه میتوان وجود ۱۶ واحد PolyMorph Engine و ۴ واحد Raster Engine در یک سیلیکون را توجیه کرد. این استراتژی میتواند موجب عملکرد بهتر کارت های این سری شود و انویدیا هم مدعی شده بالاترین بهره وری ممکن را خواهیم دید.

تکنیک جدیدی به نام «Preemption» یا «Dynamic Load Balancing»

تکنیک جدید «Preemption» یا «Dynamic Load Balancing»

البته شاید تکیه بر افزایش بیش از حد این واحدها بی ارتباط با موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines» نباشد! موتوری که انویدیا اعلام کرده به طور کامل از آن پشتیبانی میکند و این مهم از طریق تکنیک جدیدی به نام «Preemption» یا «Dynamic Load Balancing» در سطح کاملا ارتقاء یافته انجام میشود. هدف Preemption دقیقاً مشابه Async Compute جهت استفاده از سایر منابع پردازشی تراشه گرافیگی (GPU) جهت توسعه عملکردی کلی می باشد. این واحد ها به این منظور به خدمت گرفته شدند که به دستورات پردازنده (Command Processor) برای عملیات های مربوط به محاسبات (Compute) کمک کنند.

هدف اصلی ACEs ها قبول کارها برای ارسال به CU برای پردازش است. (نقشی شبیه GTE یا Giga Thread Engine های انویدیا که شاید عملکرد صحیح و برنامه ریزی صحیح این واحد، میتوانست کارایی نهایی و قدرت فرمی را در محاسبات GPGPU افزایش میداد که اینگونه نشد). در واقع انویدیا در معماری جدید پاسکال تاکید زیادی در بخش تراکم هسته های Cuda با محوریت عملکرد Double-Precision داشته است و همچنین تعداد و عملکرد بخش Warp Scheduler را کاملا ارتقاء بخشیده است تا در بخش پردازش های ناهمگام کوچکترین مشکلی نداشته باشد.

تعداد و عملکرد Warp Scheduler ها برای پشتیبانی بسیار قدرتمند از Async Compute افزایش داشته و فعلاً هیچ نگرانی بابت پردازش Async Compute روی کاغذ نخواهیم داشت. نکته قابل ذکر این است که استفاده از Async Compute در بازی های مختلف حدود مشخصی دارد و اگر بیشتر از حد تعیین شده باشد تاثیر منفی خواهد گذاشت. البته قدرت خام پردازشی GP100 آنقدر بالاست که حتی اگر پشتیبانی مناسبی از Async Compute به عمل نیاید، به دلیل توان پردازشی بسیار زیادش میتوانیم شاهد عملکرد بسیار مناسبی باشیم. پس جای نگرانی در این زمینه نیست.

موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines»

پیشنهاد میکنیم در مورد موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines» سه مطلب مفصل «تحلیل | دعوای انویدیا و AMD در Ashes of the Singularity با DX12» و «بررسی Ashes of the Singularity و ماجرای DX12» همراه با بنچمارک های این بازی برای DX12 را که در مطلبی به نام «بنچمارک بازی Ashes of the Singularity در DirectX 11 و DirectX 12» منتشر کردیم را مطالعه کنید تادید روشنی در مورد موتور محاسباتی غیرهمگام بدست آورید.

البته سیستم جدید Preemption میتواند به نقطه ضعف معماری جدید انویدیا هم تبدیل شود. یکی از بهینه سازی هایی که به واسطه این بخش صورت گرفته، بهینه سازی و کاهش زمان تاخیر در بخش VR Gaming میباشد. اما مهمترین بخش Preemption ایجاد تعادل پردازشی بین منابع پردازشگر گیمینگ و Compute محور است تا از تمام منابع پردازشی تراشه گرافیکی استفاده مناسبی صورت گیرد و عملکرد کلی را افزایش دهد! اما یکی از محدودیت های Async Compute تحت عنوان «Preemption» این است که استفاده از پیکربندی SLI انویدیا به دو کارت محدود شده است.

این فناوری برای افزایش بازدهی تبادل درونی پردازنده ها از دو رابط اتصال به صورت رفت و برگشت یک یا دو طرفه استفاده می کند تا عملکرد بهتری داشته باشد. این مورد برای افراد زیادی که تنها از یک کارت گرافیک استفاده می کنند مشلی ایجاد نمیکند و شاید اصلا برایشیان اهمیتی هم نداشته باشد. با این حال انویدیا برای حل این معضل از پل جدیدی به نام SLI HB استفاده کرده که بر خلاف نسل قبلی تنها از طریق یک کانکتور SLI میتواند قابلیت اتصال را فراهم کند.

ویژگی های موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines»

ویژگی های موتور محاسباتی غیرهمگام یا «Asynchronous Compute Engines»

در واقع انویدیا مدعی است زمانی که دو کارت گرافیک نسل پاسکال را به صورت SLI HB در کنار هم قرار دهیم، میتانیم از قدرتی معادل ۴ کارت گرافیک نسل قبلی در حالت ۴Way-SLI بهره مند شویم! با وجود این توضیحات به ای نتیجه میرسیم که افزایش نسبت Shared Memory، Registers و Warps در هر واحد SM را میتوان در زمره مهمترین تغییرات معماری پاسکال در GP100 برشمرد که به واحد های پردازشی SM این امکان را می دهد تا با سرعت و عملکرد بیشتری کدها و دستورات پردازشی را اجرا کنند! در واقع؛ GP100 اولین تراشه پرچمدار انویدیا هست که بخش پردازشی Double Precision آن تقریبا نصف بخش Single Precision هست.

بدین معنا که در نسل دوم معماری ماکسول «Maxwell»، هسته های CUDA از عملکرد FP64 معادل ۳۲:۱ استفاده میکردند و به عبارت دیگر در هر واحد SMM در کنار ۳۲ هسته FP32 با قابلیت پردازشی Single Precision تنها یک عدد هسته FP64 با نقش عملیاتی Double Precision وجود داشته است. با این حال و با توجه به مبحث مهم Async Compute یا موتور محاسباتی غیرهمگام میزان انسجام حافظه ها «Memory coherency» را در پاسکال نسبت به ماکسول کاملا افزایش داشته است.

پاسکال «Pascal» اولین معماری است که از Mixed Precision استفاده میکند و این بدین معنا که مؤلفه های پردازشی همچون FP32 ،FP16 و FP64 با حداکثر بهره وری و بازده خروجی ممکن پردازش میشوند. در مقایسه باید بگوییم که نسل دوم معماری ماکسول «Maxwell» در محاسبات بخش FP32 «بیشتر برای بازی کاربرد دارد» خلاصه شده بود و حالا با حضور پاسکال «Pascal» شاهد قدرت نمایی کارت های گرافیک مبتنی بر این معماری در حوزه های غیر از بازی هم هستیم.

معماری جدید پاسکال «Pascal»

عملکرد واحدهای SM در معماری پاسکال «Pascal» بستگی زیادی به تعداد Thread ها، Warps ها و سایز Registers ها همراه با بیشتر شدن تعداد خود واحد های SM است. تعداد registers ها که مشابه نسل دوم معماری ماکسول «Maxwell» وکپلر «Kepler» است و به همین دلیل بخش اشتراک گذاری حافظه یا «Shared Memory» نیزگ سترش یافته تا بتواند مجموع پهنای باند حافظه اشتراکی را بیشتر کند که البته اینطور هم شده و ما در معماری پاسکال «Pascal» با دو برابر افزایش پهنای باند حافظه اشتراکی مواجه هستیم.

مجموع افزایشی واحدهای فوق به معنای بهبود اجرای دستورات پردازشی است و این دقیقاً همان پیشرفت و بهبود بزرگی است که به نسبت معماری ماکسول شاهدش هستیم. البته هدف اصلی انویدیا با پاسکال «Pascal» تسخیر بازار HPC ها است و به همین دلیل نسبت هسته های CUDA با قابلیت پردازشی Double-Precision را در واحد های SM افزایش داده است. نتیجه آن شده که هر واحد SM سیلیکون GP100 از ۳۲ هسته CUDA با نقش پردازشی FP64 استفاده میکند که نسبت بخش پردازشی Double-Precision به Single-Precision یا FP32 به مقدار ۲:۱ رسیده است. این مقدار در سیلیکون پرچمدار معماری Kepler برابر ۳:۱ است.

در بخش Deep Learning هم شاهدیم که انویدیا ممیزهای شناور ۱۶ بیتی یا FP16 را افزوده و با بهبودهای مختلفی سعی کرده بهترین سازگاری و پتانسیل عملکرد را برای ابزارهای وابسته به هوش مصنوعی فراهم کند. به همین جهت از الگوریتم های محاسباتی IEEE 754‐۲۰۰۸ برای انجام عملیات FMA و از الگوریتم پردازشی FFT در بزرگترین تراشه معماری پاسکال «Pascal» یعنی سیلیکون GP100 و سیلیکون محدود شده کارت گرافیک GeForce GTX 1080 استفاده کرده است.

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

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

آخرین نقد و بررسی ها
بررسی کارت گرافیک Sapphire Radeon RX 580 Nitro

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

تاريخ بررسي: ۲۳ اردیبهشت, ۹۶
بررسی کارت گرافیک GeForce GTX 1080 Ti Founders Edition

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

۲۷ اسفند, ۹۵

9.3

بررسی کارت گرافیک MSI GTX 1050 Ti Gaming X 4 GB

بررسی کارت گرافیک MSI GTX 1050 Ti Gaming X 4 GB

۱۲ بهمن, ۹۵

9.0

بررسی کارت گرافیک Gigabyte GTX 1050 Ti G1 Gaming 4 GB

بررسی کارت گرافیک Gigabyte GTX 1050 Ti G1 Gaming 4 GB

۱۴ دی, ۹۵

9.0

بررسی کارت گرافیک MSI RX 480 Gaming X 8 GB

بررسی کارت گرافیک MSI RX 480 Gaming X 8 GB

۹ دی, ۹۵

9.4

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

×
تراشه انودیا Pascal GP100
شاخه: Intel /Nvidia,بررسی سخت افزار,کارت گرافیک

بررسی کوتاه تراشه گرافیکی پاسکال GP104

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

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

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

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

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