اگر به مشخصات یک پردازنده دقت کنید، در کنار تعداد هسته، رشته، فرکانس و ... مقدار ظرفیت حافظه کش پردازنده را نیز مشاهده خواهید کرد. شاید گزارش حافظه Cache در چند سطح مختلف شامل L1، L2 و L3 برایتان عجیب به نظر برسد. اگر می‌خواهید با مفهوم کَش سی پی یو، اهمیت آن در عملکرد یک پردازنده و انواع حافظه Cache آشنا شوید، در این مقاله همراه شهر سخت افزار باشید.

فهرست مطالب این مقاله:

- کش کردن به چه معناست؟
حافظه کش در کامپیوتر کجاست؟
حافظه Cache در کامپیوتر چیست؟
انواع حافظه Cache پردازنده
نحوه مشاهده مقدار حافظه کش در CPU
دستاوردهای اینتل و AMD در توسعه حافظه کش پردازنده
جمع‌بندی و پاسخ به سوالات پر تکرار

پردازنده داده‌هایی را پردازش می‌کند که جایی در کامپیوتر شما ذخیره شده‌اند. این داده‌ها ممکن است در هارددیسک و درایو SSD قرار داشته باشند که ظرفیت بالایی دارند اما نسبتاً کند هستند. به همین دلیل حافظه رم یا DRAM مورد استفاده قرار می‌گیرد که نسبت به هارددیسک سرعت بالاتری در انتقال داده‌ها به پردازنده دارد. اما با وجود حافظه رم چند گیگابایتی چرا پردازنده نیز باید به حافظه کوچکی مجهز شود که تنها چند مگابایت ظرفیت دارد؟

سرعت حافظه رم برای انتقال داده‌ها به پردازنده‌های قدرتمند امروزی کافی نیست و می‌تواند بر عملکرد پردازنده تاثیر منفی بگذارد. نیاز به سرعت بیشتر در انتقال داده‌ها به پردازنده موجب شد تا پردازنده‌ها به حافظه سریع‌تری مجهز شوند که آن را با عنوان حافظه Cache یا حافظه پنهان سی پی یو می‌شناسیم.

در این مقاله با مفهوم کَش، نقش، اهمیت و  انواع حافظه Cache پردازنده و دستاوردهای اینتل و AMD در ارتقاء و مدیریت بهینه حافظه کش آشنا می‌شوید.

کش کردن به چه معناست؟

به ذخیره‌سازی موقت داده‌ها در یک محیط محاسباتی کش کردن گفته می‌شود. کش کردن کمک می‌کند تا در صورت نیاز به استفاده مجدد از یک داده سرعت دسترسی به آن افزایش یابد.

حافظه کش در پردازنده
کش کردن برای دسترسی سریع‌تر به داده‌ها

حافظه کش در کامپیوتر کجاست؟

کش کردن داده می‌تواند به طور نرم افزاری در زمان مرور صفحات وب توسط مرورگر شما انجام شود تا در زمان مراجعه مجدد به همان وب سایت داده‌های تکراری از روی هارددیسک شما بارگذاری شود و وب‌گردی سریعتری را تجربه کنید.

در همین رابطه بخوانید:

- مقایسه تعداد هسته با سرعت کلاک پردازنده
حافظه RAM چیست؟ وظایف رم و کاربردهای آن چیست؟

کش کردن می‌تواند به صورت سخت افزاری نیز انجام شود. پردازنده کامپیوتر شما به حافظه‌های کوچک و سریعی مجهز شده که داده‌ها را به طور موقت نگه‌داری می‌کند تا در زمان نیاز به سرعت در اختیار پردازنده قرار دهد.

محل حافظه کش در پردازنده
محل قرار گیری حافظه کش L1، L2 و L3 روی پردازنده

حافظه Cache در کامپیوتر چیست؟

کش به حافظه‌ای گفته می‌شود که در خود پردازنده قرار می‌گیرد و نیاز به تبادل اطلاعات میان پردازنده و حافظه رم را کاهش می‌دهد. از آنجایی که حافظه نهان CPU سرعت بالاتری در مقایسه با رم دارد، داده‌ها با سرعت بیشتری در اختیار پردازنده قرار می‌گیرند و زمان معطل ماندن پردازنده برای دریافت داده‌ها نیز کاهش می‌یابد.

تعریف ارائه شده، کاربرد حافظه کش پردازنده را نیز مشخص می‌کند. در حقیقت حافظه کَش سی پی یو برای افزایش سرعت دسترسی پردازنده به داده‌ها مورد استفاده قرار می‌گیرد.

انواع حافظه Cache پردازنده

