1. مهدی
  2. موبایل و تلفن هوشمند
  3. سه شنبه, 29 ارديبهشت 1394
با سلام ،من میخواستم بدونم توی اسمارت فون های جدیدی که اومدن توی بازار که اکثراً (اگزینوس و کوالکام)هشت هسته ای اند،چطور پردازش تقسیم میشه ؟ مثلاً میخوام بدونم الان موبایل های 8 هسته ای(big.little)مثل s4 پردازش دارن و 4 هسته برای کارای ضعیف و 4 هسته برای کارای سنگین مورد استفاده قرار میگیره،وقتی برنامه ها خیلی سنگین باشن میتونن هسته ها با هم مچ بشن و یه cpu جامع رو تشکیل بدن و هشت هسته با هم هماهنگ کار کنند یا نه حتماً باید یکی از 4 هسته ها روش سوئیچ کرد و اون یکی خاموش بشه؟(البته منظورم خاموش نبود همون از سیستم cpu خارج شه!)
بهترین پاسخ
hani بهترین پاسخ Pending Moderation
2
رای
پس‌گیری
سلام ، خوب تمام حالتهایی که شما گفتید در حقیقت امکان پذیره
ببینید کلا سه روش اصلی برای پیاده سازی معماری big.little و سوئیچ کردن بین پردازنده ها وجود داره :

1- سوئیچینگ خوشه ای (Clustered switching) :
تو این مدل هسته های قوی و ضعیف به دو دسته تقسیم میشن (خوشه اول = هسته های ضعیف - خوشه دوم = هسته های قوی) و در هر لحظه زمان بند سیستم عامل تنها یکی از این دو دسته رو میبینه
در حقیقت زمانی که بار کاری زیاد باشه هسته های ضعیف غیرفعال میشن (خوشه اول) و زمان بارکاری کم خوشه دوم از کار میوفته و خوشه اول شروع به کار میکنه -- برای مثال Samsung Exynos 5410 از این روش استفاده میکرد

http://uupload.ir/files/4gj8_big.little_cluster_switching.png

2- سوئیچر داخل هسته ای (In-kernel switcher) :
تو این نوع پیاده سازی هر هسته ی کوچک با یه هسته بزرگ ترکیب میشه و تشکیل یه هسته مجازی رو میده ، ولی در هر زمان تنها یکی از هسته های هر یک از این هسته های مجازی فعال میشن
خلاصه اینکه اگر 4 تا big و 4 تا little داشته باشیم اینا به صورت جفتی در کنار هم قرار میگیرن یعنی هر هسته big با یه little تشکیل یه هسته مجازی رو میدن و در نهایت 4 هسته ی مجازی داریم
تو این روش روند کار مشابه روش خوشه ای هست یعنی هنگامی که بار کاری رو هر هسته مجازی زیاد باشه قسمت big در غیر این صورت هسته little فعال میشه -- برای مثال Tegra 3 از این روش استفاده میکرد

http://uupload.ir/files/6toc_in_kernel_switcher.jpg

3- روش چند پردازنده ای ناهمگون (Heterogeneous multi-processing)
تو این روش اگر بار کاری کم باشه یا اولویت فرایندی کم باشه (مثل فرایندهای background یا پس زمینه) از هسته های little و اگر بار کاری زیاد باشه یا اولویت فرایندی زیاد باشه (مثل فرایندهای foreground یا پیش زمینه) از هسته های big استفاده میشه و اگر نیاز باشه تمام هسته ها با هم شروع به فعالیت میکنن -- برای مثال 7420 Samsung Exynos از این روش استفاده میکنه

http://uupload.ir/files/iu3e_global_task_scheduling.jpg

موفق باشید
http://8pic.ir/images/cey8vb6aw7055ns560f0.gif http://8pic.ir/images/gfwfnoz9vjfa5hrx260e.gif http://8pic.ir/images/5owjmdso9cy5avg3nsfb.gif http://8pic.ir/images/20gdy2z8wd2gzb25tqou.gif http://8pic.ir/images/53361nr7xhimv8xjqi1s.gif
mahdi بهترین پاسخ Pending Moderation
-1
رای
پس‌گیری
سلام
دوست غزیز شما می توانید این سوالات را در سایت های تخصصی تر بپرسید
؟؟
مهدی بهترین پاسخ Pending Moderation
1
رای
پس‌گیری
با تشکر از هادی جون،بسیار کامل بود،فقط یه سوال دیگه الان این توضیح شما تقریباًکامل بود ولی یه نقطه خالی هنوز داره،الان اسنپ دراگون 810 که 8 هسته ای هست از همین روش سوم دیگه استفاده میکنه دیگه آره؟
hani بهترین پاسخ Pending Moderation
1
رای
پس‌گیری
خواهش میکنم
بله اسنپ 810 از نوع سوم هستش عنوان
البته توی لینک بالا به جای واژه Heterogeneous multi-processing از واژه Global Task Scheduling استفاده کرده که در حقیقت همونه ، همون روش چند پردازنده ای ناهمگون منظورشه
http://8pic.ir/images/cey8vb6aw7055ns560f0.gif http://8pic.ir/images/gfwfnoz9vjfa5hrx260e.gif http://8pic.ir/images/5owjmdso9cy5avg3nsfb.gif http://8pic.ir/images/20gdy2z8wd2gzb25tqou.gif http://8pic.ir/images/53361nr7xhimv8xjqi1s.gif
  • صفحه :
  • 1


هنوز پاسخی به این پست ارسال نشده است.
البته از آنجایی که هنوز در سایت لاگین نکرده‌اید، اجازه‌ی پاسخ دادن به این پست را ندارید.

ورود / ثبت‌نام

 

کاربران فعال این ماه

AMIR
Super User
مسعود یوسف‌نژاد
نازنین امامی
علی مردانی