• GPU: چیست و چرا استفاده می شود؟ نحوه عملکرد کارت گرافیک از پردازنده گرافیکی آن استفاده می شود

    CPU و GPU بسیار مشابه هستند، هر دو از صدها میلیون ترانزیستور ساخته شده اند و می توانند هزاران عملیات را در ثانیه پردازش کنند. اما این دو جزء مهم هر کامپیوتر خانگی دقیقاً چه تفاوتی با هم دارند؟

    در این مقاله سعی می کنیم به روشی بسیار ساده و در دسترس بگوییم تفاوت بین CPU و GPU چیست. اما ابتدا باید این دو پردازنده را جداگانه در نظر بگیریم.

    CPU (واحد پردازش مرکزی یا واحد پردازش مرکزی) اغلب به عنوان "مغز" یک کامپیوتر شناخته می شود. در داخل واحد پردازش مرکزی حدود یک میلیون ترانزیستور وجود دارد که با کمک آنها محاسبات مختلفی انجام می شود. رایانه های خانگی معمولاً دارای پردازنده هایی با 1 تا 4 هسته با سرعت کلاک تقریباً 1 گیگاهرتز تا 4 گیگاهرتز هستند.

    پردازنده قدرتمند است زیرا می تواند همه کارها را انجام دهد. یک کامپیوتر قادر به انجام یک کار است زیرا پردازنده قادر به انجام آن کار است. برنامه نویسان به لطف مجموعه دستورالعمل های گسترده و لیست های عظیم توابع به اشتراک گذاشته شده در CPU های مدرن توانسته اند به این امر دست یابند.

    GPU چیست؟

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

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

    تفاوت بین CPU و GPU

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

    به عنوان مثال، Nvidia GTX 1080 را در نظر بگیرید. این کارت گرافیک دارای 2560 هسته سایه زن است. به لطف این هسته ها، Nvidia GTX 1080 می تواند 2560 دستورالعمل یا عملیات را در یک چرخه ساعت اجرا کند. اگر می‌خواهید تصویر را 1% روشن‌تر کنید، GPU می‌تواند بدون مشکل از آن استفاده کند. اما پردازنده چهار هسته ای اینتل Core i5 تنها می تواند 4 دستور را در هر چرخه اجرا کند.

    با این حال، CPU ها انعطاف پذیرتر از GPU ها هستند. واحدهای پردازش مرکزی مجموعه بزرگتری از دستورالعمل ها دارند، بنابراین می توانند طیف وسیع تری از عملکردها را انجام دهند. CPU ها همچنین با حداکثر سرعت کلاک بالاتری کار می کنند و توانایی کنترل ورودی و خروجی اجزای کامپیوتر را دارند. به عنوان مثال، CPU می تواند با حافظه مجازی که برای اجرای یک سیستم عامل مدرن مورد نیاز است، یکپارچه شود. این دقیقاً همان چیزی است که GPU قادر به انجام آن نخواهد بود.

    محاسبات GPU

    اگرچه پردازنده‌های گرافیکی برای رندر طراحی شده‌اند، اما توانایی بیشتری دارند. پردازش گرافیکی فقط نوعی محاسبات موازی تکراری است. سایر وظایف مانند استخراج بیت کوین و شکستن رمز عبور به همان نوع مجموعه داده های عظیم و محاسبات ساده ریاضی متکی هستند. به همین دلیل است که برخی از کاربران از کارت های ویدئویی برای عملیات غیر گرافیکی استفاده می کنند. این پدیده را محاسبات GPU یا محاسبات GPU می نامند.

    نتیجه گیری

    در این مقاله به مقایسه CPU و GPU پرداختیم. من فکر می کنم برای همه روشن شده است که GPU و CPU اهداف مشابهی دارند، اما برای محاسبات مختلف بهینه شده اند. نظر خود را در نظرات بنویسید، سعی می کنم پاسخ دهم.

    کارت‌های ویدئویی مدرن به دلیل قدرت پردازش عظیمی که هنگام کار با گرافیک مورد نیاز است، به فرمان خود مجهز هستند.مرکز، به عبارت دیگر - پردازنده گرافیکی.

    این به منظور "تخلیه" پردازنده مرکزی انجام شد که به دلیل "گستره کاربرد" گسترده آن به سادگی قادر به مقابله با الزامات مدرن نیست.صنعت بازی

    واحدهای پردازش گرافیکی (GPU) مطلقاً از نظر پیچیدگی نسبت به پردازنده‌های مرکزی پایین‌تر نیستند، اما به دلیل تخصص محدود آنها، می‌توانند به طور مؤثرتری با کار پردازش گرافیک، ساختن تصویر و سپس نمایش آن بر روی مانیتور کنار بیایند.

    اگر در مورد پارامترها صحبت کنیم، آنها برای پردازنده های گرافیکی با پردازنده مرکزی بسیار شبیه هستند. اینها پارامترهایی هستند که قبلاً برای همه شناخته شده اند، مانند ریزمعماری پردازنده، فرکانس ساعتکار اصلی، فرآیند تولید اما آنها همچنین دارای ویژگی های کاملا خاص هستند. به عنوان مثال، یک ویژگی مهم یک GPU تعداد خطوط لوله پیکسل است. این مشخصه تعداد پیکسل های پردازش شده در هر چرخه ربات های GPU را تعیین می کند. تعداد این خطوط لوله می تواند متفاوت باشد، به عنوان مثال در تراشه های گرافیکی سری Radeon HD 6000 تعداد آنها می تواند تا 96 عدد باشد.

    خط لوله پیکسل درگیر این واقعیت است که هر پیکسل بعدی تصویر بعدی را با در نظر گرفتن ویژگی های آن محاسبه می کند. برای سرعت بخشیدن به فرآیند رندر، از چندین خط لوله موازی استفاده می شود که پیکسل های مختلف یک تصویر را محاسبه می کند.

    همچنین، تعداد خطوط لوله پیکسل بر پارامتر مهمی تأثیر می گذارد - سرعت پر کردن کارت گرافیک. نرخ پر شدن یک کارت گرافیک را می توان با ضرب فرکانس هسته در تعداد خطوط لوله محاسبه کرد.

    بیایید نرخ پر شدن را برای مثال برای کارت گرافیک AMD Radeon HD 6990 محاسبه کنیم. (شکل 2)فرکانس هسته GPU این تراشه 830 مگاهرتز و تعداد خطوط لوله پیکسل 96 است. با محاسبات ساده ریاضی (830x96) به این نتیجه می رسیم که نرخ پر شدن برابر با 57.2 Gpixel / s خواهد بود.


    برنج. 2

    علاوه بر خطوط لوله پیکسلی، در هر خط لوله به اصطلاح واحدهای بافت نیز وجود دارد. هرچه واحدهای بافت بیشتر باشد، بافت های بیشتری را می توان در یک گذر از خط لوله اعمال کرد، که بر عملکرد کلی کل سیستم ویدیویی نیز تأثیر می گذارد. در تراشه فوق الذکر AMD Radeon HD 6990، تعداد واحدهای واکشی بافت 32x2 است.

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

    اکنون، بیایید به یک فرآیند محاسبه خط لوله گام به گام، تا حدودی ساده شده، و به دنبال آن تشکیل تصویر نگاه کنیم:

    1 - مرحله امداده‌های راس بافت به خطوط لوله راس، که پارامترهای هندسه را محاسبه می‌کنند، وارد می‌شوند. در این مرحله بلوک T&L (Transform & Lightning) متصل می شود. این بلوک وظیفه نورپردازی و تبدیل تصویر در صحنه های سه بعدی را بر عهده دارد. پردازش داده ها در خط لوله راس با هزینه برنامه سایه زن راس (Vertex Shader) انجام می شود.

    2 - اوه مرحلهدر مرحله دوم شکل‌گیری تصویر، یک بافر Z ویژه برای بریدن چند ضلعی‌های نامرئی و صورت اجسام سه‌بعدی متصل می‌شود. در مرحله بعد، فرآیند فیلتر بافت انجام می شود، برای این، سایه زن های پیکسل وارد "نبرد" می شوند. APIهای OpenGL یا Direct3D استانداردهایی را برای کار با آنها توصیف می کنند تصاویر سه بعدی. برنامه یک تابع استاندارد OpenGL یا Direct3D را فراخوانی می کند و سایه زن ها این عملکرد را انجام می دهند.

    مرحله 3.در مرحله نهایی ساخت تصویر در پردازش خط لوله، داده ها به یک فریم بافر ویژه منتقل می شوند.

    بنابراین ، ما به طور خلاصه ساختار و اصول عملکرد پردازنده های گرافیکی را بررسی کردیم ، البته درک اطلاعات "آسان" نیست ، اما برای توسعه کلی رایانه ، فکر می کنم بسیار مفید خواهد بود :)

    همه ما می دانیم که یک کارت گرافیک و یک پردازنده وظایف کمی متفاوت دارند، اما آیا می دانید در ساختار داخلی چه تفاوتی با یکدیگر دارند؟ مثل CPU واحد پردازش مرکزیو GPU (انگلیسی - واحد پردازش گرافیکی) پردازنده هستند و شباهت های زیادی بین آنها وجود دارد، اما برای انجام وظایف مختلف طراحی شده اند. از این مقاله بیشتر در این مورد خواهید آموخت.

    CPU

    وظیفه اصلی CPU به زبان ساده، اجرای زنجیره ای از دستورالعمل ها در کوتاه ترین زمان ممکن است. CPU به گونه‌ای طراحی شده است که می‌تواند چندین مورد از این زنجیره‌ها را همزمان اجرا کند یا یک جریان دستورالعمل‌ها را به چندین تقسیم کند و پس از اجرای جداگانه، آنها را به ترتیب صحیح در یکی دوباره ادغام کند. هر دستور در یک رشته به دستورالعمل هایی بستگی دارد که از آن پیروی می کنند، به همین دلیل است که CPU واحدهای اجرایی بسیار کمی دارد و تمام تاکید بر سرعت اجرا و کاهش زمان های بیکاری است که با استفاده از حافظه کش و خط لوله به دست می آید.

    پردازنده گرافیکی

    عملکرد اصلی GPU ارائه گرافیک سه بعدی و جلوه های بصری است، بنابراین، همه چیز در آن کمی ساده تر است: باید چند ضلعی ها را در ورودی دریافت کند و پس از انجام عملیات ریاضی و منطقی لازم روی آنها، مختصات پیکسل را ارائه دهد. در خروجی در واقع، کار GPU به کار بر روی تعداد زیادی وظایف مستقل کاهش می یابد، بنابراین، حاوی مقدار زیادی حافظه است، اما نه به سرعت CPU، و تعداد زیادی واحد اجرایی: GPU های مدرن دارای 2048 یا بیشتر از آنها، در حالی که مانند یک CPU، تعداد آنها می تواند به 48 برسد، اما اغلب تعداد آنها در محدوده 2-8 قرار دارد.

    تفاوت های اصلی

    تفاوت اصلی CPU با GPU در نحوه دسترسی به حافظه است. در GPU، متصل است و به راحتی قابل پیش بینی است - اگر یک بافت تکسل از حافظه خوانده شود، پس از مدتی نوبت تکسل های همسایه می رسد. با ضبط، وضعیت مشابه است - یک پیکسل در فریم بافر نوشته می شود و پس از چند چرخه، پیکسلی که در کنار آن قرار دارد ضبط می شود. همچنین، پردازنده گرافیکی، بر خلاف پردازنده‌های همه منظوره، به سادگی به حافظه کش زیادی نیاز ندارد و بافت‌ها تنها به ۱۲۸ تا ۲۵۶ کیلوبایت نیاز دارند. علاوه بر این، حافظه سریع‌تر روی کارت‌های ویدئویی استفاده می‌شود و در نتیجه، GPU چندین برابر پهنای باند در دسترس دارد، که برای محاسبات موازی که با جریان‌های داده عظیم کار می‌کنند نیز بسیار مهم است.

    تفاوت های زیادی در پشتیبانی چند رشته ای وجود دارد: CPU 1 را اجرا می کند 2 رشته محاسباتی در هر هسته پردازنده، و GPU می تواند چندین هزار رشته در هر چند پردازنده را پشتیبانی کند، که چندین مورد در یک تراشه وجود دارد! و اگر تعویض از یک رشته به رشته دیگر برای CPU صدها چرخه هزینه داشته باشد، آنگاه GPU چندین رشته را در یک چرخه سوئیچ می کند.

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

    تفاوت سرعت محاسبات

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

    استخراج بیت کوین

    ماهیت ماینینگ این است که رایانه های واقع در نقاط مختلف زمین مسائل ریاضی را حل می کنند که در نتیجه بیت کوین ایجاد می شود. تمام نقل و انتقالات بیت کوین در طول زنجیره به ماینرها منتقل می شود که وظیفه آنها انتخاب از بین میلیون ها ترکیب یک هش منفرد است که با تمام تراکنش های جدید مطابقت دارد و یک کلید مخفی که به استخراج کننده پاداشی معادل 25 بیت کوین در یک زمان ارائه می دهد. از آنجایی که سرعت محاسبات مستقیماً به تعداد واحدهای اجرا بستگی دارد، معلوم می شود که GPU برای انجام این نوع کارها بسیار مناسب تر از CPU است. هر چه تعداد محاسبات بیشتر باشد، شانس دریافت بیت کوین بیشتر می شود. حتی به ساخت کل مزارع از کارت های ویدئویی رسید.

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

    بخور چندین نوعچنین تراشه هایی گسستهو ساخته شده است. البته لازم به ذکر است که اولی بهتر است. روی ماژول های جداگانه قرار می گیرد. قدرتمند است و به خوبی نیاز دارد خنک کننده. دومی تقریباً روی همه رایانه ها نصب شده است. داخل CPU تعبیه شده و مصرف انرژی را چندین برابر کاهش می دهد. البته، نمی توان آن را با تراشه های گسسته کامل مقایسه کرد، اما در حال حاضر بسیار خوب نشان می دهد نتایج.

    نحوه عملکرد پردازنده

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

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

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

    در انتخاب گوشی هوشمند ابتدا به چه نکاتی توجه می کنیم؟ هزینه را برای لحظه ای کنار بگذاریم، البته اولین چیزی که انتخاب می کنیم اندازه صفحه نمایش است. سپس به دوربین، مقدار رم، تعداد هسته ها و فرکانس پردازنده علاقه مند هستیم. و در اینجا همه چیز ساده است: به ترتیب هر چه بیشتر، بهتر، و کمتر، بدتر. با این حال، دستگاه های مدرن از یک پردازنده گرافیکی نیز استفاده می کنند که به عنوان GPU نیز شناخته می شود. چیست، چگونه کار می کند و چرا دانستن در مورد آن مهم است، در زیر توضیح خواهیم داد.

    معماری GPU تفاوت چندانی با معماری CPU ندارد، با این حال، برای کارهای گرافیکی کارآمدتر بهینه شده است. اگر GPU را مجبور به انجام هر گونه محاسبات دیگری کنید، از بدترین سمت خود را نشان می دهد.

    کارت‌های ویدئویی که به‌صورت جداگانه متصل می‌شوند و با قدرت‌های بالا کار می‌کنند، فقط در لپ‌تاپ‌ها و رایانه‌های رومیزی وجود دارند. اگر در مورد دستگاه ها صحبت می کنیم، پس در مورد گرافیک یکپارچه و چیزی که ما SoC (سیستم روی یک تراشه) می نامیم صحبت می کنیم. به عنوان مثال، پردازنده دارای یک پردازنده گرافیکی Adreno 430 یکپارچه است. حافظه ای که برای کار خود استفاده می کند حافظه سیستم است، در حالی که کارت های ویدئویی در رایانه های شخصی رومیزی به حافظه اختصاص داده شده است که فقط در دسترس آنها است. درست است، تراشه های هیبریدی وجود دارد.

    در حالی که یک پردازنده با چندین هسته با سرعت بالا کار می کند، یک پردازنده گرافیکی دارای هسته های پردازنده زیادی است که با سرعت پایین کار می کنند و فقط محاسبات راس و پیکسل را انجام می دهند. پردازش راس بیشتر حول سیستم مختصات می چرخد. GPU وظایف هندسی را با ایجاد یک فضای سه بعدی روی صفحه انجام می دهد و به اشیا اجازه می دهد در آن حرکت کنند.

    پردازش پیکسلی فرآیند پیچیده تری است که به قدرت محاسباتی زیادی نیاز دارد. در این مرحله، GPU لایه‌های مختلف را پوشش می‌دهد، افکت‌ها را اعمال می‌کند، هر کاری را برای ایجاد بافت‌های پیچیده و گرافیک واقعی انجام می‌دهد. پس از پردازش هر دو فرآیند، نتیجه به صفحه گوشی هوشمند یا تبلت شما منتقل می شود. همه اینها میلیون ها بار در ثانیه زمانی که شما در حال انجام یک بازی هستید اتفاق می افتد.

    البته این داستان در مورد کار پردازنده گرافیکی بسیار سطحی است، اما کافی است یک ایده کلی درست به دست آورید و بتوانید با رفقا یا فروشنده لوازم الکترونیکی صحبت کنید یا بفهمید که چرا دستگاه شما در طول این مدت داغ شده است. بازی در ادامه، قطعاً در مورد مزایای GPU های خاص در کار با بازی ها و وظایف خاص صحبت خواهیم کرد.

    با توجه به AndroidPit