معماری Nehalem و Nehalem EX

پردازنده های Xeon با معماری نوین Nehalem به بازار آمده اند. هسته های Nehalem بر

پایه ریز معماری Core که بهینه سازی های زیادی در آن انجام گرفته ساخته شده. یکی از بنیادین ترین بهينه سازی ها خداحافظی با معماری کلاسیک اینتل است. از نوامبر سال 2008 ریز معماری Nehalem در پردازنده ها ی رومیزی Core i7 عرضه شد. از آغاز سال 2009 هم نخستین پردازنده های Xeon با این معماری به بازار آمدند. Nehalem های 45 نانومتری با یک کنترل کننده حافظه يكپارچه شده اند و از فناوری تازه QuickPath بهره می برند. این دو ویژگی در سیستم های چند پردازنده ای، برتری های زیادی دارند.

اینتل معماری Nehalem را بسیار قابل انعطاف طراحی کرده. با این معماری می توان پردازنده هایی با 2، 4 و 8 هسته و شمار مختلفی کانال های حافظه ساخت. همچنین به گونه هایی از آن موتورهای گرافیکی نیز اضافه خواهد شد. نخستین Nehalemها در قالب پردازنده های چهار هسته ای به بازار آمدند.

 

پهنای باند بیشتر و درنگ کمتر

بر پایه اعلام اینتل زمان درنگ Nehalem در مراجعه به حافظه در مقایسه با Xeonهای Harpertown، چهل درصد کاهش یافته. حتی هنگام مراجعه به حافظه Nehalemهای همسایه با روش QuickPath باز هم زمان درنگ از Harpertown کمتر است. پهنای باند حافظه در یک سیستم دو پردازنده ای Nehalem با شش کانال DDR3-1333 به 64 گیگابایت بر ثانیه می رسد که در مقایسه با Harpertown با FSB1600 و چهار کانال FB-DIMM ، چهار برابر شده.

اینتل معماری Nehalem را به یک Cache با ساختاری نو مجهز کرده. Nehalemهای 2 ، 4 یا 8 هسته ای یک Cache سطح سوم در اختیار دارند. در Nehalemهای چهار هسته ای که 731 میلیون ترانزیستور دارند ، گنجایش این بافر 8 مگابایت است.

افزون بر این ، هر هسته یک Cache سطح دوم اختصاصی به گنجایش 256 کیلوبایت دارد که به گفته اینتل زمان درنگ آن بسیار کم است. اینتل در سطح یکم، دو Cache هر یک به گنجایش 32 کیلوبایت برای داده ها و دستورالعمل ها دارد.

 

هسته Nehalem و نوآوری های زیاد

هسته های Nehalem بر پایه ریز معماری Core  ساخته شده اند و البته تصحیحات زیادی نیز در آن ها انجام گرفته :
* Pipeline در Nehalem بر پایه ریز معماری Core ساخته شده اما از این نظر با پردازنده های Penryn تفاوت هایی دارد که می تواند در Execution-Unit ، شش دستورالعمل را به طور موازی اجرا کند.
* Cache سطح یکم در Nehalem از ساختار پردازنده های Core2/Xeon-DP بهره می برد. به همین دلیل Nehalem به یک TLB با سلسله مراتب 2 لایه ای مجهز شده. Nehalem گذشته از TLB های جدا برای داده و فرمان ها یک Unified 2nd Level TLB نیز دارد. TLB یا Translation Lookaside Buffer یک بافر کوچک است که اطلاعات لازم برای تبدیل آدرس های منطقی به فیزیکی را در خود نگه می دارد. TLB سطح دوم که گنجایش 512 مدخل را دارد در افزایش بازدهی Nehalem موثر است.
* Macrofusion در Nehalem به "CMP+Jcc" توسعه داده شده و Nehalem از Macrofusion در حالت 64 بیتی هم پشتیبانی می کند.
* Loop Stream Detector در ریز معماری Core می تواند 18 فرمان را پردازش کند. در Nehalem شمار این فرمان ها به 28 رسیده. این واحد با شناسایی حلقه ها از بار واحد پیش بینی انشعاب می کاهد.
* در Nehalem بخش Branch Prediction Reminder در مقایسه با ریز معماری Core بهینه سازی شده. Nehalem از طریق یک L2 Branch Predictor با Multi-Level-Schema در برنامه هایی که حجم کد اجرایی آنها زیاد است، (مانند بانک های اطلاعاتی) به Brach Predictor برای پیش بینی انشعاب ها کمک شایانی می کند.
* Nehalem با Renamed Return Stack Buffer از خراب شدن داده ها یا روی دادن سر ریزی در Return Stack Buffer یا RSB جلوگیری می کند.

 
SSE4.2 و Extended Page Table

