نگاهي به CPUهاي دو هستهاي
نگاهي به CPUهاي دو هستهاي
در چندین ماه گذشته پیشرفت های جدیدی در طراحی پروسسورها، بویژه از طرف شرکت AMD حاصل شد. این شرکت علاوه بر اینکه یک cpu با طراحی کاملا ْ۶۴ بیتی عرضه کرد که باعث برتری یافتن این شرکت در بازار کامپیوترهای رومیزی پیشرفته گردید، همچنین در حذف کنترل کنندههای حافظه (MCH) پیشقدم شد که در عملکرد Athlon ۶۴ و چیپهای optron یک پیشرفت قابل ملاحظه نسبت به پروسسورهای intel به حساب میآید. اینتل به طور متقابل پروسسور سازگار ۶۴ بیتی را عرضه نمود. به تازگی نیز هر دو شرکت پردازشگرهای دوهسته ای را عرضه نمودهاند، این پروسسورها بهتر از آن چیزی که شما انتظار دارید کار میکنند. پروسسورهای اینتل و AMD هر دو دارای دو هسته پروسسور، در حال کار در یک قالب میباشند که هر یک از هستهها بصورت مستقل توابع و پردازشهای داده را انجام میدهند (در مورد اینتل این مورد کامل تر است) و هر دو این هستهها توسط نرم افزار سیستم عامل هم آهنگ می گردند.
در این مقاله سعی شده تا تکنولوژی که در این دو محصول استفاده شده و مقدار افزایش کارایی که شما می توانید از آنها انتظار داشته باشید بررسی گردد. در حال حاضر AMD فقط پروسورهای کلاس سرور opteron با دو هسته را بطور کامل به بازار عرضه کرده و بزودی Athlon ۶۴*۲ برای کامپیوترهای رومیزی را نیز به بازار عرضه میکند. در طرف مقابل اینتل در حال حاضر پنتیوم Extreme Edition ۸۴۰ رومیزی با دو هسته را به بازار عرضه نموده در حالی که خطهای تولید Pentium D و dual xeons هنوز متوقف نشده اند.
با توجه به اینکه پروسسورهای دو هستهای در اصل یک سیستم چند پروسسوره که در یک قالب قرار گرفته اند، می باشد. اجازه بدهید اینک چندین تکنولوژی که در سیستم های چند پردازشگر استفاده می شود را مورد بررسی قرار دهیم.
چند پردازشگرهای متقارن ( SMP (symmetric Multi processing
SMP روش مشترکی می باشد که چندین پردازشگر بطور جداگانه با یکدیگر در یک مادربرد کار میکنند. سیستم عامل با هر دو cpu تقریباً بطور یکسان کار میکند و کارهای مورد نیاز را به آنها ارجاع میدهد. چیپهای دوهسته ای جدید intel و AMD توانایی SMP را بصورت داخلی مورد توجه قرار دادهاند. پروسسورهای سرور opteron دوهسته ای میتواند همچنین بصورت خارجی با دیگر چیپهای دوهسته ای ارتباط برقرار کند. (بشرط آنکه چیپ متقابل نیز دارای این خاصیت باشد)
محدودیت اصلیSMP در پشتیبانی سیستم عاملها و نرم افزارها از این تکنولوژی میباشد. خیلی از سیستم عاملها (مانند ویندوز XP سری خانگی ) توانایی پشتیبانی از SMP را ندارند و از دومین پردازشگر استفاده نمیکنند. همچنین بیشتر برنامههای پیشرفته بصورت تک رشته ای کار میکنند، در اصل در هر زمان فقط یک پردازشگر در حالت فعال می باشد. برنامه های چند رشتهای از پتانسیل موجود در سیستمهای دو یا چند پرازشگر، میتوانند نتایج مفیدتری بگیرند، ولی به صورت کامل عمومیت ندارد.
در گذشته intel و AMD سعی داشتهاند تا تکنولوژی جدیدی مثل SMD را بیشتر برای پردازشگرهای سرور پیشرفته مانند opteron و Xeon استفاده نمایند ( البته تا قبل از پنتیوم ۳ )
Hyperthreading
این تکنولوژی بصورت اختصاصی توسط اینتل در پردازشگرهای چند هستهای بکار گرفته شده است. این تکنولوژی قبلاً نیز توسط این شرکت بکار گرفته شده بود. اینتل برای آنکه از منابع CPUبنحو بهتری استفاده نماید فقط قسمتهایی که کار پردازش اطلاعات را انجام می دهد را تکثیر کرده است. یعنی آنکه منابع داده در داخل CPU بصورت مشترک استفاده میشد. ایده hyperthreading برای دو برابرکردن مقدار فعالیت چیپ میباشد تا آنکه کاهش عملکرد سیستم که در اثر فقدان حافظه Cash روی میدهد کمتر گردد همچنین بصورت تئوری نشان داده شده که منابع سیستم کمتر تلف میگردند.
در صورتی که CPU های hyperthreading مانند دو پروسسور حقیقی بنظر می رسد. ولی این CPU ها نمیتوانند عملکردی مشابه دو CPU مجزا مانند CPU های دوهسته ای داشته باشند. زیرا در CPU های دو هسته ای دو “Threads”مشابه بطور همزمان و با Cash های جداگانه L۱ و L۲ میتوانند اجرا گردند که این عمل در پردازشگرهای hyperthreading قابل انجام نمیباشد.
یکی از چیپهای جدید اینتل بنام ، پردازشگر پنتیوم Extreme Edition ۸۴۰ ، در داخل هر هسته خود از تکنولوژی hyperthreading نیز پشتیبانی میکند، یعنی آنکه در یک سیستم عامل آن بصورت چهار پردازشگر حقیقی دیده میشود.
دو چیپ در یک قالب … چرا؟
چرا دو شرکت اینتل و AMD بطور ناگهانی شروع به توزیع پردازشگرهای دو هستهای کردند؟
اول از همه رقابت چنانچه بعداً بیان خواهیم کرد AMD از ابتدا توانائی بالقوه دوهستهای را در پردازشگرهای ۶۴ بیتی خود داشت. ساختمان ورودی و خروجی برای دومین هسته در CPU های فعلی ۶۴ بیتی AMD موجود میباشد.
هیچ شرکتی نمی تواند دیگران را از بدست آوردن تکنولوژیهای جدید منع نماید و AMD در حال حاضر با موفقیت چشمگیر خط تولید پرداشگرهای ۶۴ بیتی آسودگی را از intel سلب نموده است.
برای اینتل ضروری میباشد که دارای یک تولید تخصصی در تکنولوژی دوهسته ای باشد تا رقابت با شرکاء تجاری خود را حفظ نماید.
دوم، کارایی میباشد. مطمئناً برنامههای کاربردی چند رشتهای در پردازشگرهایی که توانایی انجام چند پردازش را دارند در پردازشگرهایی که یک پردازش را در هر زمان انجام میدهند، بهتر عمل خواهند نمود.
البته برای سیستم های چند پردازشگره یک ایراد عمومی وجود دارد و آن تاْخیری میباشد که این CPU ها در اجرای کار سیستم بوجود می آورند. به بیان ساده در حال حاضر روشی برای سیستم عاملهای موجود وجود ندارند تا پردازشها را بطور کاملاً مساوی در بین پردازشگرها تقسیم نماید، پردازشگر دوم عموماً بایک مداخله کمتر و کارایی پایینتر کارمیکند، در صورتی که ممکن است پردازشگر اول بصورت ۱۰۰% در حال پردازش باشد.
سومین دلیل کمتر نمایان است، ناامیدی AMD و اینتل میباشد، هر دو شرکت با یک مانع جدی برای افزایش سرعت پردازشگرها و کوچکتر کردن اندازه قالب آنها روبرو شده اند تا این مانع حذف نشود و یا اینکه تا کاربران عمومی متوجه نشوند که GHZ به تنهایی کارایی را بیان نمیکند. هر دو شرکت برای دست یافتن به هر پیشرفت که کارایی پردازشگرها را بهبود بخشید تلاش خواهند نمود و تقریباً دلیل اصلی بوجود آمدن پردازشگرهای دو هسته ای را میتوان همین دلیل سوم بیان نمود.
دسترسی AMD به تکنولوژی دو هسته ای
فرم فاکتور فعلی پردازشگر ۶۴ اتلن به طراحی دو هسته ای خیلی نزدیک میباشد. وجود کنترل کنندههای Hypertransport و کنترل کننده حافظه درقالب چیپهای فعلی ۶۴ اتلن به معنی آنست که اضافه نمودن دومین هسته در داخل چیپ چندان مشکل نمیباشد.
بدلیل رابط NorthBridge که AMD برای اتلن ۶۴ تهیه کرده است کنترل کننده حافظه و رابط Hypertransport در داخل چیپ پشتیبانی می گردد. این به چیپهای دوهستهای امکان می دهد که از داخل خود پردازشگر با یکدیگر ارتباط برقرار کنند.
تعداد ترانزیستورهای پردازشگرهای اتلن ۶۴*۲ بیش از دو برابر پردازشگرهای اتلن ۶۴ میباشد. با توجه به اینکه در ساختن CPU های جدید از روش ۹۰nm استفاده می شود سایز کل چیپ کمی افزایش پیدا کرده و ولتاژ عملکرد ۱.۳۵ تا ۱.۴ میباشد و گرمای خروجی به بیش از ۱۱۰w کمی افزایش مییابد.
هر هسته پردازشگر حافظه Cash L۱ و L۲ مخصوص به خود را دارد، ۱۲۸ KB برای L۱ و بسته به مدل ۵۱۲ KB تا ۱ MB برای L۲.
دو برتری مهمی که AMD در CPU های دو هستهای دارد عبارتند از اینکه :
“Crossbar Switch” که آدرسها را جمعآوری کرده و توزیع می کند و داده را از هر هسته به هسته دیگر یا باقی سیستم توزیع می کند در حال حاضر امکان اضافه شدن دومین هسته را دارد.
موفقیت دیگر AMD که از نظر مصرف کننده خیلی مهم میباشد امکان استفاده اتلن ۶۴*۲ از مادربردهای سوکت ۹۳۹/۹۴۰ می باشد و فقط لازم است که شرکت تولید کننده مادربرد BIOS را برای پشتیبانی از خصوصیات جدید به روز رسانی نماید.
دسترسی اینتل به پردازشگر دو هسته ای
با توجه به اینکه اینتل مانند AMD دارای مدل قبلی برای اضافه کردن هسته جدید در داخل یک قالب CPU نبود، برای ساخت آن مدل جدیدی را طراحی نمود که البته دارای نواقصی نسبت به مدل AMD میباشد.
پنتیوم D در اصل از دو پردازشگر “پرسکات” پنتیوم D در یک قالب تشکیل شده است ، این پردازنده دارای مزیت داشتن دو حافظه کش L۱ و L۲ برای هر هسته بطور مجزا میباشد، ولی دارای نواقصی نیز می باشند از جمله اینکه این دو پرداشگر برای ارتباط برقرار کردن با یکدیگر باید، از NorthBridge و FSB خارج پردازشگر استفاده نمایند. تعداد ترانزستورها برای چیپ های جدید بیش از ۲۳۰ میلیون و گرمای تولید شده به مقدار فوقالعاده ۱۳۰W برای پنتیوم Extereme Edition میرسد.
یکی از بزرگترین معایب طراحی اینتل نسبت به AMD که سوکتهای ۹۳۹ را برای طراحی پردازشگرهای دو هستهای خود حفظ نمود آن است که راه حل دو هستهای اینتل نیاز به یک جفت چیپ ست جدید بنامهای ۹۵۵X و ۹۴۵P دارد. شرکت nvidia اخیراً ویرایش اینتل SLI که پروسسورهای دو هستهای را پشتیبانی میکند را به بازار عرضه کرده است که این مورد هم زمان بیشتری را مصرف و هم هزینهای اضافی برای مصرف کننده در پی دارد.
گرما و پهنای باند :
هر دو پردازشگرهای تک هستهای AMD و Intel گرمای فوقالعاده زیادی تولید میکردند، که هیت سینکهای فوقالعاده بزرگی که برای آنها استفاده می شود گویای این مطلب میباشد. حال با اضافه کردن یک هسته اضافی چگونه میتوان این پردازشگرها را خنک نمود.
ولی AMD و Intel از چندین روش برای خنثی کردن این موضوع استفاده کردهاند، ابتدا آنکه در ساخت این پردازشگرها از تکنولوژی ۹۰nm استفاده شده که باعث کوچکتر شدن CPU ونزدیکتر شدن قسمتهای مختلف بر روی CPU شده و در نتیجه گرمای تولید شده را به مقدار زیادی کاهش میدهد و دوم آنکه فرکانس کاری این CPU ها بمقدار حدود ۴۰۰MHz نسبت به آخرین CPU های تک هسته ای کاهش پیداکرده و همچنین هسته دوم همیشه بصورت کامل کار نمیکند این سه مطلب باعث میگردد که گرمای تولید شده بمقدار خیلی زیادی نسبت به CPU های تک هستهای افزایش نیابد.
پهنای باند بکار رفته محدودیت بزرگتری برای CPU های دو هستهای میباشد، زیرا هر دو AMD و Intel پهنای باند برای CPU های تک هستهای را برای این نوع CPU ها نیز حفظ کردهاند و طرحی برای افزایش آن ندارد.
دو پردازشگر تک هسته ای در مقابل یک پردازشگر دو هستهای
محاسبات و بررسی طرحهای موجود نشان میدهد که دو چیپ اپترن AMD باید دارای سرعت بالاتری نسبت به یک چیپ دو هستهای باشد، زیرا هر یک از این OPTERON ها دارای یک کنترل کننده حافظه مجزا میباشد ولی در چیپهای دو هستهای هر دو هسته باید یک کنترل کننده حافظه را بصورت مشترک استفاده کنند.
در مورد اینتل این موضوع مطرح نمیباشد زیرا در هر دو طرح یک کنترل کننده حافظه در خارج از CPU استفاده می شود و فقط در طراحی دوهسته ای این مسیرها کوتاهتر میباشند که چندان پارامتر مطرحی در افزایش سرعت نمیباشد.
یکی از بزرگترین مزایای پردازشگرهای دو هستهای نسبت به دو پردازشگر تک هستهای بحث اقتصادی آن میباشد، زیرا اولاً خرید یک CPU دو هستهای از دو CPU تک هستهای ارزانتر میباشد و از طرف دیگر باید قیمت مادربرد را نیز لحاظ کرد که در این صورت این موضوع بیشتر جلب توجه مینماید.