اولین تلفنهای هوشمندی که از پردازندههای دوهستهای استفاده میکردند در سال ۲۰۱۰ به بازار آمدند. تا پیش از آن، تمام تلفنهای هوشمند بازار پردازندههای تکهستهای داشتند که حداکثر سرعت کلاک آنها حدود ۱.۴ گیگاهرتز بود. ولی از آن تاریخ به بعد، تعداد هستهها رفتهرفته بیشتر شد تا جایی که امروز به پردازندههای هشتهستهای رسیدهایم، هرچند پردازندههای شش یا چهارهستهای هنوز به کار گرفته میشوند.
بیشتر بخوانید: سرویس volte چیست؟!
اگر جنبههای پردازش چندگانه ناهمگن (HMP) این پردازندهها از طریق فناوریهایی مثل big.LITTLE و DynamIQ را کنار بگذاریم، تلفنهای هوشمند امروزی حداکثر هشت CPU جداگانه دارند که میتواند پروسههای مختلف را به صورت مستقل درون فضای حافظه مجازی خود اجرا کند؛ هشت موتور که آماده و قادر به اجرای اپلیکیشنهای گوناگون شماست. اما چرا؟ چرا از چندین هسته پردازشی استفاده میشود؟ مزایا و معایب استفاده از این روش چیست؟ در ادامه مطلب همراه ما باشید تا شما را به پاسخ این سوالات نزدیک کنیم.
پردازندههای تکهستهای در مقابل پردازندههای چندهستهای
بازدهی انرژی در تلفنهای هوشمند یکی از مهمترین مسائل است. هرچند تراشهسازان سعی دارند دائما مرزها را پشت سر بگذارند، اما با محدودیتهایی مثل فضا، دما و انرژی روبرو هستند و نمیتوانند آنها را نادیده بگیرند. توانی که توسط پردازندههای موبایلی استفاده میشود با سه عامل اصلی قابل اندازهگیری است: ظرفیت خازنی مدار، ولتاژ مدار و فرکانس ساعت. فرمول این عوامل به صورت P=CV2f نوشته میشود. اگر فرکانس را بالا ببرید، مصرف انرژی افزایش مییابد. اگر ولتاژ را تغییر دهید، سطح توان به شکل قابل توجهی تغییر میکند (چون در این فرمول ولتاژ به توان ۲ میرسد).
بیشتر بخوانید: ۵ عادت اشتباه در استفاده از تلفن همراه که به سلامت ما لطمه میزند
اگر فرض اول خود را پردازندهای تکهستهای در نظر بگیریم، میتوانیم برای هر یک از این متغیرها مقدار ۱ را درج کنیم؛ بنابراین C برابر ۱ و V برابر ۱ و f برابر ۱ خواهد بود. در نتیجه، مجموع توان مصرفی ۱ میشود. حالا برای این که رابطه میان پردازندههای دوهستهای و تکهستهای را ببینیم، میتوانیم مقادیر واقعیتری برای پردازندههای دوهستهای در نظر بگیریم اما فرکانس ساعت آن را نصف کنیم. پس ظرفیت خازنی بالا میرود چون شدت جریان بیشتری به وجود میآید. اگر به جای پردازندههای تکهستهای از پردازندههای دوهستهای استفاده کنیم، ممکن است مقدار C از ۱ به ۲ تغییر کند، ولی ما برای پوشش سایر مقادیر شدت جریان از مقدار ۲.۲ استفاده میکنیم. در این حالت، ولتاژ پایین میرود و فرکانس هم پایینتر خواهد بود. با این حال، برای احتیاط از بروز خطا، مقدار ولتاژ را ۰.۶ تعیین میکنیم. در نهایت اگر محاسبات P = 2.2 * 0.62 * ۰٫۵ را انجام دهیم، P برابر ۰.۳۹۶ خواهد شد که آن را ۰.۴ در نظر میگیریم.
بیشتر بخوانید: چطور موقع خرید گوشی کلاه سرمان نرود؟
از نظر توان پردازشی خام، این پردازنده دوهستهای میتواند به اندازه پردازندهای تکهستهای که با دو برابر سرعت ساعت آن کار میکند پردازش داشته باشد، ولی همان طور که میبینید توان آن حدود ۶۰ درصد کمتر است. اینجاست که راهکارهای پردازندههای چندهستهای جذاب میشود.
آزمایش رزبری پای
برای این که ببینیم فرضیه عملکرد پردازندههای دوهستهای با سرعت نصف و پردازندههای تکهستهای با حداکثر سرعت یکسان است یا نه، از دستگاهی به نام رزبری پای استفاده میکنیم؛ کامپیوتری کوچک اما پرتوان که کاربردهای فراوانی دارد. مزیت استفاده از رزبری پای این است که میتوانید هستههای آن را فعال یا غیرفعال کرده و فرکانس ساعتشان را تغییر دهید.
علاوه بر این، باید ابزاری برای محاسبه اعداد اول صفر تا ۵ میلیون داشته باشیم که از سازوکار پردازش دورشتهای استفاده کند (یعنی بتواند به طور همزمان روی دو هسته اجرا شود). یک رزبری پای مدل ۴ میتواند این پروسه را در ۱۲ ثانیه انجام دهد. حالا اگر همین آزمایش را با فقط یک هسته انجام دهیم، اما برنامه همچنان دو رشته داشته باشد، انجام این پردازش ۲۴ ثانیه طول میکشد. با توجه به این که هسته ثانویهای برای استفاده برنامه وجود ندارد، تمام محاسبات روی یک هسته انجام و مدت زمان اجرای آن دو برابر میشود.
بیشتر بخوانید: چرا باتری گوشی ها بهسرعت خالی میشود
در مرحله بعدی یک هسته اضافی را فعال میکنیم، اما فرکانس ساعت را از ۱.۵ گیگاهرتز (حالت پیشفرض) به ۷۵۰ مگاهرتز کاهش میدهیم تا هر دو هسته با نصف سرعت خود کار کنند. در این حالت هم ۲۴ ثانیه طول میکشد تا پروسه مربوطه تکمیل شود. با این حساب، آزمایش ما چه در حالت استفاده از یک هسته با سرعت ۱.۵ گیگاهرتز و چه در صورت استفاده از دو هسته با سرعت ۷۵۰ مگاهرتز در مدت زمان یکسانی کامل میشود. ولی تفاوتش این است که آزمایش پردازنده دوهستهای ۶۰ درصد انرژی کمتری مصرف میکند.
گفتنی است که هر دو آزمایش دقیقا در زمان ۲۴.۰ ثانیه به پایان نرسید، و کسری از ثانیه میان آنها تفاوت وجود داشت. پس برای آزمایش دقیقتر تفاوت این دو حالت به سراغ آزمایش پروسهای بلندمدتتر رفتیم؛ پروسهای که انجام آن بیش از ۳ دقیقه طول میکشید. نتیجه این بود که مثل آزمایش قبلی، در اینجا هم پردازنده تکهستهای با سرعت ۱.۵ گیگاهرتز کمی کندتر از پردازنده دوهستهای با سرعت نصف عمل میکرد. در این آزمایش سه دقیقهای، پردازنده دوهستهای ۱.۵ ثانیه از پردازنده تکهسته سریعتر بود که تفاوتی ۱ درصدی را میان آنها نشان میدهد؛ تفاوت بسیار کوچکی که توجه به آن جالب به نظر میرسد.
نکته کلیدی این نوع آزمایشها آن بود که ابزار ما از دو رشته استفاده میکرد. با این حال تمام نرمافزارها پردازشهای خود را به صورت چندرشتهای اجرا نمیکنند، ولی بسیاری از آنها از این سازوکار کمک میگیرند تا سرعت بالاتر و واکنشپذیری بهتری داشته باشند.
تمام هستهها برابر نیستند
نکته پایانی این است که تمام هستهها برابر نیستند. در این آزمایشها، فرض ما این بود که در هر دو پردازنده از طراحی CPU یکسانی استفاده شود. ولی در دنیای واقعی، ماجرا کمی پیچیدهتر است. همان طور که بالاتر گفتیم، در پردازندههای مدرن موبایلی از HMP استفاده میشود. این یعنی پردازندهها علاوه بر هستههای بهینهشده که مصرف انرژی کمتری دارند، برای پردازشهای سنگین از هستههای قدرتمندتری استفاده میکنند که انرژی بیشتری به کار میگیرند و توان بالاتری دارند. در پردازندههای هشتهستهای امروزی از هر گروه چهار هسته در نظر گرفته میشود.
بیشتر بخوانید: چرا باتری گوشی ها بهسرعت خالی میشود
البته پردازندههای شرکت اپل کمی فرق میکنند. این پردازندهها در مجموع شش هسته دارند که دوتا برای پروسههای سنگین و چهارتا برای پروسههای سبک استفاده میشود. رمز کلیدی اپل در فراهمسازی قدرت پردازش بالا این است که دو هسته پرتوان پردازندههای این شرکت بسیار بزرگ هستند و میتوانند بهتر از پردازندههای کوالکام یا اینتل به ازای هر هسته پروسه اجرا کنند. این سازوکار به معنای مصرف بیشتری انرژی است، و به همین دلیل هستههای اپل معمولا سرعت ساعت پایینتری نسبت به رقبا دارند. بهعلاوه، به همین خاطر است که اپل معمولا در آزمایشهای تکهستهای عملکرد بهتری از خود نشان میدهد.
شما کدام سازوکار را ترجیح میدهید؟
با تمام این تفاصیل، سوال اصلی این است: شما کدام سازوکار را ترجیح میدهید؟ پردازندهای تکهستهای که سرعت ساعت بالاتری دارد و انرژی بیشتری مصرف میکند؟ یا پردازندهای دوهستهای که سرعتش نصف شده و ۶۰ درصد انرژی کمتری لازم دارد؟ همین سوال را میتوانید در خصوص پردازندههای دوهستهای در برابر چهارهستهای، ششهستهای در برابر هشتهستهای و غیره بپرسید. در نهایت همه چیز به پاسخ شما بستگی دارد. لطفا نظرات خود را با ما در میان بگذارید.
منبع: کالایاب