یک GPU معمولاً بر روی کارتهای گرافیکی قرار میگیرد، اگر چه کارتهای گرافیکی غیر حرفهای مستقیما بر روی بُرد مادر (OnBorad) قرارمیگیرند.
GPU ابزاری است شامل تعدادی عملگر ابتدایی گرافیکی، که باعثمیشود نسبت به CPU در خلق تصاویر بر صفحه نمایشگر بسیار سریعتر عملکنند.
رایج ترین عملگرها برای گرافیک دو بعدی کامپیوترها شامل عملگر BitBLT است که معمولاً در سخت افزارهای مخصوص یک "Biltter" نامیده میشود. این عملگرهابرای کشیدن مستطیل، مثلث، دایره و قوس بکار میروند. پردازندههای گرافیکی جدید،پردازش گرافیک سه بعدی را نیز در رایانهها انجام میدهند.
اوایل دههٔ۱۹۸۰
واحدهای پردازندهٔ گرافیکی از چیپهای گرافیکی بکپارچه در آغاز دهه ۸۰و ۹۰ زاده شدند. این چیپها محدود به پشتیبانی از BitBLt بود و غالبا از شیوهٔطراحی قالب حمایت نمیکرد. بعضی از GPUها توانایی اجرای چندین عملگر را در فهرستنمایش دارا میباشند، و همچنین میتوانند از DMA برای کاهش بارگذاری روی پردازندهٔاصلی استفاده کنند. یک نمونهٔ اولیه ANTIC بود که به عنوان یک کمکپردازنده دررایانه(پی سی پدیا)های آتاری۸۰۰ و آتاری ۵۲۰۰ استفاده شد. در اواخر دههٔ ۸۰ واوایل دههٔ ۹۰ سرعت بالاتر ریزپردازنده های همه منظوره به ابزاری محبوب برای GPUهایگرانقیمت تبدیل شدند. چند بُرد گرافیکی گرانقیمت که برای رایانههای شخصی وایستگاههای کاری استفاده میشد؛ عبارت بودند از TI سری ۳۴۰TMS (یک CPUی ۳۲بیتیبهینه سازی شده برای استفاده در کارهای گرافیکی؛ همراه با کنترلگر بافر بر روی چیپآن) برای اجرای سریع رسم توابع. اینهامخصوصا برای یک نوع خاص از GPUها برای استفاده در CAD معروفهستند.
همچنین بسیاری از چاپگرهای لیزری شرکت اپل دارای فنآوری پردازشتصاویر توسط پست اسکریپت بودند. تعداد کمی از کابردهای خصوصی شده از پردازندهٔدیجیتال سیگنال برای گرافیکی ۳ بعدی استفاده میکنند از قبیل بازیهای Atari Games'Hard Drivin یا Race Drivin .
همچنان که فن آوری پردازشگرها پیشرفتمیکرد، سرانجام برای طراحی حرکت و توابع BitBLT بر روی یک بورد امکان پذیر شد (وسرانجام بر روی یک چیپ) مانند یک کنتلگر منظم fram Buffer مانند VGA .
دهه۱۹۸۰
رایانه کمودور آمیگا اولین وسیلهٔ پر فروش رایانهای بود که شامل یک biltter در قسمت سخت افزار گرافیکی خود بود. سیستم گرافیک رایانه ۸۵۱۴IBM اولینرایانهٔ شخصی بود که کارت گرافیکی ۲ بعدی را شامل میشد.
آمیگا در زمان خودشبی نظیر بود چرا که یکی از خصوصیات آن که امروزه به سیستم شتاب دهندهٔ گرافیکیشناخته میشود را دارا بود. تقریباً تمام بار تولید توابع گرافیکی بر عهدهٔ سختافزار بود، به طور مثال کشیدن خط، پرکردن مساحت و یک کمک پردازندهٔ گرافیکی همراهبا مجموعهٔ دستورات داخلی مخصوص به خود. تا قبل از ارایهٔ (و حتی تا مدتی بعد برروی اکثر سیستمها) هدف عمومی CPU این بود که با تمام جنبههای گرافیکی سر و کارداشته باشد.
دههٔ ۱۹۹۰
در اوایل دهه ی۹۰ با رشد چشمگیر سیستم عاملمایکروسافت ویندوز، علاقهٔ فراوانی به استفاده از سرعت بیشتر و تفکیک پذیری ۲ بعدیبالاتر (bitmapped graphics) که قبلا توسط ایستگاههای کاری یونیکس و رایانههایمکینتاش شرکت اپل استفاده شده بود) ایجاد گردید. برای بازار فروش تسلط مایکروسافتبه معنی تمرکز بیشتر و تلاش بر روی فقط یک میانجی برنامه نویسی بود :
دستگاهمیانجی گرافیکی (Graphics Device Interface)
از سال ۲۰۰۰ تا بهحال
با ظهور رابط کاربری DirectX نسخهٔ ۸ و توابع مشابه به نام OpenGL،توانایی برنامهریزی سایهزنی به قابلیتهای GPU اضافه شد. هر پیکسل اکنونمیتوانست توسط برنامههای کوچک که شامل اضافه شدن بافت تصویری به عنوان ورودیها،و یک برنامهٔ کوتاه توانایی پردازش هر یک از مختصات سه بعدی را پیش از نمایش تصویردارا بود .ان ویدیا بازار را با ارایهٔ اولین چیپ با توانایی سایهزنی برنامهریزیشده در دست گرفت: جی فورس ۳ (GeForce ۳) که البته به ۲۰NV نیر مشهور است. در اکتبر۲۰۰۲، شرکت ATI با معرفی Radoen ۹۷۰۰که با نام ۳۰۰R نیز شناخته میشود، اولینشتابدهندهٔ دایرکت ۳ بعدی نسخهٔ ۹ را معرفی کرد.
توابع مربوط به یکمحاسبه
GPUهای جدید ازبسیاریاز ترانزیستورهایشان برای محاسبهٔ مربوط به گرافیک سه بعدیرایانهها استفاده میکنند. آنها در ابتدا برای شتاب دادن به حافظهٔ اصلی، نقشهبرداری بافت ها، رندر کردن کثیرالاضلاعها و به طور کلی چندگوشهها استفادهمیشدند. ولی بعداً برای کارهای سختتر از جمله شتاب دادن به محاسبات هندسی مانندتبدیل رئوس از یک دستگاه مختصات به یک دستگاه مختصات دیگر استفاده شد. اخیراً باگسترش GPUها , آنها سایه زنیهای قابل برنامهریزی و رئوس و بافتها را ادارهمیکنند همچنین با بسیاری از عملگرهای پشتیبانی شده توسط CPUها و الحاقی ومحاسبهٔ مقادیر واسط بین دو نقطه، با تکنیک reduce aliasing) و Color Space با دقتبسیار بالا انجام میدهد.
در رایانه هایابتدایی ، یک پردازنده به نام 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 می باشند و به نظر می رسد دارای راندمانبسیار بالایی می باشند . در زیر مقایسه ای از این کارتها را مشاهده می نمایید :
تبادل
لینک هوشمند
IT.فناوری اطلاعات
workstation و
آدرس
workstation.LoxBlog.ir
لینک
نمایید سپس
مشخصات لینک
خود را در زیر
نوشته . در صورت
وجود لینک ما در
سایت شما
لینکتان به طور
خودکار در سایت
ما قرار میگیرد.