سوال کاربران این است که آیا 8 هسته واقعاً دو برابر بهتر از 4 هسته است؟ توان مصرفی چطور؟
در ادامه به مقایسهی تراشههای 4 و 8 هستهای و نحوهی استفاده از هستهها توسط اپهای اندرویدی میپردازم تا تفاوت گوشی 4 هستهای و 8 هستهای آشکار شود.
هستههای زیاد، خوب و در عین حال بد !
مقولهی تعداد هسته سیستم روی چیپها یکی از روشهای تبلیغ قدرت پردازشی یک گوشی یا تبلت است. در حالی که اپل هنوز هم از هستههای بزرگ که فقط 2 یا 3 عدد هستند استفاده میکند، برخی طراحان تراشه روی استفاده از 8 و حتی 10 هسته مانور زیادی میدهند!
اشتباه نکنید، وجود چندین هسته لزوماً چیز بدی نیست. سوییچ کردن بار پردازشی بین هستههای کوچک و بزرگ که استاد کممصرفی و سرعت پردازش بالا هستند، امری است که مصرف انرژی و قدرت پردازشی را بهینه میکند.
همانطور که مدیاتک در معرفی تراشهی قدرتمند Helio X20 میگوید، استفاده از 3 گروه هسته برای سه حالت توان مصرفی و بالطبع قدرت پردازشی، حتی بهتر از بیگ.لیتل و دو گروه هسته است. اما بهترین کار استفاده از هستههای بزرگی است که سرعت کلاک متغیر و کنترل دقیق روی واحدهای اجرایی دارند.
بهتر است یک مثال ساده و واقعی بزنم، معماری مکسول انویدیا را به خاطر دارید؟ همان معماری جدیدی که کارت گرافیکهای سری 900 را قدرتمند و در عین حال کممصرف کرده است. تراشههای سری 900 از نظر لیتوگرافی پیشرفت زیادی ندارند اما از نظر معماری به گونهای طراحی شدهاند که اولاً کنترل خاموش و روشن بودن واحدهای اجرایی یا در واقع همان هستههای CUDA با دقت و ظرافت بیشتری صورت میگیرد و ثانیاً سرعت کلاک بیش از پیش تغییر میکند.
اپل هم در هستههای 64 بیتی سایکلون با سرعت کلاک 1.4 گیگاهرتز معجزه کرده است. هستههای بزرگی که هر یک به اندازهی دو هستهی سریع Cortex-A15 قدرت دارند و در عین حال توان مصرفی هم پایین است.
شاید Cortex-A72 که تدریجاً در دنیای اندروید جا باز میکند و همینطور Kryo کوآلکام و دنور 2 انویدیا شبیه هستههای سایکلون اپل عمل کنند، سریع، کمتعداد و دارای توان مصرفی کم. فعلاً چیزی که در تراشهها میبینیم، هستههای Cortex-A57 و Cortex-A53 است.
نکتهی دیگر این است که هستههای متعدد به شرط ثبات سرعت کلاک مفید هستند در غیر این صورت هستههای کمتر و تولید گرمای کمتر، به نتیجهی بهتری منتهی میشود.
اپلیکیشنها به چند هسته نیاز دارند؟
صرفنظر از اقبال عمومی به هستههای بیشتر، این سوال مطرح میشود که اپلیکیشنهای اندرویدی چه قدر در استفاده از چند هسته توانمند هستند؟ آیا بیش از 1 یا 2 هسته مورد استفاده قرار میگیرد یا اغلب اپها فقط به یک هستهی سریع نیاز دارند؟
نمودارهای زیر میزان تعداد هستههای فعال در اپلیکیشنهای معروف و بهینهشدهای مثل Gmail، Chrome و یوتیوب را نشان میدهد. خودتان نتیجهی اندازهگیری دقیق Android Authority را بررسی کنید:
همانطور که میبینید گوگل کروم واقعاً از هستههای مختلف استفاده میکند. حتی اگر تراشه 8 هستهای باشد.
اما میزان استفاده از هستهها چند درصد است؟ به عبارت دیگر آیا 8 هسته به صورت نصفهکاره در پردازش امور شرکت میکنند یا با تمام قدرت؟
بله، همانطور که میبینید درصد استفاده از هستهها در تراشهی 8 هستهای اندکی کمتر است اما به هر حال کروم بخش زیادی از قدرت هستهها را به خدمت گرفته است. نکتهی جالب این است که با داشتن 4 یا 8 هسته، میزان استفاده از هستهها معمولاً کمتر از 80 درصد است و فقط لحظاتی کوتاه برخی از هستهها بیش از 80 درصد توان خود را در امر خطیر پردازش شرکت میدهند.
اپ جیمیل و بازیهایی مثل Temple Run 2 و Riptide GP2 هم از هستههای مختلف استفاده میکنند اما میزان استفاده از همهی هستهها یکسان نیست و با افزایش تعداد هستهها، میزان استفاده هم کمتر میشود.
نکتهی جالبی که در آخرین نمودار میبینیم این است که بازی Temple Run 2 فقط 2 هستهی تراشهی 8 هستهای را در حد کامل استفاده میکند و باقی هستهها وضعیت نسبتاً آرامی دارند.
و تأثیر معماری را در نمودارهای زیر بررسی کنید:
همانطور که میبینید محصول مدیاتک به طور متوسط 30 درصد 4 هسته را به کار گرفته اما محصول چهار هستهای دیگر، 60 درصد دو هسته و تقریباً 0 درصد دو هسته را به کار گرفته است. نتیجه باز هم 30 درصد استفادهی متوسط است ولیکن روش توزیع بار پردازشی کاملاً متفاوت به نظر میرسد.
نتیجهای که از بررسی نمودارهای فوق میگیریم این است که برخی اپهای اندرویدی در حال حاضر میتوانند از 8 هسته هم استفاده کنند اما نه به صورت کامل. اپلیکیشن بهینهای مثل گوگل کروم 60 درصد 4 هسته را به خدمت میگیرد اما در مواجهه با 8 هسته، فقط 30 یا نهایتاً 40 درصد را به طور متوسط استفاده میکند. بنابراین اگر هستههای بزرگتر و سریعتری وجود داشته باشد، بهتر از تعدد هستههاست.
وقتی بنچمارکها کاربر را به اشتباه میاندازند، نگاهی به انتوتو
در مورد انتوتو در بخش دانشنامهی اینتوتک توضیح دادم. متأسفانه بار پردازشی که انتوتو روی هستهها اعمال میکند، به شدت موازی است و لذا تقریباً تمام قدرت پردازشی تراشه را در امتیاز نهایی دخیل میکند. به نمودار زیر که میزان استفاده از هستهها توسط AnTuTu را نشان میدهد توجه کنید:
همانطور که میبینید انتوتو تمام هستهها را به صورت 100 درصدی تحت بار پردازشی قرار میدهد و با اپلیکیشنهای معمولی تفاوتی جدی دارد. به همین علت است که نباید امتیاز انتوتو به سختافزار یک گوشی را تنها فاکتور ارزیابی آن قلمداد کرد.
اینتوتک
بسیار کاربردی بود علیرضا جان واقعا لذت بردم
بنده هم دقیقا موافق نظر شما هستم
با توجه به ورود هسته های بسیار قدرتمند cortex a72 و مدیریت فرکانس و ولتاژ هسته ها باعث خواهد شد که مصرف هر هسته تا حد چشمگیری پایین بیایید
هسته های ضعیفتر سرعت پاسخگویی پایینی دارند مخصوصا 8 هسته ای های فعلی که از هسته های بسیار ضعیف a53 بهره میبرند به جرات میتوانم بگوییم یک هسته 1.5Ghz a72 از 4 هسته a53 سریعتر میتواند عکس العمل نشان دهد
مبحث توان پردازشی و قدرت نهایی رندرینگ یک مبحث است و سرعت اجرای دستورات مبحثی دیگر مثلا یک cpu i3 اینتل در مبحث رندرینگ و نهایت قدرت هیچ حرفی برای گفتن جلوی AMD FX8350 ندارد
اما در استفاده روزمره و حتی گیم به وضوح میبینیم که i3 4350 با اختلاف زیاد از 8 هسته ای fx8350 پیشی میگیرد
به نظر من 2 هسته cortex A72 در کنار یک هسته بسیار ضعیف cortex M میتواند کولاکی از سرعت و بهینگی را به نمایش بگذارد هسته های cortex M کنترل کار های ساده مانند تاچ و حالت استندبای را به عهده بگیرید و تمام کارهای پردازشی توسط یک جفت Cortex A72 صورت بگیرید
نمیدونم شاید A72 به اندازه ی 4 هسته ی A53 البته با سرعت کلاک پایین سرعت داشته باشه.
به نظرم Cortex M کلاً برای سیستم توکار طراحی شده و استفاده ی کلی ازش خیلی مشکله چون پردازنده با مایکروکنترلر فرق میکنه و کورتکس ام هم برای مایکروکنترلرها بهینه شده. ولی اگه بشه خیلی جالب میشه.