منظور از Cpu های دوهسته ای چیه ؟
لطفاً راهنمایی بفرمایین :11:
Printable View
منظور از Cpu های دوهسته ای چیه ؟
لطفاً راهنمایی بفرمایین :11:
در حقيقت دو تا Cpu هست كه توي يك پك جا دادند حالا ممكنه يه چيزائيشون با هم مشترك باشه مثل كش سطح 2.
اما مشكل اساسي اينه كه نرم افزارها بايد اين قابليت رو داشته باشند تا بتونند از هر دو هسته استفاده كنند مثلا برنامه نويس بايد طوري برنامه بنويسه كه بخشي از كار رو يك هسته انجام بده بخش ديگه اي از كار رو هسته ديگه به اين ميگن پردازش موازي.
اما يه مزيت ديگه اين پردازنده ها امكان اجرا شدن دو برنامه همزمان هست در اين صورت هر هسته ميتونه يك برنامه رو اجرا كنه. مثلا فرض كن شما داري فيلم تبديل ميكني، همزمان هم بازي ميكني، فيلم رو يه هسته اجرا ميشه بازي روي دومي( به شرط اينكه هيچ كدوم از اونها به تنهائي به دو هسته نياز نداشته باشند كه در اين صورت پردازنده چهار هسته اي لازمه)
البته قضيه با اين سادگيها هم نيست منتها سادش كردم تا راحتتر متوجه بشي.
نقل قول:
بارها این سوال مطرح شده سرچ کنید
در حقیقیت پردازنده ها چند هسته ای از چند Alu مجزا تشکیل شده اند و نه چند پردازنده مجزا
سرچ انجمن اصلا درست حسابی مثل google کار نمیکنه میشه گفت اصلا بدرد نمیخوره
سلام
منم سوال داشتم
مثلا وقتی گفته میشه پردازنده دو هسته ای 2.4 گیگا هرتزی یعنی دو تا پردازنه 2.4 تو یه پک هست یا جمع قدرت دو تاشون شده 2.4؟
و این Alu چیه؟
اگه میشه جواب بدین
اگه بخواي جمع بزني ميشه 4.8نقل قول:
ولي جمع زدن كار درستي نيست چون يه نرم افزار نميتونه با راندمان 100 درصد از هر دو هسته استفاده كنه
یعنی یک cpu با دو هسته و اگر core due بود که 2mb کش با هم دارند ولی اگر core 2 due بود یعنی هر هسته با کش مجزا....
خود core واسه سی پی یو های جدید هست که گرمای کمتری نسبت به cpu عادی دارد
Core Duo مربوط به لپ تاپ هست كه فقط يك هسته دارهنقل قول:
Core 2 Duo دو هسته داره با كش سطح 2 مشترك.
البته به کار بردن ALU درست نیست چون هر هسته میتونه چند ALU داشته باشه که داره اتفاقا جالب اینجاست که بدونی 2 هسته دقیقا میتونن کار دو پردازنده مجزا انجام بدن فقط کش سطح دوم مشترک هست ولی همونطور که دوستمون ماکرو گفت اهمیت اینجاست که نرم افزار بتونه Thread ها درست درمون پخش کنه اگر نرم افزاری وجود داشته باشه که بتونه از دو هسته در زمان واحد عینا مثل هم استفاده کنه میشه گفت توانایی پردازنده دو برابر شده البته بعید میدونم همچین نرم افزاری وجود داشته باشه ساخت نرم افزار های Multi theareded در سطوح بالا کار بسیار پیچیده و سختیه .نقل قول:
نکته:CPU مخفف Central Processing unitاست.CPU:CPU از3 بخش تشکيل می شود.ALU , CU , REGISTERنکته:ALU مخفف Arithmatic Logic unitاست.نکته:CU مخفف Contorol unit است.کار ALU چيست؟ ALU کارهای محاسباتی و منطقی را به عهده دارد.کار CU چيست؟CU تجهيزات سخت افزاری و Bus ها را کنترل می کند.
2 هسته نميتونن كار 2 پردازنده رو انجام بدن با هم خيلي فرق مي كنننقل قول:
بعدشم ويندوز اين اجازه رو نميده كه كل هسته ها دائما در اختيار يه نرم افزار قرار بگيره و الگوريتم هاي خاصي اره براي دادن هسته ها به نرم افزار ها
البته هر CPU بدون شک از 3 بخش تشکیل نشده و تعداد بخش ها خیلی بیشتره و در هر معماری و پردازنده هم این فرق میکنه . در مورد ALU هم دلیل استفاده از چند alu در هسته خیلی سادست که اولین بار فکر کنم در پردازنده های اینتل استفاده کرد (به کتاب معماری پترسن مراجعه کنید) ببین وقتی دستور العمل ها برای محاسبه به واحد منطقی میرسن در صورت وجود یک ALU باید دستور العمل ها برای اینکه عملگر خاصی روشون اعمال بشه تو نوبت قرار بگیرن البته Pipeline ها تا حدودی این عملیات ها ساده تر و سریعتر میکنن و البته ممکنه ALU های بسیار سریعی داشته باشیم ولی برای اینکه سرعت بیشتر بشه اومدن ALU رو افزایش دادن حالا بسته به معماری البته من نمیخوام بحث رو بزرگ کنم چون در حد یه کتاب میشه در موردش بحث کرد البته این مسئله قدیمی هست بشدت و پردازندهای جدید خیلی پیچیده و پیشرفته تر از این چیزها هستن ولی معمولا در حد معلومات من ممکنه در یک پردانزده چند Full ALU داریم و چندین ALU دیگه که بعضا بعضیاشون فقط کارهای پایه ای مثل جمع یا اضافه رو انجام میدن که دیگه اینا کاملا برمیگرده به نوع معماری پردازنده بعضا ممکنه فقط از یک Full ALU استفاده بشه .نقل قول:
بحث سخت افزاریش هست از نظر سخت افزاری دو تا هسته تقریبا دارن کار دو پردازنده رو انجام میدن و فقط از کش مشترک استفاده میکنن بقیه قسمت ها کاملا مجزا هست ولی این مهمه الان شما مثلا n تا Thread داری چطوری میخوای این ها تقسیم کنی که حتما بطور مساوی بین دو هسته تقسیم وظیفه بشه حالا این برمیگرده به سیستم عامل به نرم افزارهایی که در اون سیستم عامل ساخته شدن و استفاده میشن ولی خوده پردازنده دو هسته ای به تنهایی تقریبا تقریبا میشه گفت مثل دو پردازنده مجزا میمونه .نقل قول:
سوال من اینه که آیا یک پردازنده 3 گیگاهرتزی قدیمی با یک هسته توانایی بیشتری از یک پردازنده 2.6 دو هسته ای برای یک نرم افزار داره ؟ یا کمتر ؟
جواب اینجاست که اگر این اختلاف در همین حد باشه 2 پردازنده 2.6 قدرت بیشتری از یک پردازنده 3 داره
چون تقسیم کار به شکل فوق العاده قابل ملاحظه ای راندمان کار رو بالا میبره
برای همین هست که در کارت گرافیک هم میگیم لازم نیست حتما همه 8800 GTX داشته باشن
میتونی با مثلا 2 تا 8600 GTS ، راندمان بالاتری از 8800 بگیری
در مورد دو هسته ای مجازی هم میشه یه توضیحی بدین که چه فرقی با تک هسته ای داره...
دو هست مجازي يا همون hyperthreading technology يك قابليت بود كه پردازشگر عمليات رو طوري تنظيم ميكرد كه در واقع منابع پردازشگر تقسيم ميكرد .
تولیدش متوقف شده؟