آیا تاکنون از خود پرسیدهاید که تفاوت میان یک پردازشگر تک هستهای و یک پردازشگر چند هستهای در چیست؟
نخستین گوشیهای هوشمندی که دارای پردازشگرهای دو هستهای بودند، در سال ۲۰۱۰ میلادی به بازار آمدند. پیش از آن، گوشیهای هوشمند از پردازشگرهای تک هستهای بهره میبردند، که کمترین و بیشترین نیروی فرکانس پردازشی آنان از کمابیش ۵۲۸ مگاهرتز آغاز میشد و نزدیک به ۱.۴ گیگاهرتز سرریز میکرد. این یعنی میانگین توانایی پردازشی میان همه گوشیها نزدیک به ۹۰۰ مگاهرتز یا ۰.۹ گیگاهرتز بود.
از آن پس، شمار هستهها گسترش یافت، تا جایی که امروزه، برخی از گوشیهای میانرده بازار دارای ۸ هسته هستند، با آنکه در کنار آنان، گوشیهای ۶ هستهای و ۴ هستهای نیز هنوز ساخته میشوند و بهرهوری دارند.
صرف نظر از ویژگی چند پردازشی ناهمگون این پردازشگرها، گوشیهای هوشمند امروزی دارای ۸ پردازشگر جداگانه هستند که به صورت ناوابسته و سرخود توانایی بکارگذاری وظیفهها را از درون حافظههای مجازی خود دارند. این یعنی ۸ موتور آتشین قدرتمند، آماده برای به دوش کشیدن اپلیکیشنهای شما هستند.
ولی پیش از آنکه به گام سرد برسیم، میخواهیم بدانیم که چرا باید از چند هسته در یک پردازشگر بهره برد و سود و زیان بهرهوری از آنان در چیست؟
از این رو، همراهان آیتیرسان، با ما به دنبال کشف حقیقتی خاکخورده، در دریاچهای از گدازههای الکتریکی با کمابیش ۱ میلیون ولت قوطهور شوید و دست کم به شمار ۵۰ میلیارد از نورونهای مغز خود را چند دقیقهای در اختیار ما بگذارید!
با ما همراه باشید.
پردازشگرهای تک هستهای و چند هستهای
در گوشیهای هوشمند امروزی، برترین گام، بهرهوری هرچه بیشتر از انرژی و نگهداری آن برای پروسههای پسین است.
با آنکه سازندگان تراشههای پردازشی به مانند اپل، کوالکام، و سامسونگ، بیدرنگ میکوشند تا بهترینها را به زندگی آورند، ولی این چارچوب که در یک مکان بسته و کوچک، ناچار به بهرهوری از یک باتری برای خوراک رسانی به پردازشگر خود باشند، بسی گذرناپذیر است.
سه عامل در برآورد توان پردازشی یک پردازشگر موبایل نقش دارند:
- گنجایش خازنی مدارها (C)
- ولتاژ مدارها (V)
- فرکانس گاهشمار (f)
که با فرمول P=CV۲f برآورد میشوند. هرچه اندازه فرکانس یک پردازشگر بیشتر باشد، توان پردازشی آن بیشتر خواهد بود. همچنان با دگرگونی ولتاژ، گواه افزایش چشمگیری در توان پردازشی آن خواهید بود.
در پی آغاز به کار بستن یک پردازشگر تک هستهای، میتوانیم به هریک از دگرشوهای آن (متغیرها) نرخ ۱ بدهیم. بنابراین، دگرشوهای V, C, f هرسه برابر با ۱ خواهند بود. این شیوه برآورد آن به زبان ریاضی است، نه آنچه که در جهان حقیقی میبینیم. پس برآورد نیروی برق کل آن برابر با ۱ خواهد بود.
اکنون برای آنکه بتوانیم به خوبی گواه پیوند میان دو پردازشگر تک هستهای و دو هستهای باشیم، ما میتوانیم برای پردازشگر دو هستهای با نیمی از نیروی فرکانس کل برای هر هسته، چند نرخ تند بدهیم.
در این هنگام، گنجایش خازنی به سبب مداربندی و گردش نیروی برق بیشتر افزایش مییابد. پرش از یک هستهای به دو هستهای، دگرگونی نرخ دگرشوی C از ۱ به ۲ را در بر خواهد داشت، ولی ما از نرخ ۲.۲ در آن بهره خواهیم برد تا بتوانیم هرگونه گردش درهم برهم برق و دگرگونیهایی که در پی بهرهوری از دو هسته آشکار خواهند شد را پوشش دهیم. اندازه ولتاژ به مانند فرکانس کاهش خواهد یافت.
برای پیشبینی از رخداد خطا، ما ولتاژ را به ۰.۶، و نیروی فرکانس را به نیمی از فرکانس کل هسته دگرگون میکنیم، از این رو، فرکانس آن برابر با ۰.۵ خواهد بود. بنابراین، برآورد پایانی با فرمول P = ۲.۲ * ۰.۶۲ * ۰.۵ به دست میآید، که دستآورد این فرمول برابر با P = ۰.۳۹۶ (به صورت فشرده ۰.۴) خواهد بود.
از نظر بهرهوری از نیروی پردازشی خام، این پردازشگر دو هستهای با نیمی از نیروی فرکانس کل هر هسته میتواند به مانند یک پردازشگر تک هستهای با نیروی فرکانس گاهشمار کامل، شماری یکسان از دادهها را ارزیابی کند، ولی همانگونه که مینگرید، پردازشگر دو هستهای تا ۶۰ درصد از نیروی برق کمتری کار میکشد، که به این بهرهوری از راهکار چند هستهای میگویند.
آزمایش تمشک پی
برای آنکه بتوانیم نشان دهیم که پردازشگرهای دو هستهای با نیمی از سرعت میتوانند در یک سطح برابر با پردازشگرهای تک هستهای با کل سرعت بازدهی داشته باشند، ما کامپیوتر کوچک تمشک پی را به همراه یک بنچمارک بر پایه عدد اول پیکربندی کردیم.
خوبی بهرهگیری از تمشک پی این است که در آن میشود هستهها را روشن یا خاموش کرد، و فرکانس پردازشگر را دستکاری کرد. این یک راه خوب برای آزمایش آنچه است که در اندیشه داریم.
با بهرهگیری از یک نرمافزار آزمایشی برای پیدایش عدد اول تا سقف ۵۰۰۰۰۰۰ در دو ریسه اجرایی روی هریک از هستهها، یک سیستم تمشک پی ۴ ساده میتواند در ۱۲ ثانیه یک وظیفه را به پایان برساند.
با به کار بستن همان آزمایش روی تنها یک هسته ولی همچنان دو ریسه، گواه آن بودیم که تمشک پی تواتست کار را در ۲۴ ثانیه پایان دهد. از آنجایی که یک هسته خاموش بود، همه شمارشها و محاسبات به دوش هسته روشن افتاد، به همین دلیل زمان بیشتری گرفته شد.
ما سپس هسته دیگر را نیز روشن کردیم ولی نیروی فرکانس گاهشمار را از ۱.۵ گیگاهرتز به نیمی از آن یعنی ۷۵۰ مگاهرتز کاهش دادیم. اکنون که هریک از هستهها با نیمی از سرعت فرکانس کل به کار بسته شدهاند، گواه آن بودیم که آزمایش همچنان در ۲۴ ثانیه پایان یافت.
این یعنی بهرهگیری از یک هسته با فرکانس کامل، یا دو هسته با نیمی از نیروی فرکانس، اثری در سرعت برآورد کار ندارد، و هردوی آنان وظیفهها را در یک زمان یکسان به پایان میرسانند، ولی در پی آزمایش با دو هسته، ما گواه آن بودیم که تا ۶۰ درصد نیروی برق کمتری به کار گرفته شد.
ناگفته نماند که هردو آزمایش به طور دقیق در ۲۴.۰ ثانیه پایان نیافتند. میان اجرای هردو آزمایش، چند میلیثانیه فاصله وجود داشت.
از این رو، ما یک آزمایش درازتر را آغاز کردیم که بیش از چند دقیقه تا پایانش زمان میگرفت.
در پی بهرهگیری دوباره از آزمایش بالا، گواه آن بودیم که با گذر بیش از سه دقیقه، مورد دو هستهای ما با پیکربندی نیمی از نیروی فرکانس پردازشی در هر هسته (۷۵۰ مگاهرتز یا ۰.۷۵ گیگاهرتز)، به اندازه ۱.۵ ثانیه (کمتر از ۱ درصد) سریعتر از مورد تک هستهای ما با بهرهگیری از بالاترین نیروی فرکانس (۱.۵ گیگاهرتز) کارکرد داشت.
این هرچند یک تفاوت و ناهمسانی کوتاه و کوچک میان دو آزمایش است، ولی در آزمایشی ۱۰ برابر درازتر، گواه ۱۰ برابر ناهمسانی خواهیم بود — این یعنی نزدیک به ۱۵۰۰۰ میلیثانیه (۱۰ درصد) نابرابری در بر خواهد داشت.
هستهها همیشه برابر با یکدیگر نیستند
یک نکته بسیار ارزنده و درخور یادآوری این است که همه هستهها برابر با یکدیگر نیستند. هر چیزی که ما در این نوشته گفتیم، بر پایه بهرهگیری از یک معماری و ساختار یکسان از پردازشگر بود. در جهان حقیقی، با پیچیدگیهای بیشتری روبهرو خواهیم بود.
همانگونه که در آغاز این نوشته گفتیم، در پردازشگرهای موبایلی امروزی، از ویژگی چند پردازشی ناهمگون بهره گرفته میشود. این یعنی یک پردازشگر دارای هستههای بهرهور از انرژی خواهد بود که دارای کارایی کمتری هستند، و هستههایی با کارکرد بالا که از انرژی بالایی بهره میبرند ولی دارای کارایی بیشتری هستند. در یک پردازشگر ۸ هستهای اندرویدی، چهاریک از هر کدام وجود دارند.
پردازشگرهای اپل کمی فرق میکنند. یک پردازشگر اپل به تنهایی دارای دو هسته با کارکرد بالا و چهار هسته بهرهور از انرژی است، که برآورد آن ۶ هسته است.
ولی در اینجا نباید خیلی به شمار هستهها ارزش بدهید، زیرا آن دو هسته با کارکرد بالایی که اپل برای پردازشگرش برگزیده است، از دید اندازه بسیار بزرگ هستند و کارایی چند برابری را در رویارویی با پردازشگرهای کوالکام و سامسونگ پیشکش میکنند.
بها و هزینه این کارایی بالا، کارکرد بسیار زیاد از نیروی برق است، به همین دلیل است که هستههای یک پردازشگر اپل با نیروی فرکانس پایینتری در رویارویی با دیگر پردازشگرهای بازار به کار گذاشته میشود. همچنان به همین دلیل است که بازار تک هستهایها همیشه در دستان اپل بوده است.
گام سرد
هر آنچه که از ویژگیهای روی کاغذ یک پردازشگر میآموزید، درستی یا نادرستی خود را در کارکرد خود در گوشی یا تبلت نشان میدهند.
ما پیشنهاد میکنیم که پیش از آنکه محصول درخور نیاز خود را برگزینید، جدا از بررسی آنچه که در کاغذ مینگرید، کارکرد نهایی دستگاه را ارزیابی کنید و با دیگر محصولات بازار بسنجید و نظرات و دیدگاههای کاربران را مورد بررسی قرار دهید.
اگر با دو پردازشگر با ویژگیهای یکسان روی کاغذ ولی از دو شرکت جدا برخورد داشتید، گمان نکنید که آنان در کارکرد نیز یکسان هستند.
طراحی چیپست، مواد بکارگرفتهشده در آن، و ریزنگریها، به تنهایی در خوب یا بد بودن آن نقش دارند.
آنچه که باید همیشه در نظر داشته باشید، نخست آن چیزی است که به آن نیاز دارید، سپس چیزی که گمان میکنید در آینده به آن نیاز خواهید داشت. خیلی به شمار و ارقام ارزش ندهید. ما بسیار دیدهایم که ویژگیهای پردازشگر یک دستگاه روی کاغذ چند برابر برتر از رقبای خود در بازار بود، ولی در کارکرد، به یک سوم برخی نرسید.
برنامهای که در آزمایش بالا از آن بهره بردیم، به گونهای نوشته شد تا بتواند چند ریسه را به کار بندد. همه برنامهها و اپلیکیشنها به صورت چندریسمانی نوشته نشدهاند، یعنی برخی از آنان تکریسمانی هستند و با یک هسته بهتر میتوانند کارکرد داشته باشند. بنابراین برخی از اپلیکیشنها پیوند و کارکرد بهتری را با پردازشگرهای تک هستهای نسبت به چند هستهای خواهند داشت.
یک برنامهنویس خوب، اپلیکیشن خود را به گونهای طراحی میکند که در رویارویی با چند هسته بتواند از آنان بهره ببرد.
نکته دیگر در مورد پردازشگرهای تک هستهای و چند هستهای این است که در دومی هر هسته دارای حافظه پنهان (Cache) و حافظه رجیستر جداگانهای است که در افزایش سرعت پردازش پروسهها بسیار اثرگذار هستند.
جمعبندی
به زبانی ساده، پردازشگرهای تک هستهای از نهایت نیروی فرکانس خود برای کارکرد هرچه بهتر بهره میبرند، که این به بهرهوری بیشتر از نیروی برق، و در نتیجه به کاهش زودهنگام باتری گوشی یا تبلت شما میانجامد. این پردازشگرها در بکاربستن هرچه بهتر چندین اپلیکیشن به صورت همزمان (بیشتر در گوشیهای اندرویدی) ناتوان هستند، و باعث داغی باتری و قطعههای دیگر و در پایان سرتاپای دستگاه میشوند.
پردازشگرهای چند هستهای هریک دارای نیروی فرکانس جدایی در هستههای خود هستند. آنان از نیروی برق کمتری بهره میبرند که این باعث طول عمر بیشتر باتری میشود. این پردازشگرها به راحتی توانایی بکاربستن هرچه بهتر چندین اپلیکیشن را به صورت همزمان دارند.
شما میتوانید نظرات خود را با دیگران به اشتراک بگذارید و آنان را از برآورد کارکرد محصولی که در دست دارید، بهرهمند کنید.