تالار گفتمان مانشت
محل قرار گیری کش L2 کجاست؟ - نسخه‌ی قابل چاپ

محل قرار گیری کش L2 کجاست؟ - irpersian20 - 19 تیر ۱۳۹۵ ۱۱:۳۰ ق.ظ

با درود
دوستان من این مباحث اصلا راستش نمیدانم و تازه کارم.

The L2 cache is on the same processor chip and uses the same die as the CPU, however, it is still not part of the core of the CPU.

این منظور چیه؟ کش L1 درون خود سی پی یو هست. بعد این میگه L2 درون چیپ پردازنده هست و درون خود هسته نیست درسته؟
یعنی برای هر هسته ما کش L1 مجزا داریم ؟ اگر ۴ هسته داریم. ۴ تا کش L1 داریم؟

RE: محل قرار گیری کش L2 کجاست؟ - Saman - 19 تیر ۱۳۹۵ ۱۲:۱۱ ب.ظ

سلام.
نحوه ی قرار گیری کش بیشتر به طراحی بستگی داره به نظرم،
بعد از قرار گیری کش سطح یک در داخل پردازنده ، چیپست هایی طراحی میشه که مابین رم و CPU قرار میگیره که سرعت همه شون از رم بیشتره.
در مورد هسته ها هم،میشه گفت : میتونه به ازای یک هسته یک کش موجود باشه و هم چند هسته از کش اشتراکی استفاده کنن.
=======
دقت در تصاویر زیر : (سطوح بعدی کش در داخل چیپست ها قرار داده شده اند)
[تصویر:  414250_CPU-Cache.jpg]
[تصویر:  414250_computer-Memories-from-hdd-to-cpu.jpg]
[تصویر:  414250_shared-L3-cahce-memory.jpg]
[تصویر:  414250_fixed-cache-size-for-every-cpu-core.jpg]
[تصویر:  414250_intel-smart-cache-explained.jpg]
[تصویر:  414250_Cache-memory-hirearchy.jpg]
=======
اطلاعات بالا کافیه و
جزئیات کامل در لینک زیر

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


RE: محل قرار گیری کش L2 کجاست؟ - Behnam‌ - ۱۹ تیر ۱۳۹۵ ۰۴:۲۰ ب.ظ

(۱۹ تیر ۱۳۹۵ ۱۱:۳۰ ق.ظ)irpersian20 نوشته شده توسط:  با درود
دوستان من این مباحث اصلا راستش نمیدانم و تازه کارم.

The L2 cache is on the same processor chip and uses the same die as the CPU, however, it is still not part of the core of the CPU.

این منظور چیه؟ کش L1 درون خود سی پی یو هست. بعد این میگه L2 درون چیپ پردازنده هست و درون خود هسته نیست درسته؟
یعنی برای هر هسته ما کش L1 مجزا داریم ؟ اگر ۴ هسته داریم. ۴ تا کش L1 داریم؟

الان تمامی کش‌ها و هسته‌ها، روی "یک چیپِ واحد" هستند؛ اما اینکه کدوم کش‌ها داخل هسته باشند و کدوم روی چیپِ پردازنده، بستگی به پیاده‌سازی داره. دقت شود که تمامی هسته‌ها و کش‌ها روی چیپ پردازنده هستند، و نه روی چیپ‌های دیگه و نه بر روی برد اصلی (motherboard).

هر هسته‌ی پردازنده، کشِ L1 خودش رو داره که شامل دو بخش کش داده و کش دستورالعمل هست. این کش داخل هر هسته‌ی پردازنده قرار داره، در نتیجه‌ی به تعدد هسته‌ها کشِ L1 خواهیم داشت. البته استثنا هم داریم. پردازنده‌های سری بولدوزر AMD دارای کش L1 مشترک برای دستورالعمل‌ها هست (همان پردازنده‌ای که با رنگ سبز در پست قبلی مشخص شده هست). به ازای هر هسته، ۱۶ کیلوبایت کش L1 داده و به ازای هر ماژول (دو هسته)، ۶۴ کیلوبایت کش L1 دستورالعمل اختصاص پیدا کرده.

بر خلاف کش L1 که به ازای هر هسته یک کش داریم (به جز معدودی استثنا)، هر هسته میتونه کش L2 مختص به خودش داشته باشه، یا اینکه یک کش L2 بین چند هسته به اشتراک گذاشته بشه. در اغلب پردازنده‌های دو هسته‌ای AMD هر هسته یک کش L2 داشت ولی پردازنده‌های دو هسته‌ای اینتل (core 2 duo) کش L2 مشترک داشتند که هر کدوم معایب و مزایای خودشون رو دارن که به application هم بستگی داره. در پردازنده‌های بیش از دو هسته‌ای (چهار، شش، یا هشت) اغلب کش L2 برای هر هسته جدا هست (به اشتراک نمی‌ذارند) اما همیشه هم اینطور نیست و در همین پردازنده‌ی بولدوزر AMD، کش L2 برای هر ماژول (شامل دو هسته) مشترک هست.

کش L3 اما مشترک هست تا بتونه حافظه‌ی مشترک فراهم کنه.