CPU و GPU دو عضو مهم در سخت افزار سیستمها هستند. تفاوت CPU و GPU در عملکرد و کاربرد آنها خواهد بود. با بررسی تفاوت پردازنده گرافیکی و پردازنده مرکزی به مشخصات زیادی برای نتیجهی بهتر دست پیدا خواهیم کرد.
پردازندهها (CPU) و پردازندههای گرافیکی (GPU) کاملا شبیه به همدیگر هستند. هر کدام از این سختافزارها از صدها میلیون ترانزیستور ساخته شدهاند و میتوانند هزاران عملیات را در ثانیه پردازش کنند. حال سوال اینجاست که CPU و GPU چه تفاوتی میتوانند با هم داشته باشند؟ ابتدا بیایید در مورد هرکدام از این سختافزارها صحبت کنیم.
فهرست مطالب
آنچه دربارهی تفاوت CPU و GPU خواهید خواند
- پردازنده (CPU) چیست؟
- پردازنده گرافیکی (GPU) چیست؟
- تفاوت CPU و GPU در چیست؟
- محاسبات GPU چه شرایطی دارد؟
- GPU برای حل چه مشکلاتی مناسب است؟
- آیا GPU اهمیت بیشتری از CPU دارد؟
آشنایی با پردازنده (CPU)
CPU که واحد پردازش مرکزی نامیده میشود، اغلب بهعنوان مغز رایانه شناخته میشود. این مجموعه دارای میلیونها ترانزیستور است که میتواند برای انجام محاسبههای متنوعی مورداستفاده قرار گیرد. یک CPU استاندارد معمولا بین یک الی چهار هسته پردازشی با کلاکی معادل ۱ تا ۴ گیگاهرتز دارد. پردازنده مرکزی قدرت بسیار زیادی دارد، چرا که میتواند همهی کارهای کامپیوتر را به تنهایی انجام دهد. اگر کامپیوتر قادر به انجام کاری است، این بدان دلیل است که پردازنده مرکزی میتواند آن را به سرانجام رساند. برنامه نویسان از طریق مجموعه دستورالعملهای گسترده و لیستی از ویژگیهای طولانی که توسط همه پردازندهها به اشتراک گذاشته میشود، به این امر مهم دست مییابند.
آشنایی با پردازنده گرافیکی (GPU)
GPU واحد پردازش گرافیک نامیده میشود و یک نوع تخصصی از ریزپردازنده است. از این سخت افزار برای نمایش گرافیک و انجام کارهای محاسباتی بسیار خاصی استفاده میشود و معمولا بهینهسازیهای زیادی نیز روی آن انجام میشود. این سخت افزار سرعت کلاک کمتری نسبت به CPU دارد، اما تعداد هستههای پردازش آن، چندین برابر بیشتر از CPU است. شما تقریبا میتوانید GPU را بهعنوان یک CPU اختصاصی در نظر بگیرید که برای یک هدف کاملا خاص ساخته شده است. حتی یک پخش فیلم ساده به معنای انجام عملیاتی است که بارها و بارها باید تکرار شوند و این همان چیزی است که GPU در آن بهترین عملکرد خود را نشان خواهد داد. پردازنده گرافیکی هزاران هسته پردازشی را بهطور همزمان اجرا میکند. هر هسته، اگرچه کندتر از هسته پردازنده مرکزی است، اما بهویژه در عملیات ریاضی اساسی موردنیاز برای یک پخش فیلم تنظیم شده است. بدین ترتیب یک موازی سازی گسترده در GPU انجام میشود و این همان چیزی است که GPU را قادر به ارائه گرافیک سه بعدی پیچیده موردنیاز بازیهای مدرن میکند.
بهنوعی میتوانیم GPU را روح کامپیوتر بنامیم. با این وجود طی دههی گذشته، برنامههای گرافیکی از محدودهی کیس رایانههای شخصی جدا شدهاند. GPU ها باعث رونق هوش مصنوعی در جهان شدهاند و متفاوت از قطعات کامپیوتر به رشد خود ادامه میدهند. GPU توانستهاند که کنسولهای بازی را نیز متحول کرده و تجربهی بازیها را هرچه بیشتر به دنیای واقعی نزدیکتر کنند. آنها بخش مهمی از ابر رایانههای مدرن هستند و در مراکز مهم و گسترده مورد استفاده قرار میگیرد. این قطعهی سخت افزاری در مقیاسهای فوقالعاده زیادی مورد استفاده قرار میگیرد و هنوز هم مهمترین قطعه برای گیمرهایی است که بهصورت حرفهای این کار را انجام میدهند. GPU ها تبدیل به شتاب دهندههایی شدهاند که سرعت انجام کارها از جمله رمزگذاری شبکه و هوش مصنوعی را افزایش میدهد.
همچنین بخوانید: 10 روش ساده برای پیدا کردن مدل کارت گرافیک در هر سیستمی که دارید
این قطعات میتوانند همچنان باعث پیشرفت در صنعت بازی شده و گرافیک حرفهای را در داخل ایستگاههای کاری، رایانههای شخصی و لپ تاپهای جدید ایجاد کنند. در قدیم از GPU برای انجام موازی کارها استفاده می شده است و هماکنون با عنوان واحد پردازش گرافیک شناخته میشود. این قطعه علیرغم جدید بودنش، ایدهای بسیار قدیمی در پشتش دارد و این همان چیزی است که GPU ها را بسیار قدرتمندتر میکند. برای اطمینان بیشتر، شما باید بدانید که پردازندههای مرکزی همچنان از ضرورتهای کامپیتر هستند. پردازندههای سریع و همه کاره میتوانند مجموعهای از وظایف را که نیاز به تعامل زیادی دارند، انجام دهند. بهعنوان مثال، فراخوانی اطلاعات در یک هارددیسک، طی فشار دادن دکمههای مختلف توسط کاربر توسط پردازنده انجام میشود.
در مقابل این پردازندههای گرافیکی هستند که مشکلات پیچیده را برطرف کرده و میتوانند هزاران یا میلیونها وظیفه را بهصورت جداگانه انجام دهند. GPU میتواند این کارها را تقسیم کرده و در هستههای مختلف انجام دهد یا اینکه به یکباره به سراغشان برود. این امر سبب میشود که گرافیک ایدهآلی را در کامپیوتر خود داشته باشید. جایی که بافتها، نورپردازی و رندرینگ میتوانند به یکباره انجام شده و تصاویر را در یک لحظه به کاربر نشان میدهند.
تفاوت پردازنده گرافیکی و پردازنده مرکزی در چه مواردیست؟
اگر CPU را به یک ابزار کاری تشبیه کنیم، GPU در مقام یک چاقوی بسیار تیز است. شما نمیتوانید پیچ و مهرهی یک دستگاه را با چاو محکم کنید، اما قطعا همین چاقو میتواند در برش بسیاری از چیزها بهترین عملکرد خود را نشان دهد. پردازنده گرافیکی فقط میتواند کسری از بسیاری از عملیاتهای پردازنده را انجام دهد، اما این کار را با سرعتی باورنکردنی انجام خواهد داد. یک پردازنده گرافیکی از صدها هسته برای ایجاد محاسبات حساس به زمان برای هزاران پیکسل در یک بار استفاده میکند و امکان نمایش گرافیکهای سه بعدی پیچیده را فراهم میکند. با این حال، به همان سرعتی که GPU میتواند پیشرفت کند، فقط میتواند عملیات مبهم و پیچیده را انجام دهد.
بهعنوان مثال، یک پردازنده گرافیکی مدرن مانند Nvidia GTX 1080 که دارای ۲۵۶۰ هسته است، به لطف وجود همین هستهها، میتواند ۲۵۶۰ دستورالعمل یا عملیات را در طی یک کلاک ساعت انجام دهد. هنگامی که شما پیکسلهای یک صفحه نمایش را یک درصد روشنتر کنید، این پردازنده این کار را بسیار عالی انجام خواهد داد. برای مقایسه، یک پردازنده مرکزی چهار هستهای i5 اینتل تنها میتواند چهار دستور همزمان را در هر کلاک ساعت اجرا کند.
با این حال، پردازدهها انعطاف پذیرتر از پردازندههای گرافیکی هستند. پردازندهها مجموعه دستورالعملهای بزرگتری دارند، بنابراین میتوانند طیف وسیعی از کارها را انجام دهند. پردازندهّا همچین میتوانند با حداکثر کلاک ساعت بالاتری کار کنند و توانایی مدیریت ورودی و خروجی همهی اجزای کامپیوتر را نیز دارند. بهعنوان مثال، CPU ها میتواند حافظه مجازی را که برای اجرای یک سیستمعامل مدرن ضروری است، سازماندهی کرده و ادغام کنند. این مورد یقینا توسط یک پردازنده گرافیکی قابل انجام نخواهد بود.
از نظر معماری، پردازنده مرکزی متشکل از چندین هسته با تعدادی زیادی از حافظه کش است که میتواند بهصورت همزمان، چند رشته نرم افزار را اداره کند. در مقابل، یک پردازنده گرافیکی از صدها هسته تشکیل شده است و میتواند هزاران رشته را بهصورت همزمان کنترل کند. پردازندههای گرافیکی فناوری محاسبات موازی را در اختیار دارند و میتوانند بسیار قدرتمندتر عمل کنند، اما انعطاف پذیری چندانی ندارند. این یک فناوری با گذشتهی درخشان است که نوابغ کامپیوتر مانند سیموری کری در آن ایفای نقش کردهاند. اما GPU به جای اینکه شکل ابر رایانهای hulking را به خود بگیرد، این ایده را روی دسکتاپ و کنسولهای بازی برای بیش از یک میلیارد گیمر اجرا میکند.
گرافیک رایانهای برای اولینبار از چندین برنامه Killer تشکیل شده بود و موتور عظیمی را برای تحقیق و توسعه در پشت GPU ها فراهم میکرد و باعث پیشرفت این فناوری شده بود. همهی این موارد GPU را قادر میساخت که از تراشههایی با عملکرد ثابتتر استفاده کرده و عملکرد ویژهای در بازارهای متفاوت رقابتی داشته باشند. عامل دیگری که قدرت بالای GPU را قابل دسترستر میکند، CUDA نام دارد. این پلتفرم محاسباتی موازی برای اولینبار در سال ۲۰۰۷ منتشر شده است و به رمزگذاران این امکان را میدهد تا با درج چند دستور ساده در کدهای خود، از قدرت محاسبه پردازندههای گرافیکی برای پردازشهای عمومی استفاده کنند.
این قابلیت همچنین باعث میشود که GPU ها در زمینههای جدید نیز بتوانند شگفتآور ظاهر شوند. با پشتیبانی از تعداد استانداردی از فناوریهای نوین که به سرعت در حال رشد هستند و میتوانید به Dockers و Kubernetes اشاره کنیم، برنامهها میتوانند روی یک GPU ارزان قیمت نیز مورد آزمایش قرار گرفته و سپس در GPU های سرور سریعتر و پیچیدهتر و همچنین همهی ارائه دهندگان خدمات ابری بزرگ مقیاس بندی شوند. با پایان یافتن قانون مور، پردازندههای گرافیکی که توسط انویدیا در سال ۱۹۹۹ اختراع شد، توانستند به موقع به بازار بیایند. طبق قانون مور، تعداد ترانزیستورهایی که میتوانند در یک مدار مجتمع قرار بگیرند، تقریبا هر دو سال دو برابر میشوند. برای دههها، این باعث افزایش سریع قدرت محاسبات شده است. با این حال، این قانون در برابر محدودیتهای سخت سختافزاری نیز قرار گرفته است.
تامین سرعت عالی توسط GPU ها
CPU راهی برای ادامهی سرعتگیری برنامهها محسوب میشود. همانند کارت گرافیک که در ابر رایانه و هوش مصنوعی مورد استفاده قرار میگیرد، با تقسیم وظایف بین بسیاری از پردازندهها ارائه میشوند. به گفتهی جان هنسی و دیوید پترسیون که برندگان مسابقهی A.M 2017 بودند، چنین شتاب دهندههایی برای آیندهی نیمه هادیها حیاتی هستند. در طول دههی گذشته، این کلید در طیف فزایندهای از برنامهها ثبت شده است. پردازندههای گرافیکی برای هر واحد انرژی بسیار بیشتری از پردازندهها دارند. این امر آنها را به کلیدی برای رایانههای بزرگ تبدیل کرده است و در غیر اینصورت، محدودیت شبکههای برقی امروزی را میتوانند پشت سر گذارند.
در هوش مصنوعی، GPU ها به کلیدی در فناوری مرسوم به یادگیری عمیق تبدیل شدهاند. یادگیری عمیق مقدار زیادی داده را از طریق شبکههای عصبی دریافت کرده و آنها را آموزش میدهد تا وظایف بیش از حد پیچیده را توصیف کنند و صرفا متکی به رمزگذاری انسانی نباشند. این توانایی یادگیری عمیق به لطف گنجاندن هستههای تنسور اختصاصی در پردازندههای گرافیکی انویدیا تسریع میشود. هستههای تنسور عملیات ماتریسی بزرگ را در قلب هوش مصنوعی سرعت بخشیده و محاسبات ضرب و جمعآوری ماتریس با دقت کافی در یک عملیات انجام خواهد شد.
کاربرد GPU در صنعت خودرو
این امر علاوه بر سرعت بخشیدن به انواع کارهای سنتی هوش مصنوعی، اکنون برای سرعت بخشیدن به بازیها نیز مورد استفاده قرار میگیرد. در صنعت خودرو نیز پردازندههای گرافیکی مزایای بسیار زیادی دارند. همانطور که انتظار میرود، آنها میتوانند قابلیتهای تشخیص تصویر بینظیری را ارائه دهند. البته آنها در وسیلههای نقلیه خودرران نیز بسیار کاربردی هستند و میتوانند تعداد زیادی از سناریوهای مختلف از دنیای واقعی را یاد گرفته و خود را با آن سازگار کنند.
همانطور که انتظار دارید، در رباتیک، پردازندههای گرافیکی برای توانایی درک ماشین آلات در محیط خود کلیکی هستند. با این حال، توانایی هوش مصنوعی آنها به کلید ماشینهایی تبدیل شده است که میتوانند کارهای پیچیدهای مانند پیشمایش خودکار را یاد بگیرند. در مراقبتهای بهداشتی و علوم زندگی نیز میتوان از مزایای زیادی GPU ها بهره برد. البته آنها برای کارهای تصویربرداری ایدهآل هستند. اما یادگیری عمیق مبتنی بر GPU سرعت تجزیه و تحلیل آن تصاویر را بسیار زیاد میکند. آنها میتوانند دادههای پزشکی را به قسمتهای کوچک تقسیم کرده و کمک کنند که این دادهها از طریق یادگیری عمیق، به قابلیتهای جدیدی تبدیل شوند.
بهطور خلاصه میتوان گفت که GPU ضروری بسیاری برای کامپیوتر و دیگر شاخههای علم کامپیوتر دارند. آنها میتوانند به بازی و گرافیک آن سرعت بخشیده و کیفیت بالایی را تامین کنند. هم اکنون این قطعات در حال شتاب بخشیدن به حوزههای مختلف علم هستند و میتوانند در تامین قدرت تفاوتهای زیادی را دنیا ایجاد کنند.
بیشتر بخوانید: مقایسه مادربرد ایسوس و گیگابایت
محاسبات GPU چه شرایطی دارد؟
گرچه GPU ها در رندر کردن ویدیو بهترین عملکرد خودشان را دارند، اما از نظر فنی توانایی انجام کارهایی بیشتری نیز از آنها انتظار میرود. پردازش گرافیک تنها یک نوع کار محاسباتی تکراری و کاملا موازی است. سایر وظایف مانند استخراج بیت کوین و شکستن رمز عبور، به همان انواع مجموعه دادههای عظیم و عملیات ساده ریاضی متکی هستند. بههمین دلیل برخی از افراد برای اجرای عملیات غیرگرافیکی نیز از GPU استفاده میکند. این موضوع بیشتر با عنوان «عملیات محاسباتی GPU» شناخته میشود.
GPU برای حل چه مشکلاتی مناسب است؟
محاسبات GPU به معنای استفاده از GPU همراه با CPU برای تسریع در کاربردهای علمی، تحلیلی، مهندسی، مصرف کننده و سازمانی است. سالها است که GPU ها از نمایش تصاویر و حرکت در نمایشگرهای کامپیوتر استفاده میکنند، اما از نظر فنی قادر به انجام کارهای بیشتری نیز هستند. پردازندههای گرافیکی در صورت نیاز به محاسبات گسترده برای یک واحد کاری، میتوانند وارد بازی شوند. این کارها ممکن است که شامل موارد زیر باشد.
بازیها
یک واحد پردازنده گرافیک برای رندر سریع و فشردهسازی گرافیکی دنیای بازی ضروری است. رندر جلوههای ویژه و گرافیک سه بعدی پیچیده بهصورت real-time نیاز به قدرت محاسباتی بسیار جدی دارد. تسکهای مربوط به بازیهای مدرن برای CPU بسیار سنگین تلقی میشود. بازیها در زمینهی واقعیت مجازی، حتی یک قدم جلوتر از GPU ها محسوب میشوند. این موضوع بسیار باورپذیرتر است، چرا که GPU ها میتوانند با نورپردازی و سایه زنی مناسب، تصاویر واقع بینانه را به سرعت رندر کرده و آن را حفظ کنند.
تجسم سه بعدی
پردازندههای گرافیکی عملکرد viewport را در برنامههای تجسم سه بعدی مانند CAD فراهم میکنند. این نرم افزار به شما این امکان را فراهم میکند تا اشیا را بهصورت سه بعدی تجسم کنید. این موضوع به پردازندههای گرافیکی متکی است تا هنگام چرخش یا جابهجایی آنها، بتواند بهصورت real-time آنها را ترسیم کند.
پردازش تصویر
پردازندههای گرافیکی میتوانند میلیونها تصویر را با دقت پردازش کنند تا تفاوتها و شباهتها را بتوانید تشخیص دهید. این توانایی بهصورت گسترده در صنایعی مانند کنترل مرز، امنیت و پردازش اشعه ایکس پزشکی و غیره مورد استفاده قرار میگیرد. بهعنوان مثال، در سال ۲۰۱۰، ارتش ایالات متحده بیش از ۱۷۰۰ سیستم Sony PlayStation 3TM را به هم متصل کرد تا تصاویر ماهوارهای با وضوح بالا را با سرعت بیشتری پردازش کند.
بیگ دیتا
واحدهای گرافیکی با هزاران هسته محاسباتی و توان عملیاتی ۱۰ تا ۱۰۰ برابری در مقایسه با CPU ها، تنها گزینه برای پردازش دادههای بزرگ برای دانشمندان و صنعت گران هستند. از GPU ها برای بهتصویر کشیدن دادهها بهعنوان تسجم تعاملی استفاده میشود و آنها به مجموعه دادههای دیگر ادغام میشوند تا حجم و سرعت دادهها را کشف کنند. بهعنوان مثال، اکنون میتوانیم نقشههای پردازش ژنها را با پردازش دادهها و تجزیه و تحلیل واریانسها برای درک رابطه بین ترکیبات مختلف ژنها تقویت کنیم.
یادگیری عمیق ماشین
مدتی است که یادگیری ماشین پا به عرصه تکنولوژی گذاشته است، اما محاسبات قدرتمند و کارآمد GPU آن را به سطح جدیدی ارتقا داده است. یادگیری عمیق استفاده از شبکههای عصبی پیچیده برای ایجاد سیستمهایی است که میتوانند تشخیص ویژگی را از مقادیر عظیم دادههای آموزشی بدون تگ انجام دهند. GPU ها میتوانند تعداد زیادی از دادههای آموزش را پردازش کرده و شبکههای عصبی را در مناطقی مانند تجزیه و تحلیل تصویر و فیلم، تشخیص گفتار و پردازش زبان طبیعی، اتومیبلهای خودران، Computer Vision و موارد دیگر آموزش دهند.
GPU جایگزینی برای معماری CPU نیست، بلکه شتاب دهندهی قدرتمندی برای زیر ساختهای موجود است. محاسبات با شتاب زیاد GPU بخشهای زیادی از برنامهها را به سمت خودش کشانده و سبب میشود که باقی موارد روی CPU اجرا شوند. از دید کاربر، برنامهها خیلی سریعتر پیش رفته و البته محاسبات عمومی CPU همچنان ادامه خواهد داشت. GPU را میتوان ستون فقرات سخت افزاری تقریبا تمامی برنامههای محاسباتی فشرده بدانیم.
تفاوت CPU و GPU ؛ سنگینی ترازو به سمت کدام خواهد بود؟
GPU ها اغلب بهعنوان بخشی از بازی یا رندر فیلم مطرح میشوند. همزمان با گسترش هوش مصنوعی و فناوریهای یادگیری عمیق در کنار افزایش ارز رمزهای پایه و استخراج بیت کوین، برنامه نویسان شروع به استفاده از توانایی پردازش گرافیکی به چندین روش مختلف کردند. آنها سعی کردند که این روشها را با هم ادغام کرده و بازهم روشهای بیشتری را تولید کنند. با این حال، متوسط مصرف کنندگانی که به دنبال خرید GPU به عنوان یک بخش جداگانه هستند، احتمالا این کار را صرفا برای اجرای بهتر یک بازی رایانهای انجام میدهند و توجه خاصی به هوش مصنوعی یا یادگیری عمیق ندارند. مصرف کنندگان این قطعه را برای تجربهی باکیفیت و سریعتر بازیها لازم و ضروری میدانند. این بدان معنی است که GPU تاثیر بیشتری بر نحوه اجرای یک بازی ویدیویی AAA روی یک کامپیوتر نسب به پردازنده دارد. مگر اینکه CPU به میزان قابل توجهی در کامپیوتر موردنظر کم باشد و نیاز به خرید نسخهی بهتری از آن وجود داشته باشد.
با این وجود، بیشتر کارهای محاسباتی که ارتباطی با پردازش گرافیکی ندارند، به پردازنده مرکزی کامپیوتر اختصاص داده میشود. معمولا این تسکها شامل اجرای یک سیستمعامل، اجرای برنامههای پس زمینه مانند دیسکورد، مرورگرهای وب، دانلودها و غیره است. بنابراین میتوان ادعا کرد که CPU مهمترین قسمتهای کامپیوتر را اجرا میکند، چرا که بیشتر عملکرد یک کامپیوتر معمولی به همین موارد خلاصه میشود. بهعلاوه، هر رایانه شخصی به CPU نیاز دارد، اما همه از GPU استفاده نمیکنند. یک کارت گرافیک قدرتمند در یک بازی بیشتر مورد توجه قرار میگیرد، اما یک CPU عالی در سرتاسر کارهای یک کاربر معمولی موردتوجه خواهد بود. هنوز پیشرفت فناوری در زمینه کارت گرافیک جریان دارد و این موضوع را سریعتر از CPU مشاهده میکنیم. بنابراین در یک جمعبندی میتوان گفت که GPU باید چند برابر بیشتر از CPU ارتقا و بهروزرسانی شود.
نتیجهگیری
پردازندهها و پردازندههای گرافیکی اهداف تقریبا مشابهی با همدیگر دارند، اما برای کارهای محاسباتی مختلفی بهینه سازی شدهاند. یک کامپیوتر کارآمد برای عملکرد صحیح به هردوی آنها نیاز دارد.
شما میتوانید برای خرید و خواندن مقاله های بیشتر به فروشگاه مقداد آی تی و مجله مقداد آی تی مراجعه کنید.