تبلیغات :
خرید لپ تاپ استوک
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دانلود فیلم جدید
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام
ماهان سرور
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 4 1234 آخرآخر
نمايش نتايج 1 به 10 از 31

نام تاپيک: بررسی کامل معماری Nehalem وپردازنده هایCore i7

  1. #1
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض بررسی کامل معماری Nehalem وپردازنده هایCore i7

    بررسی کامل معماری Nehalem وپردازنده هایCore i7

    مقدمه

    حال پس از گذشت چندماه از عرضه پردازنده‌هاي Corei7 شايد در نگاه اول به تيتر مقاله كمي صحبت در مورد اين نسل از پردازنده‌ها، چندان تازگي نداشته باشد، اما با توجه به هدف اين مقاله مبنی بر بررسي کامل معماري و كارآيي اين پردازنده‌ها در مقابل پردازنده‌هاي Phenom II شركت رغيب يعني AMD كه چندي پس از عرضه پرازنده‌هاي Corei7 معرفي و عرضه شدند اين اجازه را به ما مي‌دهد كه در مورد سوال هميشگي اين كه كدام پردازنده بهتر است، تا حدي و به گونه‌اي كلي نيز اظهارنظر كنيم.




    در ابتدا قصد داشتيم 2 مقاله در مورد مباحث تخصصي و جزئيات معماري Nehalem و كارآيي Corei 7 ارائه كنيم اما به دليل ارتباط مستقيم دو مبحث و درك بهتر مباحث در كنار هم پرونده‌اي هر چه كامل‌تر از اين پردازنده‌ها را ارائه كنيم لذا سعي شده است تا حد امكان از زباني ساده و قابل فهم براي نگارش اين مطلب استفاده شود تا همه‌ي خوانندگان محترم بتوانند استفاده‌اي مفيد از اين مبحث شيرين ببرند.


    ...و اما Core i7 :
    در مورد موفقيت معماري Nehalem بدون شك تاكنون صحبت‌هايي شنيده‌ايد و ميتوان گفت هيچ ترديدي درموفقيت اين نسل از پردازنده‌ها نيست اما ايده این معماري موفق از كجا سرچشمه گرفته است؟
    از AMD اين شايد جواب بسياري از شما خوانندگان محترم و حتي تیتر چندي از سياست‌هاي معتبر جهاني باشد. انتقال كنترلر حافظه از پل شمالي به داخل پردازنده، حافظه‌ي مشترك سطح L3 كه تاثير بسزايي در كارآيي و موفقيت اين پردازنده‌ها بجا گذاشته‌اند در ظاهر همه از تكنولوژيهاي AMD است ، براي صحت و يا عدم صحت اين عقيده اجازه بدهید به 8 سال قبل بازگرديم سال 2001 بود كه صحبت‌ها در مورد ايده انتقال كنترلر حافظه به درون پردازنده از طرف AMD شروع شده بود كه در طرف مقابل اینتل همچنان به افزايش فركانس كاري معتقد بود و برآن پافشاري مي‌كرد و بالاخره AMD اين ايده را در سال 2003 در پردازنده‌هاي 64 بيتي خود پياده كرد اما اين معماري خود تقليدي از پردازنده‌هاي Power P4 شركت IBM بود و اساس ان متعلق به IBM بوده و هست و در طرف مقابل نيز اینتل بود که براي اولين بار در معماري NetBurst از حافظه نهان سطح 3 (L3) با ظرفيت 2 مگابايت در پردازنده های P4 Extreme استفاده كرد، پس ديگر نمي‌توان تهمت تقليد از AMD را به معماري Nehalem شركت اينتل زد، در ادامه متوجه مي‌شويد كه معماري Nehalem بيشتر الهام گرفته از پردازنده‌هاي سرور مي‌باشد و اين سياست‌هاي زيركانه اینتل بوده است كه با تركيب عوامل كارآمد توانسته اين موفقيت چشمگير را رقم بزند.
    Last edited by street king; 02-06-2009 at 15:11.

  2. 3 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  3. #2
    اگه نباشه جاش خالی می مونه kevin's Avatar
    تاريخ عضويت
    Jun 2006
    محل سكونت
    tehran
    پست ها
    431

    پيش فرض

    خیلی از نظر کارکرد وسرعت جالب هستند ولی از نظر قیمت نه . . . !!!

  4. #3
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    نگاهي اجمالي به پردازنده‌هاي Corei7:

    پردازنده‌هاي Corei7 اولين نسل از پردازنده‌هاي مبتني بر معماري Nehalem هستند و از 4 هسته با نام Bloomfield با پروسه ساخت 45 نانومتري واز سوکت LGA 1366بهره مي‌برند (همچنين بايد متذكر شوم كه پياده‌سازي هسته‌هاي Corei7 به روش يكپارچ (monolithic) مي‌باشد) كه با استفاده از تكنولوژي Hyper Threading هر هسته قادر به پردازش دو عمليات به صورت همزمان مي باشد. (پردازنده های Corei7 توانایی پردازش 16 دستورالعمل را به صورت همزمان دارد).
    با انتقال كنترلر حافظه به درون پردازنده ديگر FSB حذف و جاي خود را به رابط QPI (Quick Patch Interconnect) داده و فقط از حافظه‌هاي DDR3 پشتيباني مي‌كند كه حافظه‌ها را نيز مي‌توان به صورت سه كاناله (Triple Channel) نيز پياده‌سازي كرد.
    پردازنده‌هاي Corei7 داراي 3 سطح حافظه نهان Cache) L3, L2, L1) بوده كه مقدار هركدام به ترتيب 8MB, 2MB, 256KB مي‌باشد.
    در اين نسل از پردازنده‌ها سوكت پردازنده نيز از اين سير تحولات در امان نبوده و به LGA 1366 تغيير يافته و براي پشتيباني اين نسل از پردازنده‌ها بايد از مادربردهاي مبتني بر چيست X58 (چيپست طراحي شده براي پردازنده‌هاي Corei7) بهره برد.


    پشتيباني ازهردو تكنولوژي 3-way 8LI, CrossFire-x ، دستورهاي SSE 4.2 ، تغیرات TLB و SMT و... ازديگر ويژگي‌هاي اين پردازنده‌هاي قدرتمند است كه در ادامه‌ي مقاله به تشريح كامل جزئيات هريك از اين فناوريها و مطالب بالا مي‌پردازيم.

    Last edited by street king; 02-06-2009 at 15:10.

  5. 2 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  6. #4
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    Core 2 VS Cori7 VS PhenomII

    به دليل گستردگي مطالب فني هر نسل از پردازنده‌ها در اين بخش از مقاله تنها به صورت اجمالي به بيان تفاوتهاي بين پردازنده‌هاي Corei 7 با پردازنده‌هاي Core 2, Phenom مي‌پردازيم كه درجدول زير مي‌توانيد تمام جزئيات هر يك از معماري‌ها را ببينيد.



    حال با توجه به درك تفاوتهاي موجود بين نسل‌هاي مختلف پردازنده‌ها يعني Core 2 نسل پيشين اينتل و فنوم شركت AMD توجه شمار را به نتايج تست‌هاي بدست آمده جلب مي‌كنم.
    در جدول زیر اختلاف کارایی پردازنده Core i7 965 با دو پردازنده QX9770 و Phenom X4 9550 Black مشخص شده است.(برای مثال در تست Crysis پردازنده Phenom X4 33.7 درصد و پردازنده QX9770 از اینتل 12.1 درصد کندتر(slower) از Core i7 965 ظاهر شده اند.)



    همانطور كه مشاهده مي‌كنيد پردازنده‌هاي Corei7 برتري بسيار چشمگيري نسبت به ديگر پردازنده‌ها داشته‌اند.
    پردازنده‌هاي Corei7 داراي 5 مدل مختلف بودكه 3 مدل ابتدايي تا كنون به بازار عرضه شد و 2 مدل ديگر نيز تا چندي ديگر به بازار عرضه مي‌شوند.



    تفاوت کارایی پردازنده های Corei7 نسبت به یکدیگر را نیز می توانید در جدول زیر مشاهده کنید:



    طبق رسم و رسوم شرکت اینتل اين بار نيز پردازنده‌ها در 2 دسته‌ي مختلف معمولي و Extreme عرضه شده‌اند كه 975 و Corei7 965 تنها پردازنده‌ های سري Extreme اين نسل می باشند كه با ضريب multiplier باز (unlock) بيشتر باب میل اوركلاکرها هستند.


    Last edited by street king; 02-06-2009 at 15:09.

  7. این کاربر از street king بخاطر این مطلب مفید تشکر کرده است


  8. #5
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    رابط QPI گذرگاهی برای عبور از محدودیت :

    اين بار ديگر اينتل توانست از (FSB (Front Side Bus دل بكند و آنرا كنار بگذارد چرا كه اين رابط كند با مشكلات و معايبي كه داشت ديگر نمي‌توانست جوابگوي چنين معماري قوي باشد وباعث شد اينتل از گذرگاه جديدي با نام Quick Patch Interconnect) QPI ) در معماري Nehalem استفاده كند.

    QPI براي ارتباط بين پردازنده‌ و حافظه‌ها و از دو مسير جداگانه جهت ارسال و دريافت داده استفاده مي‌كند.
    ارتباط پردازنده- حافظه و پردازنده- IO با استفاده از اتصالات نقطه به نقطه پهناي باندي معادل 8/4 گيگاتكسل در ثانيه را در حالت يكطرفه ايجاد مي‌كند كه در حالت دو طرفه اين مقدار به 6/9 گيگاتكسل در ثانيه مي‌رسد اين نرخ انتقال براي پردازنده‌هاي 920, 940 بوده و براي پردازنده i7 965 پهناي باندي معادل 4/6 گيگاتكسل در حالت يكطرفه و 8/12 گيگاتكسل در حالت 2 طرفه ايجاد مي‌كند.



    رابطه QPI در واقع يك رابط سريال به نام Common System Interface) CSI) با اتصال نقطه به نقطه است كه داراي دو مسير ارسال و دريافت به صورت مجزا مي‌باشد عرض هر يك از اين مسيرها 20 بیت بوده كه 16 بيت آن براي انتقال داده و 4 بيت آن نيز براي كدهاي كشف خطا استفاده مي‌شود.



    اگر مشخصات پردازنده QX 9770 (قويترين پردازنده Core 2 ها) را بخاطر داشته باشيد متوجه مي‌شويد كه پهناي باند i7 965 دقيقا برابر QX 9770 است حال اين سوال پيش مي‌آيد كه چرا Corei7 سريعتر است؟
    همانطور كه گفته شد QPI داراي دو مسير مجزا براي خواندن و نوشتن است يعني 8/12 گيگاتكسل براي خواندن و 8/12 گيگاتكسل براي نوشتن در صورتيكه در پردازنده QX 9770 اين پهناي باند براي هر دو عمليات خواندن و نوشتن به صورت اشتراكي استفاده مي‌شود و از طرف ديگر در FSB داده‌هاي مربوط به هر دو بخش I/O وحافظه‌ها بايد انتقال پيدا كند اما در مقابل يعني در QPI تنها داده‌هاي مربوط به I/O انتقال مي‌يابد (در Corei7 ديگر داده‌اي مربوط به حافظه انتقال نمي‌يابد چرا كه كنترلر حافظه به درون پردازنده‌ انتقال يافته است). بنابراين حجم تبادل اطلاعات در FSB بيشتر از QPI است كه باعث مي‌شود پهناي باند قابل دسترس Core i7 نسبت به Core 2 بيشتر شود. اينتل همچنين براي جبران پايين بودن نرخ انتقال اطلاعات در Core i7 نسبت به Core فركانس كاري را افزايش داده است. حال ديگر كاملا مطمئن مي‌توانيد نتيجه‌گيري كنيد كه QPI بسيار سريعتر از FSB است.

    Last edited by street king; 02-06-2009 at 15:11.

  9. 2 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  10. #6
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    كنترلرحافظه‌مجتمع و یکپارچه :

    شايد اقدام اينتل براي انتقال كنترلر حافظه از چيپست به درون پردازنده كمي دیر انجام شد اما بسيار كاملتر و مفيدتر از كنترلر حافظه‌ي پردازنده‌هاي AMD ظاهر شده است كنترل كننده داخلي پردازنده‌هاي Corei 7 قابليت دسترسي به 3 ماژول حافظه از نوع DDR3 را به صورت همزمان و موازي (3 كاناله- Triple Channel) سرعتی معادل 25.4 Gb/s برای انتقال اطلاعات فراهم مي‌كند كه در مجموع پردازنده در هر سيكل به 192 (64×3) بيت دسترسي خواهد داشت در صورتيكه در پردازنده‌هاي مبتني بر معماري K10 شركت AMD اين رقم 128 (64×2) بيت بوده كه تنها از حافظه‌هاي DDR2 نيز پشتيباني مي‌كردند (البته در پردازنده‌هاي Phenom IIAMD با سوكت AM3 و پلتفورم Dragon قابليت پشتيباني از حافظه‌هاي DPR3 فراهم شده است).


    كنترلر حافظه پردازنده‌هاي Corei7 توانسته به خوبي پهناي باند را نسبت به Core2 تا دو برابر افزايش (حداكثر 32 گيگابايت در ثانيه) و زمانهاي تاخير دسترسي به حافظه را كاهش دهد.


    همچنين بنابر اعلام شركت اينتل در حالت تئوري استفاده از حالت 3 كاناله، پهناي باند را در مقايسه با حالت 2 كاناله تا 50 درصد افزايش مي‌دهد. فركانس پايه پردازنده‌هاي Corei7 برابر 133 مگاهرتز است كه در مدلهاي 940, 920 با ضرايب 6 و8 تنها از حافظه‌هاي DDR3- 1066- DDR3- 800 مي‌كند اما در پردازنده i7 695 با توجه به پشتيباني از ضرايب 10 و12 ميتوان از حافظه‌هاي بافركانس 1600 , 1333 نيز بهره برد (در مدلهاي Core 2 QX 9770 قابليت پشتيباني از حافظه‌هاي با فركانس 1600 را دارا مي‌باشد. نيز تنها پردازنده
    استفاده از حالت 3 كاناله ازديگر ويژگي‌هاي جديدي بود كه اينتل بر روي آن مانور تبليغاتي مي‌داد كه طبق اعلام شركت اينتل استفاده از حالت 3 كاناله، در حالت تئوري پهناي باند را تا 50 درصد نسبت به حالت 2 كاناله (Duall Channell) افزايش مي‌دهد حال اگر به نتايج بدست آمده توجه كنيد متوجه مي‌شويد كه تفاوت بسياركمي (کمتر از ا درصد) بين حالت 2 كاناله و 3 كاناله وجود دارد و درحال حاضر استفاده از حالت 3 كاناله اصلا به صرفه نيست.

    Last edited by street king; 02-06-2009 at 15:12.

  11. 2 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  12. #7
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    حافظه نهان 3 سطحی ایده ای قدیمی:

    معماري Nehalem حافظه نهان پردازنده‌هاي Corei 7 را نسبت به پردازنده‌هاي قبلي شركت اينتل دستخوش تحولات بسياري كرد اينتل براي اولين بار در پردازنده‌هاي چهارهسته‌اي خود از 3 سطح حافظه نهان (Cache) استفاده كرد.


    حافظه كش سطح L1 تنها حافظه نهاني بود كه تغييري پيدا نكرد و همانند قبل از 64 كيلوبايت حافظه نهان براي هر هسته استفاده شد كه 32 كيلوبايت آن براي داده‌ها و 32 كيلوبايت ديگر براي كدها (دستورالعمل‌ها) اختصاص دارد و در مجموع 256 كيلوبايت كش سطح L1 را تشكيل مي‌دهند .تنها تغییر بوجود امده در حافظه نهان سطح L1افزایش زمان تاخیر از 3 سیکل به 4 سیکل است.
    اما كش سطح L2 تغييرات مثل همیشه تغییرات زيادي پيداكرده است، پردازنده‌هاي قبلي با هسته‌هاي PenrynConroe و چهار هسته‌ايهاي kentsfield, yorksfield از حافظه نهان سطح L2 به صورت اشتراكي با حجم بالا (2و3و6و8و12 مگابايت) بهره مي‌بردند اما اين بار تنها يك مگابايت فضا به حافظه نهان سطح L2 اختصاص داده شده است كه براي هر هسته 256 كيلوبايت به صورت اختصاصي در نظر گرفته شده است اما اينتل براي جبران كاهش حجم کاشه سطح L2 و بهبود عملكرد و كارايي با كاهش سيكل‌هاي تغيير از 15 سيكل به 10 سيكل زمانهاي تاخير را كاهش داده و سرعت دسترسي به داده‌ها را افزايش داده است (حافظه نهان L2 در پردازنده‌هاي فنوم نيز به صورت اختصاصي است) .


    از دیگر تغیراتی که در حافظه نهان سطح 1و2 ایجاد شد استفاده از 8 ترانزیستور بجای 6 ترانزیستور درمعماری core بدلیل تغییر ارایش جدید حافظه نهان صورت گرفت .
    سیر تحولات حافظه L2 از ابتدا تا کنون را در نمودار زیر می توانید مشاهده کنید.


    و اما حافظه نهان سطح L3 كه تاثير بسزايي در افزايش كارآيي پردازنده دارد و به عقيده‌ي بسياري در نگاه اول تقليد از پردازنده‌هاي فنوم شركت AMD است، همانطور که در ابتدا گفته شد استفاده از 3 سطح حافظه نهان اولین بار توسط اینتل صورت گرفت در ادامه نیز متوجه خواهيد شد كه تفاوت بسياري بين معماري دو شركت در طراحي كاشه سطح L3 وجود دارد.
    در معماري Nehalem هر هسته براي دسترسي به يك داده اگر داده‌ي مورد نظر در حافظه نهان L3 وجود نداشته باشد پردازنده با اطلاع از موجود نبودن داده، ديگر به جستجوي داده در هسته‌هاي ديگر درگير نمي‌شود كه باعث مي‌شود زمان تاخير در دسترسي به اطلاعات كاهش يابد و در صورتيكه داده مربوطه در حافظه نهان سطح L3 وجود داشته باشد مي‌توانيد از چهارمسير مجزا (هر هسته 1 مسير) به داده‌ها دسترسي پيدا كند كه باعث كاهش حجم مبادلات بين هسته‌ها مي‌شود و همچنين از وابستگي حافظه‌هاي نهان اختصاصي هرهسته به حافظه‌ي اختصاصي هسته‌هاي ديگر كاسته مي‌شود.
    از ديگر ويژگي‌هاي طراحي حافظه نهان در Corei7 امكان دسترسي همزمان هر چهارهسته به داده‌هاي موجود در سطح L3 است كه باعث مي‌شود پردازنده در پردازش‌هاي چند رشته‌اي و multi tasking سريعتر عمل كند همچنين بنابر اعلام شركت اينتل سرعت تبادل داده‌ها بين هسته‌هاي مختلف نسبت به پردازنده‌هاي Core 2 نيز افزايش يافته است. اما در طراحي حافظه نهان پردازنده‌هاي اينتل همچنان مشكلاتي وجود دارد، پهناي باند حافظه نهان سطح L2 براي اجراي دستورالعمل‌ها همانند پردازنده‌هاي قبلي همچنان برابر 16 بايت در هر سيكل است (درپردازنده‌هاي فنوم برابر 32 بايت در ثانيه) و از آنجا كه پردازنده‌هاي مبتني بر معماري Nehalem داراي 1 كد گشاي بيشتر نسبت به پردازنده‌هاي فنوم هستند باعث شده فشار بيشتري روي حافظه نهان سطح L2L1 نسبت به قبل از 3 به 4 افزايش يافته و موجب مي‌شود سرعت حافظه نهان سطح L1 را بيش از پيش كاهش دهد. مشكل ديگري در حافظه نهان وجود دارد و بين هر دو پردازنده‌هاي اينتل و AMD نيز مشترك است اين است كه هر حافظه نهان به طور مستقل داده و دستورالعمل را در خود ذخيره مي‌كند كه باعث مي‌شود فضاي حافظه نهان با داده‌هايي موجود در سطوح ديگر حافظه نهان از بين برود. وارد شود كه در صورت اجراي دستورالعمل‌هاي 64 بيتي اين مشكل بيش از پيش نمايان مي‌شود اما مشكل به همين جا ختم نمي‌شود، زمان تاخير نيز در حافظه سطح
    اما در كل حافظه نهان اشتراكي سطح L3 اينتل با 8 مگابايت فضاي در دسترس كمك عمده‌اي به بهبود كارايي پردازنده‌هاي Corei7 در پردازش‌هاي سنگين و به خصوص نرم‌افزارهاي تك رشته‌اي كرده است.
    سیر تحولات مجموع حافظه L2+L2 از ابتدا تا کنون را نیز در نمودار زیر مشخص شده است.

    Last edited by street king; 02-06-2009 at 15:13.

  13. 2 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  14. #8
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    Hyper Threading راهكاري از گذشته:

    اینتل تكنولوژي Hyper Threading (چند بندي) را ابتدا در سال 2003 در پردازنده‌هاي (Pentium D, Pentium 4 (NetBurst معرفي كرد كه در آن زمان بدليل عدم سازگاري نرم‌افزارها با اين تكنولوژي و هم چنين مشكلات موجود در معماري كه گاه مصرف توان را نيز تا حد نسبت زيادي بالا مي برد نتوانست موفق ظاهر شود و پس از آن اينتل را كنارگذاشت و اين بار دو مرتبه در پردازنده‌هاي Corei7 استفاده كرده است.
    به زبان ساده تكنولوژي Hyper Threading را اينگونه ميتوان تشريح كرد كه اين تكنولوژي هر هسته را قادر مي‌سازد كه دو كد مستقل (Thread) را به طور همزمان اجرا كند هر هسته پردازنده‌هاي مبتني بر اين معماري در اصل شامل دو هسته منطقي ميباشد كه هركدام حالت كاري مخصوص به خود را دارا مي‌باشند در اين صورت سيستم عامل مي‌تواند هر هسته پردازنده را به عنوان دو هسته بشناسد، شما با بازكردن پنجره Task Manager در سيستم عامل مي‌بينيد كه سيستم عامل پردازنده Corei7 را با 8 هسته مي‌شناسد.


    اما چرا Hyper Threading:

    درطراحي پردازنده‌ها، واحدهاي اجرايي از مهمترين قسمت‌هاي پردازنده‌ مي‌باشد كه ميتواند تاثير بسزايي در كليه بخش‌هاي پردازنده داشته باشد اما اين واحدهاي اجراي هر چه بهتر بتوانند تغذيه شوند مي‌توانند عملكرد بهتري داشته باشند، اجراي چندين كد مستقل (Thread) به صورت همزمان بهترين روش براي تغذيه مناسب واحدهاي اجرايست چرا كه در اين روش تعداد ترانزيستورها و اندازه هسته به اندازه كمي افزايش پيدا مي‌كند اين روش (Hyper Threading) ميتوان بهره‌گيري از يك واحد اجرايي هر هسته را به ميزان 2 برابر افزايش داد اين كار تنها با ارسال 2 كد مستقل (Thread) از دستورالعمل‌ها به صورت همزمان به هر يك از هسته‌هاي پردازنده و بدون نياز به افزايش واحدهاي اجرايي قابل اجرا است.



    بهره‌گيري از تكنولوژي Hyper Threading در معماري Nehalem همانطوركه در نتايج زير مي‌بينيد گاه تا 35 درصد باعث افزايش كارآيي شده است (اين رقم در پنتيوم‌ها تنها 4 تا 5 درصد بود) البته در مواردي نيز كه نرم‌افزارها قادر به تشخيص اين معماري نيستند باعث كاهش كارآيي شده است كه كاربر با درك اين مطلب مي‌تواند با فعال كردن به موقع اين تكنولوژي استفاده‌اي مطلوب از آن ببرد.



    در ادامه‌ي مقاله در بخش SMT دليل اين افت كارآيي را به صورت كامل توضيح خواهيم داد.

    Last edited by street king; 02-06-2009 at 15:13.

  15. این کاربر از street king بخاطر این مطلب مفید تشکر کرده است


  16. #9
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    دستورات SSE 4.2 کامل تر از همیشه :

    مجموعه دستورات Streaming SIMD Extensions) SSE) ابتدا در سال 1999 توسط اينتل معرفي شد. دستورالعمل‌هاي SSE 4 شامل 54 دستورالعمل جديد است كه با توليد پردازنده‌هاي 45 نانومتري متولد شدند كه 47 دستورالعمل آن در پردازنده‌هاي 45 نانومتري با معماري Penryn تحت عنوان SSE 4.1 ارائه شدند و 7 دستورالعمل باقي مانده در پردازنده‌هاي مبتني بر معماري Nehalem عرضه شدند كه زير مجموعه دستورات SSE 4.2 ناميده مي‌شدند (SSE 4.2 از تمامي 47 دستورالعمل SSE 4.1 هم پشتيباني مي‌كند).
    هدف از ارائه دستورالعمل‌هاي SSE4 افزایش Performance در برنامه های چند رسانه ای ، imaging ، و برنامه های کار با object های 3 بعدی هست . این دستورات باع افزایش کارایی کامپایلر های برداری و همچنین شامل پک هایی از دستورالعمل هایی هست که افزایش محاسبات Dword یا همان Text Processing را در بر دارد .
    این دستورالعمل ها همچنین عملیاتی رو میسر می سازند که طی آن توان عملیاتی Memory در زمانی که اطلاعات از uncacheable WC memory خوانده میشوند افزایش پیدا میکند .
    كه در زير مي‌توانيد مجموعه دستورالعمل‌هاي SSE 4.2 , SSE 4.1 رامشاهده كنيد:

    مجموعه دستورالعمل های SSE 4.1

    • دستورالعمل که نقش ضرب کننده های پک dword رو ایفا می کنند .
    • دستورالعمل که تولید نقطه ای داده های floating-point همراه با گزینش خروجی و ورودی داده ها رو بر عهده دارند .
    • دستورالعمل که وظیفه بارگذاری به همرا یک streaming hint رو در بردارد
    •دستورالعمل که ساده سازی دادهای blend را بر عهده دارد .
    •8 دستورالعمل که پشتیبانی از حداقل و حداکثر اعداد صحیح را توسعه می دهد
    • دستورالعمل که گرد کردن داده های floating-point به همراه روش گرد کردن انتخابی و دقت لغو کردن استثناء ها را پشتیبانی می کند .
    • دستورالعمل که ورود داده ها و استخراج آن ها را از رجیستر های XMM بهبود می بخشد.
    • دستورالعمل که باعث بهبود تبدیل داده های عدد صحیح می شوند ( علامت و پسوند های مبدآ (
    • دستورالعمل که باعث بهبود SAD (sum absolute difference)i جهت کوچک تر شدن بلوک ها میشود
    • دستورالعمل که به جست و جوی عملیات افقی کمک میکند .
    • دستورالعمل که مقایسه های ماسک شده رو بهبود می بخشد .
    • دستورالعمل که باعث اضافه شدن بسته های ، برابری مقایسه های ، داده های qword میشوند .
    • دستورالعمل که باعث اضافه شدن بسته های Dword به همراه اشباع شدن بی علامت میشود .

    مجموعه 7 دستورالعمل SSE 4.2

    • رشته سازی و محاسبات واژه که میتواند با استفاده از یک دستور ، دستور العمل های چندگانه را برنامه ریزی کند .
    • دستورالعمل های Application-targeted accelerator (ATA)i
    • دستورالعمل SIMD (Single Instruction, Multiple Data)i که افزایش ظرفیت 128bit ی اعداد صحیح SIMD در SSE4.1 می شود
    5 مورد از مجموعه دستورالعمل‌هاي اضافه شده در پردازنده‌هاي Corei7 كه تحت عنوان SSE 4.2 از آن يادكرديم باعث افزايش سرعت پردازش فايل‌هاي XML و دستورالعمل ديگر در تشخيص صدا و DNA مي‌تواند موثر واقع شود وآخرين دستورالعمل اين مجموعه (CRC32) نيز براي شتاب‌دهي در محاسبات كدهاي تشخيص خطا استفاده مي‌شود.


    (پردازنده‌هاي Corei7 همچنين از تمامي دستورات EM64, MMX, SSE3, SSE2, SSE نيز پشتيباني مي‌كند).
    Last edited by street king; 02-06-2009 at 15:15.

  17. 2 کاربر از street king بخاطر این مطلب مفید تشکر کرده اند


  18. #10
    داره خودمونی میشه street king's Avatar
    تاريخ عضويت
    Apr 2009
    پست ها
    143

    پيش فرض

    SMT:

    معماري Nehalem توانست انقلابي را در عرصه معماري پردازنده‌ها بوجود آورد اينتل در تمامي قسمتهاي ساختاري و زيربخش نيز تحولات بسياري ايجاد كرد واحد SMT نيز از اين قاعده مستثني نيست.
    درمعماري Nehalem با توجه به افزايش دستورالعمل‌هاي اجرايي و با توجه به اينكه نحوه‌ي كاركرد SMT كه هميشه بار بيشتري را روي موتوراجرايي و آن هم خارج از ترتيب اعمال مي‌كند اينتل براي جلوگيري از كندشدن ورودي بافرها، بافرهاي Reorder (بافرهايي هستند كه داده‌هاي مربوط به دستورالعمل‌هاي از پيش اجرا شده را در خود ذخيره مي‌كند) را به 128 ثبات افزايش داده اين در حاليست كه در معماري قبل Core 2 اين رقم 96 ثبات بوده است. اما در عمل، بافرهاي Reorder تقسيم‌بندي مي‌شوند تا هركدام از كدهاي مستقل (Thread) تنها به يك بخش از بافر دسترسي داشته باشند و نتواند همه‌ي منابع را در اختيار خود نگه دارند. حال با SMTHyper Threading چند مورد كاهش كارآيي را به خاطر داشته باشيد، اين كاهش كارآيي تنها در نرم‌افزارهايي رخ مي‌دهد كه با تكنولوژي Hyper Threading به گونه‌اي مشكل دارند (البته اين مشكل بيشتر پيش پاي برنامه‌نويسان است). اندازه‌ي هر يك از اين بخش‌ها تنها به 64 ثبات پيدا مي‌كنند ولي در صورتيكه حتي يك كد مستقل به
    صورت فردي اجراء شود، مي‌تواند به همه ثبات‌ها دسترسي پيدا كند كه باعث كاهش كارآيي مي‌شود،


    در بخش Unified Reservation Station ( ایستگاه یکپارچه رزرواسیون بخشي كه با شناسايي دستورالعمل‌هاي مختلف دستورالعمل‌ها را بخش‌هاي اجرايي متفاوت ارسال مي‌كند) نيز اينتل اندازه‌ي بافرها را از 32 ثبات به 36 ثبات افزايش داده است، اما در اين بخش پردازنده در موارد خاص با افت كارآيي روبه‌رو نمي‌شود چرا كه تقسيم‌بندي ديناميكي ثبات‌ها اين اجازه را به Thread هاي مختلف مي‌دهد كه بسته به دستورالعمل خود به صورت هوشمند از ثبات‌ها استفاده كنند. (ایستگاه رزرواسیون تنها بخشي است كه قابليت تقسيم‌بندي دنياميكي را دارد). همچنين اندازه‌ي بافر بارگذاري و ذخيره‌سازي نيز از 32 ثبات به 48 ثبات برای واحد بارگذاري و از 16 ثبات به 32 ثبات برای واحد ذخيره‌سازي افزايش پيدا كرده است.



    با تمامي اين تفاسير SMT بيشتر مواقع تاثير مثبت بركارآيي پردازنده و به خصوص در نرم‌افزارهاي كاربردي داشته است.

    Last edited by street king; 02-06-2009 at 15:16.

  19. این کاربر از street king بخاطر این مطلب مفید تشکر کرده است


صفحه 1 از 4 1234 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •