PDA

مشاهده نسخه کامل : هسته پردازشی گرافیک



sun1000
28-07-13, 13:01
با سلام خدمت دوستان , میخواستم بدونم پردازنده های گرافیکی مثل پردازنده های مرکزی سیستم هست یا نه ؟ چند هسته هستن و یا اصلا بحث هسته برای گرافیک منتفی هست ؟ فرکانس های کاری چطور

mohamad70
28-07-13, 23:10
با سلام خدمت دوستان , میخواستم بدونم پردازنده های گرافیکی مثل پردازنده های مرکزی سیستم هست یا نه ؟ چند هسته هستن و یا اصلا بحث هسته برای گرافیک منتفی هست ؟ فرکانس های کاری چطور

سلام

پردازنده گرافیکی یا همون GPU با پردازنده اصلی ( CPU ) تفاوت های زیادی داره و هر کدوم برای هدف خاصی طراحی و بهینه شدن. فلسفه ساخت GPU در ابتدا این بود که بتونه در انجام پردازش های گرافیکی به CPU کمک کنه و به عبارتی یک پروسه گرافیکی رو شتاب بده.

اما خب به مرور زمان با پیشرفت نرم افزارهای 3D و بهبود موتور گرافیکی گیم ها نیاز به یک واحد کاملا مجزا ، قدرتمند و بهینه شده برای انجام عملیات گرافیکی احساس شد و در نتیجه زمینه یک رقابت تنگاتنگ بین دو کمپانی ATI و nVIDIA برای ساخت GPU های قوی تر فراهم شد.

یکی از ویژگی های اصلی پروسه های گرافیکی قابلیت موازی سازی بسیار بالاست ، چون در خیلی از موارد حاصل پردازش شماره 1 هیچ ربطی به پردازش شماره 2 نداره ، حالا یک مثال میزنم تا متوجه بشید :

فرض کنید برای نمایش یک فریم از یک گیم بر روی صفحه مانیتور نیاز به پردازش مثلا 2000000 پیکسل هست ، هر پیکسل دارای یک رنگ منحصر بفرد هست و کاملا مجزا از سایر پیکسل هاست. حالا اگه این دو میلیون پیکسل رو به صورت ترتیبی بخوایم پردازش کنیم ( یعنی اول پیکسل شماره 1 ، بعد شماره 2 و همین طور تا دو میلیون ! ) مسلما زمان بسیار زیادی این پروسه طول میکشه ، ولی اگه این دو میلیون پیکسل رو بین 1000 عدد پردازنده ضعیف تقسیم کنیم تا به صورت همزمان پیکسل ها رو پردازش بکنند قطعا سرعت عمل چند صد برابر افزایش میکنه.

همین ویژگی باعث ایجاد یک تفاوت ساختاری مهم بین CPU و GPU میشه بدین شکل که یک CPU دارای تعداد هسته های کمی هست ( مثلا 4 یا حداکثر 8 ) که البته هر کدوم به تنهایی قدرت پردازشی بسیار بالایی دارن و مناسب پروسه های غیر گرافیکی هستند. ( معمولا پروسه های غیر گرافیکی که توسط CPU پردازش میشه قابلیت موازی سازی بالایی رو ندارن )

اما

یک GPU دارای تعداد بسیار زیادی هسته پردازشی ضعیف هست ( به طور معمول بالای 1000 عدد ) که البته هر هسته به تنهایی قدرت پردازشی بسیار پایینی داره و در فرکانس خیلی پایین تری هم نسبت CPU کار میکنه ( به زحمت به 1GHz میرسه ) که این معماری کاملا مناسب پردازش های گرافیکی هست.

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

امیدوارم این توضیحات یک دید کلی بهتون داده باشه.

life24
29-07-13, 00:55
سلام
ای کاش فرصتی بزارید برای باز کردن بیشتر مطلب.
مطمئنن به درد همه دوستان خواهد خورد. و ما دعا گو شما هستیم :give_rose:

sun1000
29-07-13, 18:15
سلام

پردازنده گرافیکی یا همون GPU با پردازنده اصلی ( CPU ) تفاوت های زیادی داره و هر کدوم برای هدف خاصی طراحی و بهینه شدن. فلسفه ساخت GPU در ابتدا این بود که بتونه در انجام پردازش های گرافیکی به CPU کمک کنه و به عبارتی یک پروسه گرافیکی رو شتاب بده.

اما خب به مرور زمان با پیشرفت نرم افزارهای 3D و بهبود موتور گرافیکی گیم ها نیاز به یک واحد کاملا مجزا ، قدرتمند و بهینه شده برای انجام عملیات گرافیکی احساس شد و در نتیجه زمینه یک رقابت تنگاتنگ بین دو کمپانی ATI و nVIDIA برای ساخت GPU های قوی تر فراهم شد.

یکی از ویژگی های اصلی پروسه های گرافیکی قابلیت موازی سازی بسیار بالاست ، چون در خیلی از موارد حاصل پردازش شماره 1 هیچ ربطی به پردازش شماره 2 نداره ، حالا یک مثال میزنم تا متوجه بشید :

فرض کنید برای نمایش یک فریم از یک گیم بر روی صفحه مانیتور نیاز به پردازش مثلا 2000000 پیکسل هست ، هر پیکسل دارای یک رنگ منحصر بفرد هست و کاملا مجزا از سایر پیکسل هاست. حالا اگه این دو میلیون پیکسل رو به صورت ترتیبی بخوایم پردازش کنیم ( یعنی اول پیکسل شماره 1 ، بعد شماره 2 و همین طور تا دو میلیون ! ) مسلما زمان بسیار زیادی این پروسه طول میکشه ، ولی اگه این دو میلیون پیکسل رو بین 1000 عدد پردازنده ضعیف تقسیم کنیم تا به صورت همزمان پیکسل ها رو پردازش بکنند قطعا سرعت عمل چند صد برابر افزایش میکنه.

همین ویژگی باعث ایجاد یک تفاوت ساختاری مهم بین CPU و GPU میشه بدین شکل که یک CPU دارای تعداد هسته های کمی هست ( مثلا 4 یا حداکثر 8 ) که البته هر کدوم به تنهایی قدرت پردازشی بسیار بالایی دارن و مناسب پروسه های غیر گرافیکی هستند. ( معمولا پروسه های غیر گرافیکی که توسط CPU پردازش میشه قابلیت موازی سازی بالایی رو ندارن )

اما

یک GPU دارای تعداد بسیار زیادی هسته پردازشی ضعیف هست ( به طور معمول بالای 1000 عدد ) که البته هر هسته به تنهایی قدرت پردازشی بسیار پایینی داره و در فرکانس خیلی پایین تری هم نسبت CPU کار میکنه ( به زحمت به 1GHz میرسه ) که این معماری کاملا مناسب پردازش های گرافیکی هست.

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

امیدوارم این توضیحات یک دید کلی بهتون داده باشه.
با تشکر از جواب کاملتون فوق العاده موثر بود سربلند باشید