شرکت‌های اینتل و AMD در مشخصات پردازنده‌های کامپیوتری مقدار حافظه کش L1، L2، L3 و به ندرت L4 را گزارش می‌کنند. هر پردازنده به سطوح مختلفی از حافظه کش مجهز می‌شود که از نظر ظرفیت و زمان دسترسی هسته‌های پردازنده به داده‌هایی که روی این حافظه‌ها نگه‌داری می‌شوند با یکدیگر تفاوت دارند.

حافظه پنهان پردازنده
سطوح مختلف حافظه کش روی یک پردازنده

پردازنده برای دست‌یابی به داده‌های مورد نیاز در انجام یک عملیات ابتدا حافظه کش L1 را جستجو می‌کند. اگر داده‌های‌ مورد نظر روی کش L1 قرار نداشته باشند، حافظه کش L2 را جستجو می‌کند. اگر داده‌ها روی کش L2 قرار نداشته باشند، به ترتیب حافظه کش L3 حافظه رم و در نهایت هارددیسک و درایو SSD جستجو می‌شوند.

در همین رابطه بخوانید:

- تفاوت فرکانس حافظه رم با نرخ داده (MHz با MT/s) چیست
تفاوت پردازنده های تری (Tray) و پردازنده های باکس (Boxed) اینتل

انواع حافظه کش یک پردازنده عبارتند از:

کش لایه اول L1

یکی از انواع حافظه کش، حافظه کش پردازنده L1 نزدیکترین و سریعترین حافظه قابل دسترس برای هسته‌های یک پردازنده محسوب می‌شود. هر هسته پردازنده به یک حافظه کش L1 مجهز شده که سرعت بیشتر (کمترین تاخیر) و ظرفیت کمتری در مقایسه با کش L2 و L3دارد.

کَش سی پی یو L1 به دو بخش مجزا شامل Instruction Cache و Data Cache تقسیم می‌شود. عملیاتی که باید توسط پردازنده انجام شود، روی Instruction Cache و داده‌هایی که در هر عملیات مورد استفاده قرار می‌گیرند، روی Data Cache نگه‌داری می‌شوند.

کش لایه دوم L2

حافظه کش L2 نیز مانند کش L1 غالباً به یک هسته از پردازنده اختصاص دارد اما گاهی نیز بین چند هسته به طور مشترک مورد استفاده قرار می‌گیرد.

کش L2 ظرفیت بالاتری نسبت به کش L1 دارد؛ یعنی در حالی که ظرفیت کش L1 با واحد کیلوبایت گزارش می‌شود، ظرفیت حافظه کش L2 پردازنده‌های قدرتمند امروزی به چند مگابایت نیز می‌رسد.

 کش لایه سوم L3

حافظه کش L3 بین تمامی هسته‌های پردازنده به طور مشترک مورد استفاده قرار می‌گیرد و با وجود ظرفیت بیشتر، تاخیر بالاتری نیز در مقایسه با کش L1 و L2 دارد. در واقع کش سطح 3 (L3) یک حافظه تخصصی است که برای بهبود عملکرد L1 و L2 ایجاد شده است.

از آنجایی که کش L3 تاخیر کمتری در مقایسه با حافظه رم دارد، افزایش ظرفیت حافظه کش L3 موجب می‌شود تا پردازنده بتواند با سرعت بیشتری به داده‌ها دسترسی داشته باشد. امروزه ظرفیت کش L3 پردازنده‌های کامپیوترهای شخصی به چند ده مگابایت می‌رسد.

جالب است بدانید که حافظه نهان L2 ممکن است در برخی سیستم‌های خاص روی یک تراشه یا پردازنده کمکی جداگانه در کنار CPU اصلی سیستم جای گرفته و برای ارتباط آن با پردازنده دستگاه از یک گذرگاه جایگزین با سرعت بالا نیز استفاده شود. به این ترتیب ترافیک در گذرگاه اصلی سیستم کند نمی‌شود.

حافظه کش پردازنده
کش های بر پایه eDRAM

حافظه کش L4

حافظه نهان L4 برای اولین بار توسط اینتل از طریق ریزمعماری Haswell در 4 ژوئن 2013 معرفی شد. اولین پردازنده استفاده کننده از کش سطح 4 دارای 128 مگابایت حافظه نهان L4 و از حافظه دسترسی تصادفی پویا (eDRAM) تعبیه شده تشکیل شده بود. این سطح کش به حافظه نهان L3 متصل شده و می‌توان آن را هم توسط CPU و هم توسط پردازنده گرافیکی مجتمع مورد استفاده قرار داد.

در همین رابطه بخوانید:

- تاریخچه پردازنده های کامپیوتر و معرفی تاثیرگذارترین CPU های تاریخ
مقایسه i7 ،Core i9 و i5 ؛ کدام پردازنده اینتل برای شما مناسب است؟