اینتل در کنار افزایش توان اجرای موازی ریز دستورالعمل ها ، بازدهی پردازنده ها را با توسعه SSE ، Hyper-Threading و ویژگی های تازه مجازی سازی (Virtualization) نیز بالاتر برده.

Nehalem در هر تپش پردازنده می تواند شش فرمان را اجرا کند که می تواند سه تا از آنها فرمان های محاسباتی و سه تای دیگر فرمان های کار با حافظه باشد. Nehalem می تواند در مجموع 128 ریز فرمان را در Pipeline خودش نگهدارد که شمار آنها در ریز معماری Core حداکثر 96 عدد است. این کار در Nehalem به لطف بزرگتر شدن چهار Unified Reservation Station محقق شده. افزون بر این ، اینتل گنجایش بافرهای Load و Store را نیز 50 درصد افزایش داده.

یکی دیگر از نوآوری های معماری Nehalem ، فرمان های SSE 4.2 است. اینتل به 47 فرمان SSE 4.1 در Penryn ، هفت فرمان تازه اضافه کرده . یکی از این دستورالعمل ها برای نمونه می تواند 256 مقایسه انجام بدهد. مورد بعدی Financial Market Data Parser است. این فرمان که یکی از فرمان های SSE 4.2 است در پردازش های مالی ، شمار فرمان های مورد استفاده را 75 درصد کاهش می دهد و از این رهگذر بازدهی برنامه سه برابر افزایش پیدا می کند.

Nehalem از معماری NetBurst ، نگارش تصحیح شده از Multi-Threading همزمان را با نام Hyper-Threading به ارث برده است. با این کار هر هسته رفتاری مانند یک دو هسته ای مجازی خواهد داشت. فناوری مجازی سازی در Nehalem به Extended Page Table هم رسیده. در نتیجه زمان ورود و ترک یک ماشین مجازی در مقایسه با معماری Penryn ، 40 درد صد بهتر شده.

 

بالا بردن بسامد با فناوری Turbo

اینتل در پردازنده های Nehalem حالت Turbo را تدارک دیده که به کمک آن می توان بسامد یک، دو یا سه هسته را بالا برد. فناوری Turbo همان فناوری Dynamic Acceleration در پردازنده های Core 2 Duo است. اینتل با این فناوری سرعت اجرای برنامه های Single Thread را بالا می برد. اگر در یک پردازنده دو هسته ای یکی از هسته ها در حالت صرفه جویی در مصرف انرژی C3 یا پائین تر باشد ، بسامد هسته دیگر بالاتر می رود.

Nehalem هم با Turbo همین کار را می کند. اگر در یک پردازنده چهار هسته ای ، سه هسته غیر فعال باشند ، بسامد هسته در حال کار ، یک یا دو Speed Bin بالاتر می رود. اما اگر دو یا سه هسته در حال کار باشند ، بسامد آن ها تنها یک Speed Bin بالا می رود. هر Speed Bin در گونه های رومیزی پردازنده های Core i7 برابر با 133 مگاهرتز است.

Nehalem گذشته از فناوری Turbo به فناوری های دیگری نیز برای مدیریت مصرف انرژی مجهز شده. این پردازنده ها می توانند در حالت C6 ، هسته ها را بدون وابستگی به یکدیگر خاموش کنند. حالت C6 بر پایه اعلام اینتل تقریباً برابر است با خاموشی هسته. Nehalem می تواند بسته به میزان کار ، یکم، دو یا سه هسته را خاموش کند.

 
Nehalem و Xeon DP

پردازنده های Nehalem که به توانایی Hyper-Threading مجهز هستند برای ارتباط با دنیای بیرون و پردازنده های دیگر از رابط سریال و تازه QuickPath با پهنای باند تا 6/25 گیگابایت بر ثانیه بهره می برند. Nehalemهایی که برای سیستم های دو پردازنده ای ساخته می شوند ، دو رابط QuickPath دارند.

