CPU در مقابل GPU
CPU، مخفف واحد پردازش مرکزی، مغز یک سیستم محاسباتی است که "محاسبات" داده شده را به عنوان دستورالعمل از طریق یک برنامه کامپیوتری انجام می دهد. بنابراین، داشتن یک CPU فقط زمانی معنی دارد که شما یک سیستم محاسباتی "قابل برنامه ریزی" داشته باشید (به طوری که بتواند دستورالعمل ها را اجرا کند) و باید توجه داشته باشیم که CPU واحد پردازش "مرکزی" است، واحدی که واحدهای دیگر را کنترل می کند. بخش هایی از یک سیستم محاسباتی در شرایط امروزی، یک CPU معمولاً در یک تراشه سیلیکونی قرار دارد که به آن ریزپردازنده نیز میگویند. از سوی دیگر، GPU، مخفف واحد پردازش گرافیک، برای تخلیه وظایف پردازش گرافیکی فشرده محاسباتی از CPU طراحی شده است.هدف نهایی از چنین وظایفی این است که گرافیک را به یک واحد نمایشگر مانند مانیتور نمایش دهد. با توجه به اینکه چنین وظایفی کاملاً شناخته شده و خاص هستند، اساساً نیازی به برنامه ریزی ندارند و علاوه بر این، به دلیل ماهیت واحدهای نمایشگر، چنین وظایفی ذاتاً موازی هستند. مجدداً، در شرایط فعلی، در حالی که GPUهای کمتر توانا معمولاً در همان تراشه سیلیکونی قرار دارند که در آن CPU (این تنظیمات به عنوان GPU یکپارچه شناخته میشود) قرار دارند، GPUهای توانمندتر و قدرتمندتر در تراشه سیلیکونی خودشان یافت میشوند. معمولاً روی یک PCB جداگانه (برد مدار چاپی).
CPU چیست؟
اصطلاح CPU بیش از پنج دهه است که در سیستمهای محاسباتی استفاده میشود و تنها واحد پردازشی در رایانههای اولیه بود تا زمانی که واحدهای پردازشی «دیگر» (مانند GPU) برای تکمیل قدرت پردازش آن معرفی شدند. دو جزء اصلی یک CPU عبارتند از واحد منطق حسابی (با نام مستعار ALU) و واحد کنترل (با نام مستعار CU). ALU یک CPU مسئول عملیات حسابی و منطقی سیستم محاسباتی است و CU مسئول واکشی برنامه دستورالعمل از حافظه، رمزگشایی آنها و دستور دادن به واحدهای دیگر مانند ALU برای اجرای دستورالعمل ها است.بنابراین، واحد کنترل CPU مسئول ایجاد شکوه برای CPU به عنوان واحد پردازش "مرکزی" است. CU برای دریافت دستورالعمل ها از حافظه، دستورالعمل ها باید به عنوان برنامه در حافظه ذخیره شوند و بنابراین، چنین سیستم دستوری به عنوان "برنامه های ذخیره شده" نیز شناخته می شود. واضح است که CU دستورالعمل ها را اجرا نمی کند، اما همین کار را با برقراری ارتباط با واحدهای مناسب مانند ALU تسهیل می کند.
GPU (با نام مستعار VPU) چیست؟
اصطلاح واحد پردازش گرافیک (GPU) در اواخر دهه نود توسط انویدیا، یک شرکت تولید کننده پردازنده گرافیکی، معرفی شد که ادعا می کرد اولین GPU جهان (GeForce256) را در سال 1999 به بازار عرضه کرده است. طبق ویکی پدیا، در زمان GeForce256 NVIDIA GPU را به صورت زیر تعریف کرد: "پردازنده تک تراشه با تبدیل یکپارچه، نورپردازی، تنظیم/بریده شدن مثلث و موتورهای رندر که قادر به پردازش حداقل 10 میلیون چند ضلعی در ثانیه است". چند سال بعد، رقیب NVIDIA ATI Graphics، یک شرکت مشابه دیگر، یک پردازنده مشابه (Radeon300) با عبارت VPU برای واحد پردازش بصری منتشر کرد.با این حال، همانطور که واضح است که اصطلاح GPU محبوب تر از اصطلاح VPU شده است.
امروزه پردازندههای گرافیکی در همه جا مستقر هستند، مانند سیستمهای تعبیهشده، تلفنهای همراه، رایانههای شخصی و لپتاپها و کنسولهای بازی. GPU های مدرن در دستکاری گرافیک بسیار قدرتمند هستند و قابل برنامه ریزی هستند تا بتوانند با موقعیت ها و برنامه های مختلف سازگار شوند. با این حال، حتی در حال حاضر، GPU های معمولی در کارخانه از طریق آنچه به عنوان سیستم عامل شناخته می شوند، برنامه ریزی می شوند. به طور کلی، پردازندههای گرافیکی برای الگوریتمهایی که پردازش بلوکهای بزرگ داده به صورت موازی انجام میشود، مؤثرتر از پردازندههای مرکزی هستند. انتظار می رود، زیرا GPU ها برای دستکاری گرافیک های کامپیوتری طراحی شده اند، که طبیعت بسیار موازی دارند.
همچنین این مفهوم جدید به نام GPGPU (محاسبات با هدف عمومی در GPU) برای استفاده از GPUها برای بهره برداری از موازی سازی داده های موجود در برخی از برنامه ها (مانند بیوانفورماتیک) و بنابراین انجام پردازش های غیر گرافیکی در GPU وجود دارد.. با این حال، آنها در این مقایسه در نظر گرفته نمی شوند.
تفاوت بین CPU و GPU چیست؟• در حالی که دلیل استقرار یک CPU این است که به عنوان مغز یک سیستم محاسباتی عمل کند، یک GPU به عنوان یک واحد پردازش مکمل معرفی شده است که پردازش و پردازش گرافیکی فشرده محاسباتی مورد نیاز برای وظیفه را انجام می دهد. نمایش گرافیک به واحدهای نمایشگر. • طبیعتاً پردازش گرافیکی ذاتاً موازی است و بنابراین به راحتی می توان آن را موازی کرد و شتاب داد. • در عصر سیستمهای چند هستهای، CPUها تنها با چند هسته طراحی میشوند که میتوانند چند رشته نرمافزاری را مدیریت کنند، که میتوانند در یک برنامه کاربردی (دستورالعمل و موازیسازی سطح رشته) مورد سوء استفاده قرار گیرند. پردازندههای گرافیکی با صدها هسته طراحی شدهاند تا از موازیسازی موجود استفاده کنند. |