 |
 |
 |
 |
 |
|
کلمات کلیدی :
|
|
Nvidia
, Cuda , GP GPU, Geforce GTX 200, Parallel computing, GPU VS CPU
|
|
در رایانه های ابتدایی ، یک پردازنده به نام
CPU
مسئولیت انجام کلیه محاسبات و پردازشهای اجرایی را انجام می داد .
پس از مدتی کارشناسان یک پردازنده دیگر به نام
GPU
را طراحی نمودند تا وظیفه انجام پردازشهای گرافیکی را به آن بسپارند و
CPU
برای انجام سایر دستورات آزاد شود . بدین ترتیب ، کارتهای گرافیکی (که
GPU
یا پردازنده گرافیکی بر روی آن نصب است ) ، با دارا بودن مقداری حافظه
، عملیات گرافیکی یک سیستم رایانه ای را انجام می دهند . اینکه قدرت
گرافیکی سیستم شما در چه حدی است ، به کارت گرافیکی این سیستم مرتبط
است . حال این سوال پیش می آید که راندمان کلی یک سیستم به چه عاملی
بیشتر مرتبط است و اینکه برای تهیه یک سیستم قوی ، برای کدام قطعه باید
پول را خرج نمود ؟ |
|
از آنجایی که سرعت پردازنده های کنونی به اندازه کافی بالاست ، و
افزایش فرکانس (چیزی که معمولا در نسخه های جدید تر پردازنده های اینتل
مشاهده می شود) ، کمک چشمگیری به افزایش راندمان کلی سیستم نمی کند ،
انجام هزینه برای خرید پردازنده های بالاتر خیلی منطقی به نظر نمی رسد
. از طرفی دیگر ، اگر شما یک کاربر گرافیکی ، بازی ، انیمیشن و نرم
افزارهای سه بعدی می باشید ، برای شما کارت گرافیکی بسیار مهم تر از
پردازنده می باشد . |
|
ولی جدیدا بحث جالبتری مطرح شده است :
GPU
ها که به منظور انجام محاسبات گرافیکی و کمک به
CPU
طراحی شده بودند ، اکنون توانایی کار بر روی همه انواع عملیات محاسباتی
را دارند و نکته جالبتر اینکه به دلیل معماری مناسب
GPU
، و عدم نیاز به کاشه های بزرگ (حافظه هایی که در پردازنده تعبیه می
شوند ) ،
GPU
ها بسیار سریعتر از
CPU
ها پردازش می نمایند ! این امر
هم در مورد پردازشهای گرافیکی
و هم در
مورد کلیه نرم افزارهای روزمره و نیز حرفه ای صادق است . نتایج یک
نمونه تست و مقایسه زمان مورد نیاز برای پردازش ، توسط
GPU
در مقابل
CPU
در زیر آورده شده است : |
|
سیستم تست :
یک نوت بوک با پردازنده
Core 2 Duo T5450
، کارت گرافیکی
8600M GT
، و سیستم عامل ویستا . نتایج در رزولوشن
2048X2048
: (نتایج از سایت تخصصی
Tomshardware) |
|
_CPU
1 thread: 1419 ms
_CPU
2 threads: 749 ms
_CPU
4 threads: 593 ms |
|
_GPU
(8600M GT) blocks of 256 pixels: 109 ms
_GPU
(8600M GT) blocks of 128 pixels: 94 ms |
|
_GPU (8800
GTX) blocks of 128 pixels
/ 256 pixels: 31 ms |
|
مشاهده می شود که در ضعیفترین
GPU
، سرعت نسبت به بهترین حالت
CPU
، حدودا شش بار بیشتر است ! این توانایی پردازش در همه کارتهای گرافیکی
وجود دارد . تنها نکته ، چگونگی کمپایل نرم افزارها است . در واقع
برنامه نویس باید بتواند کدها را به زبان
GPU
بنویسد . ولیNvidia
با معرفی
CUDA
، به هر برنامه نویسی که توانایی نوشتن کد به زبانهای معمول
C/C++
را دارد ، امکان کار با
GPU
و استفاده از قدرت بالای آن را می دهد . |
|
جدیدا ، به منظور استفاده بهتر از
Nvidia
،
CUDA
تراشه های گرافیکی سری
Geforce GTX 200
را نیز به بازار عرضه نموده است . این تراشه ها همچنان
از
DirectX 10
پشتیبانی می نمایند ولی دارای معماری جدیدی نسبت به سریهای 8 و 9 می
باشند . مزیت اصلی این
GPU
همانطور که ذکر شد ، امکان اجرای نرم افزارهای رایج است (General
Purpose Graphic Processing Unit
یا
GPGPU
)
. البته این کار در چند کار تحقیقاتی (و با عرضه سیستم
Tesla)
با کارتهای گرافیکی قبلی نیز انجام شد ولی برای چند نرم افزار خاص ، نه
برای همه نرم افزارهای رایج . |
|
تراشه های
Nvidia Geforce GTX 200
در دو نسخه متفاوت به بازار عرضه شده اند و همانطور که گفته شده ،
دارای معماری متفاوتی نسبت به سریهای 8 و 9 می باشند و به نظر می رسد
دارای راندمان بسیار بالایی می باشند . در زیر مقایسه ای از این کارتها
را مشاهده می نمایید : |
|
10 |
32 |
22.4 GB/s |
128-bit |
1.4 GHz |
540 MHz / 1.18 GHz |
GeForce 8600 GT *** |
|
10 |
32 |
32 GB/s |
128-bit |
2 GHz |
675 MHz / 1.45 GHz |
GeForce 8600 GTS *** |
|
10 |
96 |
38.4 GB/s |
192-bit |
1.6 GHz |
550 MHz / 1,375 MHz |
GeForce 8800 GS *** ^ |
|
10 |
112 |
57.6 GB/s |
256-bit |
1.8 GHz |
600 MHz / 1.5 GHz |
GeForce 8800 GT *** ^ |
|
10 |
96 |
64 GB/s |
320-bit |
1.6 GHz |
500 MHz / 1.2 GHz |
GeForce 8800 GTS *** |
|
10 |
128 |
86.4 GB/s |
384-bit |
1.8 GHz |
575 MHz / 1.35 GHz |
GeForce 8800 GTX *** |
|
10 |
128 |
103.6 GB/s |
384-bit |
2.16 GHz |
612 MHz / 1.5 GHz |
GeForce 8800 Ultra *** |
|
10 |
64 |
57.6 GB/s |
256-bit |
1.8 GHz |
650 MHz / 1,625 MHz |
GeForce 9600 GT *** ^ |
|
10 |
128 |
70.4 GB/s |
256-bit |
2.2 GHz |
675 MHz / 1,688 MHz |
GeForce 9800 GTX *** ^ |
|
10 |
128 |
64 GB/s |
256-bit |
2 GHz |
600 MHz / 1.5 GHz |
GeForce 9800 GX2 ** ***
^ |
|
10 |
192 |
112 GB/s |
448-bit |
2 GHz |
576 MHz / 1,242 MHz |
GeForce GTX 260 *** ^ |
|
10 |
240 |
141.7 GB/s |
512-bit |
2.21 GHz |
602 MHz / 1,296 MHz |
GeForce GTX 280 *** ^ |
|
|
در نهایت باید به این نکته توجه کرد که صنعت رایانه ، به سمت پردازشهای
موازی پیش می رود . عملی که در حال حاضر پردازنده های گرافیکی (GPU)
ها بسیار بهتر از
CPU
ها انجام می دهند و
Nvidia
با دانش کافی از معماری
GPU
های تولیدی خود ، در این راه گام برداشته است .
Intel
و
AMD
نیز اعلام داشته اند که در این راه بیکار ننشسته اند و در حال ارائه
تکنولوژی های جدیدی در این زمینه می باشند . و قطب دیگر ،
Microsoft
، نیز اعلام داشته است در حال ارائه سیستم عامل و کمپایلری است که
تمامی این پردازنده ها را پشتیبانی نماید . حال کدام یک از این غولهای
رایانه در آینده موفقند ( البته در حال حاضر ، کمپانی موفق
Nvidia
بوده است که گفته های خود را عملی نیز نموده است ) مشخص نیست ، ولی
چیزی که مشخص است ، قدرت
GPU
و برتری آن به
CPU
است . تراشه ای که برای کمک آمده بود ، در حال خارج کردن استاد خود از رده است ! |
 |