Tylersburg نام بستری که برای پردازنده های Nehalem تدارک دیده شده ، Tylersburg در کامپیوترهای قدرتمند تک پردازنده ای و همچنین سرویس دهنده های دو پردازنده ای به کار می رود. پردازنده های Xeon DP برای سیستم های دو پردازنده هم با نام Gainestown ساخته شده اند که سه کانال حافظه DDR3 دارند. Nehalem از DDR3های buffered و unbuffered با بسامدهای 800 ، 1066 و 1333 مگاهرتز پشتیبانی می کند. استفاده از حافظه های پرسرعت برای آینده نیز پیش بینی شده. به هر کانال می توان تا سه ماجول حافظه وصل کرد.

 
Xeon MP یا Nehalem EX

نسل پیشین پردازنده های اینتل برای کامپیوترهای اینتل برای کامپیوترهای سرویس دهنده چهار پردازنده ای خانواده Xeon 7400 با نام Dunnington و با معماری Core بود. این پردازنده های 6 هسته ای بر پایه معماری 45 نانومتری Core ساخته شده اند. اما اینتل Xeon های ویژه محیط های چند پردازنده ای را بر پایه هسته Nehalem نیز تولید کرده است. این Xeonهای MP با نام Nehalem EX نخستین پردازنده های 8 هسته ای اینتل هستند که هر هشت هسته روی یک صفحه سیلیسیومی تعبیه شده اند. Pat Gelsinger یکی از مدیران اینتل در آگوست سال 2008 یک ویفر Nehalem EX را به نمایش گذاشت. برای استفاده از Nehalem EX به دلیل وجود رابط QuickPath و کنترل کننده های یکپارچه حافظه یک بستر تازه لازم است. اینتل برای این منظور استفاده از Common Platform را که از سال ها پیش طراحی کرده بود و عرضه آن را بارها به تعویق انداخت، در نظر دارد. به این ترتیب ایتانیوم و Xeon MP از یک بستر مشترک بهره خواهند برد.

اینتل در سال میلادی گذشته عضو بعدی خانواده ایتانیوم 2 را با نام Tukwila عرضه کرد. این ایتانیوم چهار هسته هم به کنترل کننده یکپارچه حافظه و رابط  QuickPath مجهز شده اند. Tukwila چهار کنترل کننده حافظه برای کار با FB-DIMM دارد که پهنای باند کلی آن را به 34 گیگابایت بر ثانیه می رساند. هم Tukwila و هم Nehalem EX از یک سری تراشه مشترک استفاده می کنند.

 

چشم انداز

اینتل با Nehalem در سیستم های دو پردازنده ای یک گام بزرگ دیگر برداشته. اینتل با این معماری ویژگی هایی عرضه کرده که پیش از این ، برگ برنده ای ام دی به شمار می آمدند. این ویژگی ها عبارتند از چهار هسته ای واقعی ، کنترل کننده حافظه یکپارچه با پردازنده و قابل مجازی سازی و یک گذرگاه سریال و قابل انعطاف. اینتل همچنین با انجام برخی بهینه سازی های هدفمند، پاره ای از کاستی های موجود در پردازنده های ساخته شده بر پایه معماری Core را در معماری Core i7 برطرف کرده. آزمایش ها نشان داده اند که معماری Nehalem بازدهی و توانایی بیشتری دارد. این توانایی ها در سیستم های چند پردازنده ای با Xeonهای Nehalem خود را بهتر نشان می دهند.

 
زیرنویس ها

معماری Nehalem در افزایش شمار هسته ها ، رابط های QuickPath و کانال های حافظه، انعطاف زیادی دارد(179)، در سیستم های دو پردازنده ای ، آهنگ انتقال داده Nehalem در مقایسه با Xeonهای Harpertown چهار برابر شده(180 بالا)
یک Cache سطح سوم به طور مشترک در اختیار هر چهار هسته است(180 پائین)
در Nehalem اگرچه معماری هسته ها بر پایه هسته Penryn است اما در همه جنبه ها بهینه سازی هایی در آن انجام گرفته(181)
Pipeline در Nehalem بر پایه ریز معماری Core فرمان ها پردازش می کند.(182 و 183 بالا)
Nehalem گذشته از فرمان های SSE 4.1 در Penryn ، هفت فرمان تازه دارد. اینتل همه این فرمان ها را در کنار هم SSE 4.2 می نامد.(183 پائین)
Tylersburg بستری است که اینتل برای سیستم های دو پردازنده Nehalem تدارک دیده. این بستر برای هر پردازنده دو رابط QuickPath و سه کانال DDR3 دارد(185)
 

جزئیات Nehalem EX

