1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

کارت های گرافیکی سری Nvidia Geforce GTX200

شروع موضوع توسط minaaa ‏14/1/11 در انجمن نرم افزار گرافیکی

  1. کاربر پیشرفته

    تاریخ عضویت:
    ‏9/12/10
    ارسال ها:
    19,773
    تشکر شده:
    6,457
    امتیاز دستاورد:
    113
    [​IMG]

    فناوری‌های جدید در GTX200

    شرکت nvidia در نسل جدید پردازنده‌های‌گرافیکی خود روی مسئله محاسبات پردازشی پیشرفته تمرکز بیشتری کرده است که این موضوع چندان به مزاج شرکت اینتل خوش نیامده است. این شرکت همزمان با ارائه نسل جدید پردازنده‌گرافیکی خود فناوری CUDA(Compute Unified Device Architecture) را به طور رسمی معرفی کرد که با وجود آن امکان انجام محاسبات پیشرفته توسط پردازنده‌گرافیکی امکان‌پذیر می‌شود. یکی از برنامه‌هایی که nvidia برای نمایش کارایی این فناوری در کنفرانس‌های مختلف به نمایش گذاشته، نرم افزار BadaBoom است که برای تبدیل فایل‌های ویدئویی HD به فرمت‌های مخصوص دستگاه‌های پرتابل بکار می‌رود. در این برنامه که بر اساس پلتفرم ETI و بر پایه پردازنده‌گرافیکی نوشته شده است، کارت گرافیک GTX280 توانست یک فیلم 24 ثانیه‌ای را با نرخ 140 تا 150 فریم در ثانیه تبدیل کند در صورتی‌که دو پردازنده چهار هسته‌ای بر پایه پلتفرم Skulltrail همین فیلم را با نرخ 85 تا 95 فریم در ثانیه پردازش کردند.
    همچنین nvidia با همکاری دانشگاه استانفورد یک نسخه از برنامه Folding@home(این برنامه در زمان بیکار بودن کامپیوتر از پردازنده بعنوان یک منبع پردازشی برای انواع شبیه‌سازی‌های علمی استفاده کرده و نتایج را با استفاده از شبکه به سرور ارسال می‌کند) مخصوص کارت گرافیکی طراحی کرده است. سرعت پردازش GTX280 در این برنامه حدود 500ns/day است. این در حالی است که سرعت پردازش یک پردازنده Core 2 Duo امروزی 4ns/day، کنسول PS3 حدود 100ns/day و کارت گرافیک HD3870 در حدود 170ns/day در این برنامه است.
    یکی دیگر از فناوری‌هایی که شرکت nvidia در نسل جدید کارت‌گرافیکی خود به طور رسمی به سراغ آن رفته است فناوری PhysX است که امکان پردازش واکنش‌های فیزیکی پیشرفته را به کارت‌گرافیکی می‌دهد‌. Nvidia با خرید شرکت Ageia امتیاز استفاده از این فناوری را در کارتهای گرافیک خود بدست آورده و حالا این قابلیت در سری جدید کارتهای گرافیک این شرکت در دسترس است(بدون اینکه نیازی به یک کارت جداگانه برای پردازش فیزیک باشد).
    ​

    [​IMG]
    شکل شماره 1
    [​IMG]
    شکل شماره 2
    حال اگر پردازنده در حالت Computing mode قرار بگیرد، ساختار کمی تفاوت می‌شود(شکل 3). در این وضعیت کل بخش بالایی تبدیل به Thread Scheduler می‌شود (این بخش وظیفه توزیع رشته‌ها برای خوشه‌های پردازشگر‌های رشته ها را بر عهده دارد) و از حافظه مخصوص بافت‌ها برای دسترسی سریع به اطلاعات حافظه استفاده می‌شود. همچنین در این حالت دیگر بخش ROP وجود ندارد و اجزایی به نام Atomics جایگزین آنها می‌شود.( Atomic برای انجام عملیات خواندن، تغییر دادن و نوشتن روی حافظه به کار می‌رود.)
    [​IMG]
    شکل شماره 3
    به خاطر داشته باشید که نمی‌توان از دو حالت Graphic mode وComputing mode به طور همزمان استفاده کرد.اما با این وجود با نسخه جدید درایور nvidia که از قابلیت PhysX هم پشتیبانی می‌کند، کارت گرافیک می‌تواند بر اساس نیاز کارت گرافیکی و عملیاتی که باید انجام دهد به طور خودکار در هر زمان بین دو حالت Graphics و Computing سوییچ کند.
    تغییرات برای پردازش بهتر

    طراحی سری GTX200 از پایه انجام نشده و در واقع مدل بهینه شده‌ای از هسته‌های G80 و G92 است(بسیاری از خصوصیات این دو هسته را می‌توان در GTX200 نیز مشاهده کرد).به همین منظور شرکت nvidia برای رسیدن قدرت پردازشی محصولات سری GTX200 به عدد رویایی یک ترافلاپ، مجبور شده تعداد پردازنده‌های چند منظوری (Multi Porcessor) را از شانزده عدد در نسل قبل به سی عدد افزایش دهد. همچنین در این کارت گرافیک تعداد واحد پردازش بافتی از 64 واحد در کارت‌گرافیکی 9800GTX به 80 واحد افزایش یافته است که به گفته کارشاسان فنی این مسئله باعث افزایش کارایی کارت‌گرافیکی در بازیهای نسل آینده که بیشتر به پردازش پیشرفته بافتی بستگی دارد،‌خواهد شد.


    واحد‌های پردازش تصویر بهبود یافته

    واحد‌های پردازش تصویر در پردازنده‌گرافیکی GTX200 نیز پیشرفت چشمگیری کرده‌اند و تعداد آنها به 32 واحد افزایش یافته است. nvidia برای اطمینان از کارکرد کامل این واحد‌ها از یک رابط 512 بیتی بهره گرفته است. البته این کار به قیمت کاهش فرکانس هسته تمام می‌شود، اما نتیجه، افزایش 78 درصدی قابلیت پر کردن تصویر(fillrate) به نسبت کارت گرافیک 9800GTX است. در نسل قبل ساختار واحد‌های پردازش تصویر به اندازه کافی کامل و پیشرفته بوده به همین علت شرکت nvidia در نسل جدید تغییرات عمده‌ای در آنها نداده است.در حال حاضر این واحد‌ها می‌توانند از بافر‌های ممیز شناور 16 و 32 بیتی به همراه تصحیح سطوح ناصاف (AA) تا 16 مرحله در حالت ( اCSAA(Custom Sample Anti Aliasing پشتیبانی کرده و فیلتر نمایش عمق تصویر(Anisotropic Filter) را هشت بار سریعتر پردازش کنند.

    ​

    SIMT به جای SIMD

    SIMD (مخفف عبارت Single instruction stream, Multiple Data Stream) حاوی دستورالعملهایی همانند دستورالعملهای MMX به کار رفته در پردازنده‌های کامپیوتر است که در پردازنده‌های گرافیکی نسل قبل nvidia مورد استفاده قرار می‌گرفت( توضیح کامل آن در یک تعریف کوتاه نمی‌گنجد!) اما در GTX200 از واحد‌هایSIMT (single instruction stream, multiple threads stream) به جای واحد‌های SIMD استفاده شده است . تفاوت اصلی این واحد با واحد‌های SIMD در نا‌مشخص بودن سایز vector(بردار)‌هایی است که قرار است پردازش شوند که این مسئله باعث می‌شود پردازنده گرافیکی همانند یک پردازنده Scalar فعالیت خواهد کرد. احتمالا این سوال بوجود می‌اید که SIMT چه نقشی را در پردازنده‌گرافیکی ایفا می‌کند؟
    به طور کلی بخش تصویر‌ساز ، به صورت مربع‌های 2×2 پیکسلی است که هر پیکسل آن از 4 مقدار با ممیز شناور(R,G,B,A یا X,Y,Z,W) ساخته شده است. بعد از پردازش بخش تصویر‌ساز اطلاعات خروجی این محاسبات در یک بافر ذخیره شده و هنگامی که تعداد آنها به 32 عدد می‌رسد برای پردازش به SIMT ارسال می‌شوند. (تا اینجای کار در کارت‌‌های سری قبلی نیز انجام می‌شد، اما ادامه مسیر نسبت به قبل تغییر کرده است). این تفاوت در ترتیب ورود داده‌های پردازش شده به SIMT است: در پردازنده‌های جدید به جای پردازش روی چهار بردار با چهار عدد ممیز شناور(مانند R,G,B,A,R,G,B,A,R,G,B,A,…) ، پردازش روی بردارهایی که 32 عدد ممیز شناور یکسان دارند انجام خواهد شد(مانند R,R,R,R,R,R,R,R,R… یا G,G,G,G,G,G,G,G,G,G…). حالت پردازش در مثال اول AOS(Array Of Structures) و در مثال دومSOA (Structure Of Arrays) نامیده می‌‌شود. در حالت دوم تمامی 32 رشته ورودی به SIMT از یک نوع خواهند بود که منجر به افزایش کارایی خواهد شد. زیرا در این حالت همواره به اندازه کافی داده برای پر کردن بردارها وجود داشته و به علت شباهت رفتار پردازنده به پردازنده‌های Scalar ، برنامه نویسی آنها راحتتر می‌شود. بر خلاف روش دوم، در روش اول تنها زمانی به نهایت قدرت پردازشی می‌رسیم که دستورالعملهای یکسانی روی چهار جزء تشکیل دهنده هر بردار وجود داشته باشد. تا یادمان نرفته بگویم قابلیت Geometry Shader که در نسل‌های پیشین به علت کمبود فضای بافر چندان مناسب عمل نمی‌کرد، با شش برابر شدن فضای مخصوص بافر به خوبی در پردازنده‌های گرافیکی جدید nvidia ایفای نقش می‌کند.(می‌دانیم زیاد ربطی به موضوع بالا نداشت!)
    ​

    [​IMG]
    شکل شماره 4
    DirectX 10.1

    از قرار معلوم nvidia اعتقادی به رابط DirectX10.1 ندارد و در نسل جدید محصولات خود نیز از رابط DirectX10 استفاده کرده است. در نسخه جدید رابط DirectX10 برخی مشکلات و کاستی‌های این رابط برطرف شده و ویژگی‌های جدیدی مانند الگوریتم پردازش سطوح شفاف، Deffered Shading به آن اضافه شده که به نظر nvidia چندان مهم نبوده است! در یکی از کنفرانس های مطبوعاتی nvidia اعلام کرده که منتظر معرفی DirectX11 می‌ماند و در نسل بعدی کارتهای گرافیکی خود به سراغ پشتیبانی از DirectX11 خواهد رفت.( بیچاره ATI که پول زیاد ندارد)

    ​

    GTX 280 یا GTX260؟!

    کارت‌گرافیکی GTX280 در قدرت پردازش اعداد با ممیز شناور 30 درصد و در پهنای باند حافظه 27 درصد قوی‌تر از GTX260 است و به نظر می‌رسد فاصله زیادی بین کارایی این دو کارت باشد. اما در تست‌‌های انجام شده ، این دو کارت نزدیک به یکدیگر حرکت می‌کنند و تفاوت چندانی بین کارایی ان‌ها وجود ندارد. از طرفی GTX280 یک کانکتور برق هشت پین و یک کانکتور 6 پین دارد و در حدود 55 وات بیشتر از GTX260 برق مصرف می‌کند که این موضوع نیاز به خرید یک منیع‌تغذیه گران قیمت را ضروری می‌کند (شکل 4) پس با در نظر گرفتن این مسائل و تفاوت قیمت این دو کارت خرید کارت‌گرافیکی GTX260 نسبت به GTX280 منطقی‌تر است.
    ​

    نتیجه گیری

    با آن که nvidia از 1.4 میلیارد ترانزیستور در ساخت پردازنده‌گرافیکی جدید خود استفاده کرده و تغییرات زیادی در ساختار آن جهت بهبود کارایی اعمال نموده است اما استفاده از فناوری 65 نانومتری مجموعه‌ای از نکات منفی از جمله دما و قیمت ساخت بالا را متوجه این نسل جدید می‌سازد.(البته nvidia به خاطر سری HD4000 مجبور شده است قیمت کارت‌های خود را کاهش دهد) علاوه بر این عدم پشتیبانی از DirectX10.1 نیز جزو یکی از عجیبترین تصمیمات nvidia بحساب می آید(برخی آنرا به روابط سیاسی بین شرکت ها نسبت می‌دهند!). در ضمن در تست های اولیه روی این دو کارت گرافیک، نویز حاصل از گردش جریان هوا در خنک کننده یکی از نکات منفی‌ بود که چندین سایت به آن اشاره کرده‌اند که البته می‌توان امیدوار بود که سازندگان کارت‌گرافیک طبق معمول تغییراتی در این خنک‌کننده اعمال کرده و محصول بهتری ارائه دهند.
    ​

    حرف آخر

    در حدود 12 سال پیش ، کامپیوتر ASCI RED با قدرت پردازش 1 ترافلاپ ساخته شد. برای ساخت این کامپیوتر نزدیک به 10000 پردازنده Pentuim Pro با فرکانس 200 مگاهرتز مورد استفاده قرار گرفت که برای فعالیت آن‌ها توانی برابر با 500 کیلووات صرف می شد.(البته تقریبا همین مقدار برق نیز برای خنک کردن آن مصرف می‌شد.)
    حالا شما قدرت پردازش یک ترافلاپ را در قطعه‌ای با طول کمی بیشتر از عرض یک مادربورد ATX و وزنی کمتر از یک کیلوگرم در اختیار دارید که مصرف برق آن حتی کمتر از 500 وات است.
    شاید 12 سال بعد افرادی مانند ما قطعه کوچکی را در دست بگیرند و به روزگاری فکر ‌کنند که یک کیت 27-28 سانتیمتری را در کیس های بزرگ قرار می‌دادند و کلی پول و برق برایش صرف می‌کردند تا قدرت پردازش تنها یک ترافلاپ را بدست آورند!