شما نیز قطعا بارها وبارها این عبارت “پردازنده چند هستهای” را شنیده و حتی ناخودآگاه به کار گرفتهاید. این غلط بسیار مصطلح ریشه در یکسان انگاشتن پردازنده و چیپست است. در مطلب پیش رو ضمن بازگشایی کامل این مسئله شما را با تمامی پردازندههای جدید موبایلی، چیپستهای کوالکام، سامسونگ، انویدیا و اپل آشنا ساخته و به تفاوتها و نقاط قوت و ضعف هریک میپردازیم. با ما همراه شوید تا از این پس واژههایی چون Snapdragon، Exynos و Tegra برای شما عبارات کلی نباشند که همگان بدون آنکه تصور کاملی از آنها داشته باشند بکار گرفته و به مفاهیم کلی معمولا به جزئیات آنها مسلط نیستند. قسمت اول این بررسی به چیپستهای شرکت کوالکام یعنی خانواده اسنپدراگون میپردازیم.
نزدیک به 5 سال پیش مطلبی در مورد پردازش موبایلی در همین سایت به نگارش در آمد که در آن سعی شده بود تا اکثر مفاهیم پایه در این زمینه از قبیل معرفی پردازندههای ARM، چیپستهای کوالکام، سامسونگ، اپل، TI و دیگران مورد پوشش قرار بگیرد. هرچند اطلاعات آن مقاله امروز دیگر بسیار قدیمی شدهاند اما هنوز هم نگاهی کلی به آن مطلب تا حدودی سودمند خواهد بود. در این نوبت پس از اشاره خلاصه به برخی گفتههای پیشین یک راست به سراغ مفاهیم مهم امروزی میرویم. کاربران علاقهمند میتوانند بیشتر در این مورد در مقاله قبلی پردازش موبایلی سایت، اطلاعات کسب کنند.
پردازنده چند هستهای: صحیح یا غلط؟
برای پاسخ به این سوال نخست باید اندکی در مورد برخی مفاهیم بیشتر بدانیم. عملیات پردازش در یک دیوایس هوشمند (اعم از موبایل، تبلت و دیگر دستگاههای پرتابل) به چند جزء مهم نیاز دارد که هسته پردازشی تنها یکی از این اجزا به شمار میروند. پردازشگر گرافیکی، حافظه RAM و حافظه داخلی، کنترلرهای حافظه، مودمهای ارتباطات موبایلی، سنسورها و … سایر اجزای مهم را تشکیل میدهند. تمامی این اجزا (به جز برخی استثناها) همگی در یک واحد یکتا به نام چیپست یا SoC (سیستم روی چیپ) مجتمع شدهاند. در این مجموعه ممکن است 1، 2، 4 یا 8 هسته یکسان یا متفاوت وجود داشته باشند. بنابراین با توجه به موارد گفته شده به جای عبارت پردازنده چند هستهای بهتر است به حضور چند هسته در قالب یک چیپست یا سادهتر به چیپست چند هستهای (چند پردازندهای) اشاره شود.
نقش ARM در این میان چیست؟
ARM را باید اینتل دنیای پردازش موبایلی لقب داد و با اینکه خود اینتل نیز چند سالیست بهصورت محدود به این عرصه وارد شده است اما گستردگی و امکانات پردازندههای ARM از یک سو و تجربه و مقبولیت این شرکت از سوی دیگر، نقشی کلیدی برای این برند ایجاد کرده است. ARM از گذشتههای دور همواره تامینکننده هستههای اصلی (CPU) تقریبا تمامی چیپستهای شرکتهای مختلف بوده و در این زمینه رقیبی را پیش روی خود نمیبیند. پردازندههای ARM به صورت کاملا خلاصه بدون آنکه بخواهیم وارد مباحث فنی بشویم از معماری به نام RISC یا reduced instruction set computing بهره میبرند که در مقابل معماری CISC یا complex instruction set computing که در پردازندههای کامپیوتری نظیر خانواده x86 به کار گرفته میشود شیوه سادهتری را با تعداد ترانسیستورهای کمتر، حرارت کمتر، مصرف انرژی پایینتر و شاید از همه مهمتر قیمت بسیار اقتصادیتر ارائه میکند و بدینترتیب برای قرارگیری در گوشیهای موبایل، تبلتها و دیگر ابزارهای همراه، راهحلی ایدهآل ارائه میدهند. ARM هر از چندگاهی هستههای پردازشی خود را آپدیت کرده و در اختیار شرکتهای سازنده چیپست نظیر کوالکام، سامسونگ، اپل، هواوی، مدیاتک، انویدیا و دیگران قرار میدهد.
اهمیت کوالکام در کجاست؟
کوالکام هم مثل اپل، سامسونگ و انویدیا یکی از تولیدکنندگان چیپستهای موبایلی به حساب میآید اما چرا این شرکت بیشتر از سایرین در معرض دید قرار داشته و تولیدات آن بیشتر از سایرین در اسمارتفونهای مختلف دیده میشود. دلیل این مسئله را باید در رویکرد متفاوت کوالکام جستوجو کرد. تقریبا تمامی شرکتهای سازنده چیپست از پردازندههای ARM به صورت مستقیم و بدون ایجاد تغییرات استفاده میکنند و در این میان تفاوتی نیز مابین بزرگانی چون سامسونگ و اپل و نمونههای دیگر همچون هواوی، مدیاتک و حتی انویدیا نیز وجود ندارد. این شرایط در مورد کوالکام از گذشتههای دور تا همین یک سال پیش نسبتا متفاوت بوده و این شرکت تقریبا همواره تغییراتی را در هستههای ARM ایجاد کرده و پردازنده اختصاصی خود را تولید میکرد. این پردازندهها، نامهای اختصاصی خود را نیز داشتند که سری Scorpion و Krait از این جملهاند. البته نگفته پیداست که base و پایه همه این پردازندهها در نهایت نمونههای همتراز ARM است اما تغییرات ایجاد شده از سوی کوالکام، آنها را در برخی جهات نسبتا قویتر از همتایان ARM خود میکند. سری Scorpion مشابه پردازندههای A8 و A9 از ARM بود و سری Krait که در سریهای 200، 300، 400 و 450 ارائه شد شباهتهای فراوانی را به هستههای جدید ARM از A7 تا A15 ارائه میکرد.
تمامی چیپهای پردازشی کوالکام فارغ از نوع پردازنده درون آن با نام کلی اسنپدراگون شناخته میشود بنابراین این نام لزوما ارتباطی با نام پردازنده درون چیپست نداشته و به همین دلیل نیز ذکر عنوان “پردازنده Snapdragon” یک غلط مصطلح دیگر است.
گرافیک دیگر تفاوت مهم
دیگر تفاوت مهم کوالکام با سایرین در بخش گرافیکی چیپستهای اسنپدراگون قرار دارد. کوالکام در این زمینه نیز از رویه معمول سایر شرکتها در استفاده از گرافیکهای Mali شرکت ARM پیروی نکرده و به سراغ تجربه منحصر به فرد خود رفت. حتما نام هسته کارتهای گرافیکی قدیمی ATI را به یاد دارید: Radeon نامی بود که بسیاری از همنسلان ما با آن خاطراتی شیرین از جنس Need for Speed II، فیفا 99 و دلتا فورس را به یاد میآورند. ATI در سال 2006 توسط AMD خریداری شد و پس از آن در سال 2009 قسمت گرافیک آن به مجموعه کوالکام افزوده شده و نام چیپهای گرافیکی این شرکت نیز با درهم ریختن واژه Radeon به Adreno تغییر پیدا کرد. چیپستهای Snapdragon بدینترتیب صاحب گرافیک منحصر به فردی شدند که تا به امروز نیز در مقابل معادلهای دیگری چون PowerVR، کپلر انویدیا و گرافیکهای Mali شرکت ARM یکی از قویترینهای این رده به حساب میآید.
مودم درون چیپست
تفاوتهای اسنپدراگون های کوالکام با دیگران به هستههای پردازشی و گرافیک اختصاصی خاتمه پیدا نمیکند و یک تفاوت مهم دیگر نیز در این میان به چشم میخورد. یکی از قطعات مهم و در عین حال حیاتی برای یک گوشی موبایل قسمت مودم ارتباطی دستگاه است که ارتباطاتی نظیر 3G و 4G را تامین میکند. در اکثر تولیدات شرکتهای بزرگ، این قطعه خارج از چیپست قرار داشته و در مصرف انرژی دستگاه تاثیر منفی برجای میگذارد. در Snapdragonهای جدید، مودم به درون خود چیپست منتقل شده و نهتنها تاثیر منفی در ابعاد دستگاه برجای نمیگذارد بلکه در مصرف باتری نیز بسیار موثر است.
اسنپدراگون 810 و ماجراهای آن
کوالکام تا همین یک سال پیش بیشک خوشبختترین شرکت سازنده چیپست بود که تولیدات آن در طیف بسیار از وسیعی از دستگاههای هوشمند پرتابل دیده میشد. تغییرات در سرنوشت این شرکت پس از ارائه موفقیتآمیز اسنپدراگونهای 800 و 801 به آرامی و به صورت خزنده آغاز شد؛ در این زمان در حالی که این برند سرگرم ساختن چیپ همچنان 32 بیتی اسنپدراگون 805 بود به ناگاه هستههای 64 بیتی ARM در مدلهای ARM A53 و A57 در دسترس قرار گرفته و کوالکام از برنامه تولید هستههای 64 بیتی مخصوص خود بسیار عقب افتاد. در این شرایط با نزدیک شدن ارائه گوشیهای پرچمدار برندهای بزرگی همچون سامسونگ، الجی و سایرین، کوالکام به ناگاه در دوراهی بزرگ رها ساختن ایده هستههای 64 بیتی یا استفاده از هستههای خالص ARM بدون تغییرات قرار گرفت؛ دو راهی که در نهایت به استفاده از هستههای ARM به صورت مستقیم در نسل بعدی اسنپدراگونهای کوالکام منجر شد که اینک با نامهای اسنپدراگون 810 و 808 در کلاس high-end، مدل 615 در کلاس میانی و 410 در رده پایین بازار شناخته میشوند. در نسخه 810 از چهار هسته ARM A57 برای کارهای سنگین و چهار هسته ARM A53 برای کارهای سبکتر استفاده شده است در نسخه ضعیفتر این چیپست یعنی اسنپدراگون 808 تعداد هستههای A57 به دو عدد تقلیل پیدا کرد و این بار با چیپست 6 هستهای روبرو شدیم. در مدلهای 615 و 410 تنها از هستههای A53 استفاده شده با این تفاوت که 615 از 8 هسته (2 واحد چهارتایی) و 410 دارای تنها چهار هسته است. هر دوی این چیپستها برخلاف Snapdragon 810 از فناوری ساخت 28 نانومتری استفاده میکنند.
داستان گرمای بیش از حد
ایجاد حرارت امری طبیعی برای تمامی پردازندهها اعم از موبایلی و دسکتاپی است و میزان مشخصی از آن تاثیر خاصی در عملکرد دستگاه برجای نمیگذارد. در دسامبر 2014 وقتی که تاخیرهای مشخصی در پروسه ساخت اسنپدراگون 810 مشاهده شد یک منبع درون سازمانی علت این تاخیر را گرمای بیش از حد این چیپست عنوان کرد حذف این چیپست از پلن سامسونگ برای دوقلوهای Galaxy S6 دیگر اتفاقی بود که گرمای Snapdragon 810 را جدیتری از همیشه نشان داد؛ این مسئله که در نهایت نیز به واقعیت پیوست ضربه بزرگی بر پیکره کوالکام بود و با اینکه بعدها از این چیپست در برخی پرچمداران دیگر برندها استفاده شد اما مشکلات مشهود حرارتی در اینگونه دیوایسها ثابت کرد که ادعای سامسونگ چندان نیز از واقعیت به دور نبوده است.
اما گرما به خودی خود دلیل مشکلات ایجاد شده برای 810 نبود؛ مشکل اصلی از آنجا سرچشمه میگرفت که کیفیت و پرفورمنس 810 پس از گرم شدن آن بسیار کاهش پیدا کرده و نهتنها اصلیترین رقیب آن (Exynos 7420) در این حالت به سادگی از آن عبور میکرد بلکه حتی در برخی موارد این چیپست توان رقابت با چیپستهای قبلی این شرکت همچون اسنپدراگون 805 یا حتی 801 و 800 را نیز نداشت.
810 چرا بیش از اندازه گرم میشود.
همانطور که گفته شده اسنپدراگون 810 از چهار هسته A57 و چهار هسته A53 بهره میبرد این هستهها دقیقا به همین صورت و با فرکانسهای تقریبا مشابه در چیپست سامسونگ Exynos 7420 که در هر دو مدل S6 و S6 Edge وجود دارد نیز به کار گرفته شدهاند اما به چه علت این دو ساختار مشابه، در عمل متفاوت بوده و برتری در اغلب مواقع با Exynos 7420 است؟ پاسخ به این سوال در یکی از عملکردهای استاندارد و طبیعی پردازندهها به نام CPU throttling (خفه کردن پردازنده) یا Dynamic frequency scaling نهفته است.
در این مفهوم در مواقع ممکن و زمانی که تاثیری در عملکرد دستگاه ندارد سرعت CPU کاهش پیدا میکند امری که به کاهش مصرف انرژی و از دست نرفتن باتری کمک فراوانی کرده و در کامپیوترهای معمولی به کارکرد بی سر و صداتر سیستم نیز میانجامد. این اتفاق در پردازندههای موبایلی نیز رخ میدهد و همانطور که گفتیم امری طبیعی و معمول به شمار میرود. به تازگی اما در یک تحقیق انجام شده توسط لابراتوار Primate Labs که تستهای CPU throttling را برای Geekbench صورت میدهد حقایق جالبی در همین مورد آشکار شده که میتواند کلید اصلی گرمای ایجاد شده و پرفورمنس پایینتر 810 باشد. در تستهای جدید این لابراتوار بهجای اصطلاحا فول لود کردن پردازندهها برای ایجاد حرارت هر چه بیشتر، سعی شده است که فضایی واقعیتر و نزدیکتر به کاربریهای واقعی بازسازی شود. در این تست حرارتی جدید تنها دو هسته درگیر شده و پس از آن میتوان آزمایش را تا درگیر ساختن تمامی هستهها ادامه داد. حجم کار محول شده به هستههای پردازشی در این تست کاملا ثابت است و در طی زمان تغییر نمیکند. این تست فرکانس پردازندهها را هر 5 ثانیه یک بار اندازه میگیرد که با وجود آنکه تغییرات فرکانس در پردازندهها بسیار سریعتر از این اتفاق میافتد اما با این حال فرکانسهای اندازهگیری شده میتوانند دورنمایی کلی از آنچه درون پردازنده در حین انجام یک کار ثابت اتفاق میافتد را نشان دهند.
این تست ابتدا از پردازندههای قدیمیتر اسنپدراگون 800، 801 و 805 آغاز میکند در نمودار بالا میبینیم که در اسنپدراگون 800 با ثابت ماندن حجم کار خواسته شده از پردازنده، فرکانس آن به صورت پلهای و کاملا مشخص و قابل پیشبینی از 2.3 به 1.6 گیگاهرتز (بعلت CPU throttling) تقلیل پیدا کرد. در 801 این تغییر رخ ندارد و فرکانس در طول زمان ثابت ماند و در 805 پردازنده زمان بیشتری را حوالی فرکانس پایه خود یعنی 2.7 گیگاهرتز گذراند و در نهایت فرکانس خود را به محدوده 1.7 تا 2 گیگاهرتز محدود کرد.
در اسنپدراگون 810 شرایط بسیار متفاوت است. با افزایش تعداد هستهها به 8 عدد، چیپست در برخورد با حجم ثابت کار بسیار تمایل دارد که مدام مابین هستههای big (یعنی ARM A57) و هستههای LITTLE (یعنی ARM A53) سوئیچ کند (به خطوط آبی رنگ توجه کنید). هستههای کوچک A53 حتی فرکانس بالاتری در این لحظه دارند اما نگفته پیداست که توان پروسس آن ضعیفتر بود و همین مسئله کل مجموعه را ضعیفتر میکند. یک نکته منفی دیگر CPU throttling بلافاصله چیپست است چرا که با وجود فرکانس پایه 2 گیگاهرتز این مجموعه در همان ابتدای کار فرکانس را به کمتر از 1.4 گیگاهرتز میرساند و با اینکه روی کاغذ پردازندههای A57 بسیار قویتر از پردازندههای Krait 450 حاضر در اسنپدراگون 805 (رنگ قرمز در نمودار بالا) هستند اما عملا کاهش شدید فرکانس به دلیل CPU throttling نهتنها 805 را از آنها برتر میکند بلکه حتی 801 و 800 نیز از آن عبور میکنند.
با تکرار این تست با چیپست Exynos 7420 سامسونگ که دقیقا همان هستههای A57 و A53 را با فرکانس تقریبا مشابه دارد و قرار دادن آن در کنار اسنپدراگون 810 نتایج جالبی به دست میآید. 7420 برخلاف 810 میتواند یکی دو دقیقهای فرکانس حداکثری خود یعنی 2.1 گیگاهرتز را قبل از CPU throttling حفظ کند. پس از آن با کاهش فرکانس، اندکی از حرارت CPU گرم شده و با تکیه بر همین خنک سازی، هسته پردازشی بار دیگر میتواند به فرکانس 2 گیگاهرتز پرش کند. این روند ادامه پیدا میکند و از فرکانس CPU به صورت پلهای کاسته میشود. Exynos 7420 تا قبل از 10 دقیقه اول به هیچ عنوان وظیفه پردازشی را از هستههای big به LITTLE سوئیچ نمیکند و به همین علت پرفورمنس بسیار بالاتری نسبت به حریف خود ارائه میدهد. سوئیچ به هستههای LITTLE نیز در این چیپست بسیار کوتاه بوده و به سرعت بار دیگر وظیفه به هستههای big واگذار میشود. حداقل فرکانس عملکرد Exynos 7420 در پایان این تست حوالی 1.2 گیگاهرتز است که 200 تا 400 مگاهرتز سریعتر از فرکانس مشابه اسنپدراگون 810 در همین تست است.
در نهایت با نگاهی به تستهای انجام شده میتوان اینگونه نتیجهگیری کرد که کیفیت و عملکرد اسنپدراگون 810 عمدتا به دلیل مشکلات CPU throttling تحت تاثیر قرار گرفته و نه تنها در مقایسه با Exynos 7420 بلکه در قیاس با چیپستهای 32 بیتی اسنپدراگون 805 و مدلهای پیش از آن نیز عملکرد ضعیفتری را در برخی قسمتها نشان میدهد. علت بروز این مشکل همانطور که در ابتدای این بحث نیز اشاره شد اجبار کوالکام به استفاده از هستههای خالص ARM بود که توسط شرکت TSMC با فناوری 20 نانومتری ساخته شده بودند. حال آنکه سامسونگ با تجربه بیشتر در بکارگیری هستههای خالص ARM، از فناوری ساخت 14 نانومتری در چیپست Exynos 7420 بهره برده است.
آینده چه میگوید؟
کوالکام قرار است این اشتباه مهلک خود را در اسنپدراگون 820 جبران کرده و بار دیگر از پردازندهای خود ساختهای که اینک با کد نام Kryo شناخته میشود استفاده کند. این پردازنده همانند اکزاینوس 7420 سامسونگ، 14 نانومتری خواهد بود اما تا آن زمان احتمال سوئیچ سامسونگ به فناوری ساخت ریزتر (احتمالا 10 نانومتری) نیز کاملا وجود دارد.
اسنپدراگون 808 راه حلی در میانه
یکی دیگر از چیپستهای high-end کوالکام در کنار 810، چیپست 808 است که این روزها در ساختار LG G4 به چشم میخورد. در 808 تعداد هستههای A57 به دو عدد رسیده اما A53 ها همان 4 عدد هستند. البته این تنها تغییر ایجاد شده از اسنپدراگون 810 به اسنپدراگون 808 نیست و چند تغییر مهم دیگر نیز در این میان دیده میشود. مشهودترین تغییر در این رده به گرافیک چیپست تعلق دارد که حتی از اسنپدراگون 805 سال گذشته نیز با گرافیک Adreno 420 ضعیفتر انتخاب شده است. گرافیک Adreno 418 این چیپست در بنچمارکهای گرافیکی به طرز مشهودی از Adreno 430 و Adreno 420 ضعیفتر عمل میکند. این عملکرد ضعیفتر البته به معنای کیفیت پایین این قطعه گرافیکی نیست و در استفاده معمول (و حتی غیر معمول) نیز کاربران متوجه این اختلاف نخواهند شد.
دیگر تغییری که مدل 808 را در جایگاه پایینتری نسبت به 810 جای میدهد پشتیبانی آن از نمایش همزمان وضوح QHD یا 1600×2560 پیکسل روی دیوایس وضوح 4K روی نمایشگر خارجی است در حالی که این مقدار در اسنپدراگون 810 یک پله بالاتر و برابر 4K برای هر دو نمایشگر روی دیوایس و نمایشگر خارجی خواهد بود. تبادل این حجم وسیع اطلاعات نیاز به پهنای باند بسیار گستردهای دارد و به همین علت در اسنپدراگون 810 از دو کانال 1600 مگاهرتزی LPDDR4 استفاده شده است اما در 808 به دلیل وضوح پایینتر صفحهنمایشهای مورد پشتیبانی نیازی به این پهنای باند نبوده و از دو کانال 933 مگاهرتزی LPDDR3 بهره گرفته میشود. تغییرات دیگری نیز در این میان دیده میشود که به صورت خلاصه میتوان به 14 بیتی بودن ISP در Snapdragon 810 در مقابل نمونه 12 بیتی اسنپدراگون 808، سقف مگاپیکسل مورد پشتیبانی در دوربین دو چیپست و حضور انکودر سختافزاری ویدئوهای H.265 4K در 810 اشاره کرد.
اسنپدراگون 808 ممکن است به قدرت اسنپدراگون 810 نباشد اما در این میان این سوال مطرح میشود که آیا کاربران به همه قدرت 810 نیاز دارند یا خیر؟ سوالی که پاسخ آن هر چه که باشد گرم نشدن بیش از اندازه 808 کفه ترازو را به سمت این چیپست خم میکند.
توجه: این مقاله به صورت اختصاصی برای Writeage.com نوشته شده درج تمام یا قسمتی از این مطلب، تنها با ذکر نام سایت و آدرس دقیق این صفحه مجاز است.
آیا Snapdragon 615 هم مشکل Snapdragon 810 رو داره؟
این مشکل با این شدت تنها در حال حاضر در Snapdragon 810 وجود دارد و در دیگر پروسسورهای کوالکام به این شدت نیست.
خیلی عالی. دستتون درد نکنه. استفاده بردم.
با سلام
بسیار مقاله مفید و کاملی بود