حتما شما هم در هنگام خرید گجتهایی مانند لپتاپها، کامپیوترهای دسکتاپ، تبلت یا گوشی هوشمند با عبارتهایی مانند «پردازندهی ۲ هستهای»، «۴ هستهای»، «۸ هستهای» و … روبرو شدهاید. اما واقعا این اعداد و ارقام چه مفهومی دارند؟
هنگامی که قصد داریم یک گجت هوشمند انتخاب کنیم، یکی از مهمترین معیارهای ما برای انتخاب، توجه به نوع پردازنده است. اما صحبتهای ضد و نقیض زیادی دربارهی پردازندهها وجود دارد، بهویژه در بخش هستههای پردازشی. برای مثال، آیا شما به پردازندهی ۲ هستهای نیاز دارد؟ یا ۴ هستهای؟ ۶ هستهای و ۸ هستهای چطور؟
در ادامه با سپهر دیجیتال همراه باشید تا کمی موشکافانهتر به بررسی این موضوع بپردازیم:
۲ هستهای و ۴ هستهای
باید بدانید که:
- همیشه تنها یک چیپ پردازشی وجود دارد. اما این چیپ میتواند یک، ۲، ۴، ۶، ۸، ۱۰، ۱۲ و حتی ۱۶ هستهای باشد. بنابراین یک CPU تک هستهای یعنی چیپ پردازشی فقط یک هسته دارد و پردازندهی ۲ هستهای فقط ۲ هسته دارد و به همین ترتیب.
- در حال حاضر، بهترین پردازندهای که بهعنوان یک کاربر خانگی میتوان تهیه کرد، ۱۸ هستهای است. البته پردازندهی ۶۴ هستهای AMD Threadripper هم در دسترس است، اما قدرت پردازشیاش بسیار فراتر از آن چیزی است که کاربران خانگی فکر میکنند.
- هر هسته بخشی از چیپ است که کار پردازش را برعهده دارد. یعنی هر هسته یک واحد پردازش مرکزی (CPU) است.
در این مطلب سعی میکنیم به بررسی تفاوتهای پردازندههای ۲ هستهای و ۴ هستهای در رایانههای بپردازیم و از گوشیهای هوشمند و تبلتها صرفنظر کردهایم.
تفاوتهای بین پردازندههای ۲ هستهای و ۴ هستهای
ممکن است فکر کنید تعداد هستهی بیشتر به معنی سرعت پردازش بیشتر رایانهی شماست، اما این موضوع همیشه درست نیست و بحث کمی پیچیدهتر از اینهاست.
تعداد هستههای بیشتر تنها هنگامی سرعت بیشتری را ارائه میکنند که یک برنامه بتواند وظایف را بین هستهها تقسیم کند. همهی برنامهها اینگونه توسعه داده نشدهاند، پس همیشه نمیتوان تعداد بیشتر هسته را به معنای سرعت بالاتر در نظر گرفت.
هر هسته به اصطلاح یک سرعت کلاک (Clock Speed) دارد که در کنار نوع معماری هسته، عاملی مهم در سرعت آن در نظر گرفته میشوند. یک پردازندهی ۲ هستهای جدیدتر با کلاک اسپید بیشتر اغلب میتواند از یک پردازندهی ۴ هستهای قدیمی با کلاک اسپید پایینتر بهتر عمل کند.
مصرف انرژی
تعداد هستهی بیشتر به معنی مصرف انرژی بیشتر توسط پردازنده هم هست. زمانی که پردازنده شروع به فعالیت میکند، باید نیرو را در یک زمان به همهی هستهها برساند.
تولید کنندگان چیپستها همواره در تلاش بودهاند تا میزان مصرف انرژی را کاهش دهند و پردازندههای بهینهتری در این زمینه تولید کنند، اما بهصورت کلی، پردازندههای ۴ هستهای نسبت به ۲ هستهای با سرعت بیشتری باتری لپتاپ شما را خالی میکنند.
هستههای بیشتر، گرمای بیشتر
عوامل بیشتری علاوه بر تعداد هستهها در میزان گرمای تولید شده توسط پردازنده موثر هستند، ولی باز هم طبق یک قاعدهی کلی، هستههای بیشتر منجر به تولید گرمای بیشتر میشوند. با توجه به گرمای اضافی، تولید کنندهها باید بهدنبال لولههای خنک کنندهی قویتر یا راهکارهای بهتر برای خنک کردن پردازنده باشند.
آیا پردازندههای ۴ هستهای گرانتر از ۲ هستهای هستند؟
هستههای بیشتر همیشه به معنی گرانتر بودن پردازنده نیستند. همانطور که پیشتر هم اشاره شد، کلاک اسپید، نسخهی معماری و بعضی موارد دیگر در قیمت یک پردازنده موثر هستند. اما اگر تمامی این عوامل بین پردازندههای ۲ و ۴ هستهای برابر باشند، تعداد هسته بیشتر میتواند منجر به افزایش قیمت شود.
بهینهسازی نرم افزار برای هستههای CPU
در این بخش باید به حقایق پنهانی اشاره کنیم که تولید کنندگان چیپستها تمایل ندارند ما از آنها آگاه شویم. عملکرد بهتر پردازندهها همیشه وابسته به تعداد هستههای موجود نیست، بلکه نرم افزاری که روی این هستهها اجرا میشود هم اهمیت دارد.
برنامهها باید بهصورت ویژه برای استفاده از چند پردازنده بهینه شوند. در گذشته «نرم افزارهای چند ریسمانی» یا «چند رشتهای» چندان رایج نبودند. همچنین، امروزه تقریبا غیر ممکن است بتوانید پردازندهی تک هستهای برای کامپیوتر خود پیدا کنید، پس مسئلهی بهینهسازی نرم افزار برای هستهها مانند گذشته محدود نیست.
برای مثال، نرم افزار Adobe Premier Pro در هنگام ویرایش، به هستههای مختلف وظایف مختلفی را محول میکند. با توجه به اینکه لایههای مختلف بسیاری در ویرایش ویدیو نقش دارند، اینکه هر هسته روی وظیفهای مشخص متمرکز شود منطقی بهنظر میرسد.
همچنین گوگل کروم هستههای مختلف را به کار روی تبهای مختلف هدایت میکند. اما در این مورد مشکلی هم وجود دارد: به محض اینکه شما یک صفحهی وب را در یک تب باز میکنید، معمولا پس از آن فرایند ایستا میشود، به این معنی که دیگر نیازی به پردازشهای بعدی نیست و ادامهی کار مربوط به ذخیره کردن صفحه در حافظهی رم دنبال میشود. این یعنی با وجود اینکه هسته میتواند در تب پسزمینه استفاده شود، اما ضرورتی ندارد و این کار انجام نمیشود.
مثال گوگل کروم یک نمونهی مناسب از این است که چگونه ممکن است یک نرم افزار چند ریسمانی نتواند ارتقا عملکرد واقعی را ارائه کند.
۲ برابر شدن هستهها به معنی ۲ برابر شدن سرعت نیست
فرض کنیم نرم افزار مناسب و تمام سخت افزار مورد نیاز را در اختیار داریم. آیا یک پردازندهی ۴ هستهای میتواند ۲ برابر سریعتر از ۲ هستهای باشد؟ پاسخ خیر است!
افزایش هستهها نمیتواند به حل مشکل مقیاسپذیری نرم افزار کمک کند. مقیاسپذیری هستهها از نظر تئوری همان قابلیت نرم افزار برای اختصاص وظایف مناسب به هستههای مناسب آنهاست، بهگونهای که هر هسته در بهترین سرعت خود به پردازش مشغول باشد. اما در واقعیت چنین اتفاقی رخ نمیدهد. آنچه در واقعیت اتفاق میافتد این است که وظایف بهصورت ترتیبی یا تصادفی (همان روشی که اکثر نرم افزارهای چند ریسمانی استفاده میکنند) تقسیم میشوند.
برای مثال، یک پردازندهی ۴ هستهای را در نظر بگیرید. شما باید ۳ وظیفهی مشخص را انجام دهید و برای انجام این وظایف به ۵ عمل نیاز دارید. وظایف را با T و عملها را با A نشان میدهیم. در این صورت تقسیمبندی وظایف توسط نرم افزار به این صورت خواهد بود:
- هستهی ۱: A1T1
- هستهی ۲: A1T2
- هستهی ۳: A1T3
- هستهی ۴: A2T1
این نرم افزار چندان هم هوشمند نیست. اگر A1T3 سختترین و طولانیترین وظیفه باشد، نرم افزار باید A1T3 را بین هستههای ۳ و ۴ تقسیم کند. اما حالا حتی پس از این که هستههای ۱ و ۲ وظایفشان را به پایان رساندند، باید صبر کنند تا وظیفهی کندتر هستهی ۳ تکمیل شود.
تمامی آنچه بیان شد برای این بود که بدانیم همهی نرم افزارها برای بهرهگیری از نهایت ظرفیت چند هسته بهینهسازی نشدهاند و دو برابر کردن هستهها به معنی دو برابر شدن سرعت پردازش نیست.
هستههای بیشتر کجا به کمک ما میآیند؟
حالا که با شیوهی کار هستهها و محدودیتهای آنها برای افزایش سرعت عملکرد آشنا شدیم، باید از خود بپرسیم آیا واقعا به هستههای بیشتر نیاز داریم؟ پاسخ این سوال به انتظار شما از پردازنده و کاری که در نظر دارید با کمک آن انجام دهید بستگی دارد.
۲ هستهای و ۴ هستهای در گیمینگ
اگر یک گیمر حرفهای هستید، پس بهتر است به دنبال هستههای بیشتر برای رایانهی خود باشید. بسیاری از عناوین AAA (بازیهای ساخت استدیوهای بزرگ) اکنون از معماری چند ریسمانی پشتیبانی میکنند. بازیهای ویدیویی هنوز تا حد زیادی به کارت گرافیک وابسته هستند، اما یک پردازندهی چند هستهای هم میتواند به اجرای بهتر آنها کمک کند.
ویرایش ویدیو و صدا
پردازندههایی با هستههای بیشتر برای هر کاربر حرفهای که با برنامههای ویرایش ویدیو و صدا کار میکند، کاربردیتر خواهند بود. اغلب ابزارهای ویرایش ویدیو و صوت از شیوهی پردازش چند ریسمانی بهره میگیرند و میتوانند از ظرفیت هستههای مختلف بهتر استفاده کنند.
فتوشاپ و طراحی
اگر یک طراح هستید، کلاک اسپید بالاتر و کش پردازندهی بیشتر، نسبت به تعداد هستهها نقش مهمتری در افزایش سرعت کار شما خواهند داشت. حتی معروفترین نرم افزار طراحی که همان ادوبی فتوشاپ است، از پردازشهای تک رشتهای یا با رشتههای کمتر بهخوبی پشتیبانی میکند. بنابراین، استفاده از پردازندههای چند هستهای تاثیر چندانی در ارتقا عملکرد آن نخواهند داشت.
آیا باید پردازندهای با هستههای بیشتر داشته باشم؟
در مجموع، یک پردازندهی ۴ هستهای برای کاربردهای عمومی سرعت بیشتری را نسبت به یک پردازندهی ۲ هستهای ارائه میکند. هر برنامهای که باز میکنید روی هستهی اختصاصی خودش اجرا میشود، پس اگر وظایف تقسیم شوند، سرعت پردازشها بیشتر خواهد شد. اگر بهطور همزمان از چند برنامه استفاده میکنید، اغلب بین آنها جابجا میشوید و برای آنها وظایف مشخصی تعیین میکنید، بهتر است از پردازندهای با هستههای بیشتر استفاده کنید.
عملکرد سیستم موضوعی است که عوامل بسیاری در آن نقش دارند و نباید انتظار داشت فقط با تجهیز آن به یک پردازندهی چند هستهای قدرتمند اتفاق خارقالعادهای رخ دهد و سرعت عملکرد سیستم کاملا متحول شود.