تعدادی از پردازنده‌های 14 نانومتری مبتنی بر معماری Broadwell اینتل (مانند پردازنده Intel Broadwell i7-5775C) به حافظه DRAM نیز مجهز شده‌اند. این حافظه که از آن با عنوان سطح چهارم حافظه کش یا L4 نیز یاد می‌شود مانند حافظه رم عمل می‌کند. تجهیز پردازنده‌ها به حافظه کش L4 متداول نیست و اغلب پردازنده‌ها تنها به کش L1، L2 و L3 مجهز می‌شوند.

نحوه مشاهده مقدار حافظه کش در CPU

شرکت‌های اینتل و AMD مشخصات کَش سی پی یو را برای پردازنده‌های مختلف اعلام می‌کنند که از روی جعبه پردازنده یا جستجوی مدل پردازنده در اینترنت قابل دستیابی است.

برای مشاهده حافظه کش پردازنده می‌توانید از برنامه CPU-Z نیز استفاده کنید.

  • پس از نصب و راه‌اندازی این برنامه می‌توانید اطلاعات مربوط به حافظه کش را در بخش Cache از تب CPU مشاهده کنید.
  • اطلاعات مربوط به کش پردازنده به طور جزئی‌ از تب Caches برنامه CPU-Z نیز قابل مشاهده است.
انواع حافظه cache
نمایش کش پردازنده در برنامه CPU-Z

مقادیر L1 D و L1 I ظرفیت قسمت‌های Instruction Cache و Data Cache از کش L1 را نشان می‌دهند. ظرفیت کش L2 و L3 نیز در ردیف‌های پایین‌تر همان تب برنامه CPU-Z قابل مشاهده است.

دستاوردهای اینتل و AMD در توسعه حافظه کش پردازنده

اینتل و AMD تکنیک‌هایی را برای مدیریت و افزایش حافظه کش ارائه کرده‌اند که هر یک نقش مهمی در بهبود عملکرد پردازنده‎ها داشته است. در ادامه با فناوری‌های کش هوشمند اینتل و 3D V- Cache شرکت AMD آشنا خواهید شد.

در همین رابطه بخوانید:

- مقایسه پردازنده موبایل و دسکتاپ
رده بندی بهترین پردازنده های موبایل

کش هوشمند چیست؟

اینتل در سال 2006 میلادی فناوری کش هوشمند یا Smart Cache را برای پردازنده‌های چند هسته‌ای معرفی کرد. این فناوری هر هسته را قادر می‌سازد تا در صورت نیاز از کل ظرفیت حافظه کش L2 و L3 استفاده کند که بین چند هسته به اشتراک گذاشته شده‌اند.

کَش سی پی یو
سمت راست استفاده از فناوری کش هوشمند اینتل، سمت چپ حافظه کش مجزا برای هر هسته

به کمک این فناوری در صورتی که بخش از هسته‌های پردازنده به طور موقت خاموش شوند، تمامی ظرفیت حافظه کش L2 و L3 در دسترس هسته‌های فعال قرار می‌گیرند.

فناوری 3D V- Cache چیست؟

فناوری 3D V-Cache تکنیک جدیدی است که شرکت AMD برای افزایش حافظه کش L3 پردازنده‌های جدید خود مورد استفاده قرار داده است. در این تکنیک یک لایه اضافی حافظه کش L3 روی لایه CCD پردازنده قرار می‌گیرد و بدون افزایش ابعاد پردازنده حافظه Cache بیشتری را در دسترس ما قرار می‌دهد.

حافظه نهان پردازنده سه بعدی چیست؟
افزودن حافظه کش اضافی به کمک فناوری 3D V-Cache

جمع‌بندی و پاسخ به سوالات پر تکرار

در این مقاله تلاش کردیم تا معنی کَش پردازنده یا سی پی یو اهمیت آن را به زبان ساده بیان کنیم. حافظه کش پردازنده نقش مهمی در بهره‌گیری از ظرفیت‌ کامل یک پردازنده دارد. بدون وجود کش کافی پردازنده برای دریافت داده‌ها از حافظه رم معطل مانده و سرعت بالای قدرتمندترین پردازنده‌ها نیز در نتیجه وجود گلوگاه تبادل اطلاعات بین پردازنده و رم به‌هدر می‌رود.

به طور منطقی پردازنده‌های قدرتمندی که حافظه کش پردازنده بیشتری دارند، گران‌تر نیز هستند؛ بنابراین بهتر است تا پردازنده‌ای را انتخاب کنیم که نیازهای ما را برآورده می‌سازد.  هرچند حافظه کش اهمیت زیادی در عملکرد یک پردازنده دارد اما سایر ویژگی‌ها مانند تعداد هسته، رشته، فرکانس کاری و حتی برق مصرفی پردازنده را نباید نادیده بگیریم. انواع حافظه Cache در دسته‌بندی سطوح مختلف قرار می‌گیرند که علت این سطوح، راحتی دسترسی هر هسته به آنها و اشتراک‌گذاری داده‌هاست.