در این بخش شما را با تازه ترین جزئيات اعلام شده از پردازنده های هشت هسته ای Nehalem EX آشنا می کنیم. این پردازنده های Xeon MP که برای سیستم های چند پردازنده ای ساخته شده اند را می توان یکی از بزرگترين جهش های اینتل در افزایش توان پردازنده ها در تاریخ پردازنده های  این شرکت تاکنون به شمار آورد. ویژگی های نوین RAS در این پردازنده ، پایداری آن را به سطح پردازنده های RISC رسانده.

Nehalem EX نسل بعدی پردازنده های اینتل برای خانواده های Xeon-MP با نام Dunnington است. اين پردازنده شش هسته ای که با معماری 45 نانومتری ساخته شده روی بستر Caneland نصب می شود. اما می توان انتظار داشت که در نیمه دوم سال جاری ، اینتل Xeonهای سیستم های چند پردازنده ای را بر پایه معماری Nehalem عرضه کند. پردازنده های خانواده Core i7 برای کاربردهای رومیزی و با معماری Nehalem مدتی است که به بازار آمده اند. در مارس 2009، Xeon 5500 برای سیستم های دو پردازنده ای عرضه شد. پردازنده Xeon MP با نام Nehalem EX نخستین پردازنده هشت هسته ای اینتل خواهد بود که هر هشت هسته آن روی یک صفحه سیلیسیومی کنار هم ساخته شده اند. بر پایه اعلام اينتل در Nehalem EX از 3/2 میلیارد ترانزیستور استفاده شده در حالیکه Xeon X7460 با هشت هسته و 25 مگابایت Cache ، 9/1 میلیارد ترانزیستور دارد.

این پردازنده هم با فناوری 45 نانومتری ساخته می شود. اینتل درباره گنجایش و وضعیت Cache در Nehalem EX تنها از یک Cache مشترک به گنجایش24مگابایت سخن گفته و جزئیات بیشتری درباره آن اعلام نکرده. البته می توان انتظار داشت که این Cache 24 مگابایتی ، همان Cache مشترک سطح سوم باشد و مطابق معماری Nehalem ، Nehalem EX هم برای هر هسته یک Cache سطح دوم اختصاصی به گنجایش 256 کیلوبایت داشته باشد.

Nehalem EX به لطف فناوری HyperThreading می تواند در هر هسته شانزدهThread  را به طور موازی اجرا کند. اینتل این پردازنده را نیز به فناوری Turbo برای افزایش بسامد تک تک هسته ها مجهز کرده. اما هنوز جزئیات بیشتری از آن اعلام نشده .

مقیاس پذیری زیاد

Nehalem EX به دلیل وجود رابط QuickPath و کنترل کننده حافظه یکپارچه با پردازنده به یک بستر کاملاً تازه نیاز دارد. بر پایه اعلام اینتل هر Nehalem EX می تواند تا 16 ماجول DIMM را کنترل کند و هر یک از چهار کنترل کننده حافظه همراه با Scalable Memory Interconnect می تواند چهار DIMM را مدیریت کند. بنابراین در یک سیستم چهار پردازنده ای می توان تا شانزده DIMM نصب کرد. به این ترتیب گنجایش حافظه در مقایسه با Xeon 7400 ، دو برابر و پهنای باند ، 9 برابر می شود.

 

ویژگی های RAS و برابری با RISC

اینتل در Nehalem EX برای نخستین بار از ویژگی های RAS پردازنده های RISC برای پردازنده های x86 بهره برده. در اصل توانایی MCA Recovery ، این امکان را فراهم کرده. به کمک MCA  یاMachine Check Architecture خطاهای پردازنده ، حافظه و ورودی/ خروجی ردگیری و تصحیح می شوند. سیستم عامل هم باید از MCA recovery پشتیبانی کند. مایکروسافت در Server 2008/R2 از آن پشتیبانی می کند. ناول در SUSE Linux Enterprise این توانایی را گنجانده و Red Hat هم در حال کار روی آن است.

اینتل در حقیقت با مجهز کردن Nehalem EX به توانایی های لازم برای افزایش بازدهی و مقیاس پذیری زیاد، درون مجموعه خود ، رقابتی با ایتانیوم 2 آغاز کرده. تا پیش از این اینتل تاکید داشت که قابلیت های RAS تنها برای کاربردهای بسیار حساس لازم است که ایتانیوم گذشته از دارا بودن این توانایی برای کار در سیستم هایی با بیش از هشت پردازنده و با حافظه زیاد مناسب است.

اینتل دوباره زمان عرضه جانشین ایتانیوم 2 با نام Tukwilla را کمی به عقب انداخته و عرضه آن از نیمه های سال 209 به سه ماهه نخست سال 2010 موکول شده.