چگونه حافظه کش کامپیوتر را پاک کنیم؟

برای پاک کردن حافظه کَش سی پی یو کافی است تا کامپیوتر خودتان را خاموش کنید تا تمامی داده‌های کش پردازنده و حافظه رم پاک شوند.

مقدار ظرفیت کش مناسب برای پردازنده چقدر است؟

هرچه ظرفیت حافظه کش CPU بیشتر باشد، می‌تواند با سرعت بالا به حجم بیشتری از داده‌ها دسترسی داشته باشد. اما ظرفیت مناسب حافظه کش به نحوه استفاده از پردازنده بستگی دارد.

تاثیر حافظه کش بر کیفیت اجرای برنامه‌های مختلف یکسان نیست؛ برای مثال وجود ظرفیت کافی از حافظه Cache برای اجرای روان بازی‌های کامپیوتری اهمیت بسیار بالاتری نسبت به استفاده از یک نرم افزار ساده و سبک دارد.

چرا حافظه رم را مثل حافظه کش نمی‌سازند؟

حافظه SRAM بسیار گرانتر از DRAM است و در صورتی که حافظه رم با استفاده از SRAM ساخته شود، حافظه رم بسیار بزرگتر و گرانتری حاصل می‌شود که در نهایت تاثیر چندانی نیز در بهبود عملکرد کامپیوتر نیز ندارد.

چرا پردازنده‌های قدرتمند‌تر حافظه کش بیشتری دارند؟

پردازنده‌های قدرتمندتر غالباً تعداد هسته‌های بیشتری‌ دارند و در نتیجه به حافظه کش L1 بیشتری نیز مجهز می‌شوند که به هر یک از هسته‌های پردازنده اختصاص دارد.

به علاوه این پردازنده‌ها با فرکانس کاری بالاتر و هسته‌های بیشتر، حجم بیشتری از داده‌ها را در یک زمان مشخص پردازش می‌کنند و به همین دلیل باید ظرفیت بیشتری از حافظه کش L2 و L3 در دسترس هسته‌های پردازنده قرار داده شود.

کش CPU چه کاری انجام می دهد؟

حافظه Cache پردازنده، داده‌ها را با سرعت بالاتری نسبت به حافظه رم و دیگر تجهیزات ذخیره‌سازی در دسترس هسته‌های پردازنده قرار می‌دهد.

آیا کش برای CPU مهم است؟

برای درک اهمیت کش (Cache) پردازنده بهتر است تا عملکرد حافظه کش را بررسی کنیم. بدون حافظه نهان پردازنده امکان استفاده از حداکثر ظرفیت محاسباتی پردازنده وجود ندارد و به عبارت دیگر هسته‌های پردازنده در طی زمان انتظار برای دریافت اطلاعات از حافظه رم بیکار باقی می‌مانند.

اگر داده‌ها با تاخیر زیاد در دسترس پردازنده قرار داده شوند، قدرتمندترین پردازنده‌ها نیز کند عمل می‌کنند.

تفاوت حافظه نهان CPU در مقابل RAM چیست؟

حافظه کَش سی پی یو با استفاده از SRAM ساخته می‌شود که هزینه بالاتر، سرعت بیشتر و مصرف برق کمتری در مقایسه DRAM دارد. حافظه DRAM بر پایه اصول شارژ و دشارژ خازن عمل می‌کند و باید به طور پیوسته بازنویسی شود؛ به عبارت دیگر ولتاژ خازن در محدوده مشخصی حفظ شود تا امکان باخوانی داده‌ها وجود داشته باشد. در مقابل SRAM با استفاده از ترکیب ترانزیستوری ساخته می‌شود و به بازنویسی داده‌ها نیازی ندارد.

نظر خود را اضافه کنید.

ارسال نظر بدون عضویت در سایت

0
  • هیچ نظری یافت نشد

ورود به شهرسخت‌افزار

ثبت نام در شهر سخت افزار
ورود به شهر سخت افزار

ثبت نام در شهر سخت افزار

نام و نام خانوادگی(*)
لطفا نام خود را وارد کنید

ایمیل(*)
لطفا ایمیل خود را به درستی وارد کنید

رمز عبور(*)
لطفا رمز عبور خود را وارد کنید

شماره موبایل
Invalid Input

جزو کدام دسته از اشخاص هستید؟(*)

لطفا یکی از موارد را انتخاب کنید