خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


آشنایی با کش (Cache) در پردازنده ها

آشنایی با کش (Cache) در پردازنده ها
نویسنده : امیر انصاری
کش (cache) به معنای مخزن و محل ذخیره سازی می باشد. طراحی cache و در واقع طراحی عملیات caching (کش کردن) یکی از مهمترین حوادث در تاریخ کامپیوترها می باشد. در حال حاضر تقریبا همه پردازنده ها از مکانیزم caching استفاده می کنند.

سیستم یکپارچۀ سازمانی راهکار



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

عملیات caching (ذخیره کردن در پردازنده) چگونه کار می کند؟


کش (cache) در پردازنده در واقع استخرهای کوچکی از حافظه می باشند که اطلاعاتی را که پردازنده با آنها بیشتر سر و کار دارد در خود ذخیره می کنند. اینکه چه اطلاعاتی در کش ها ذخیره می شوند به الگوریتم های پیچیده و مفروضات خاصی در مورد کدهای برنامه بستگی دارد. هدف از طراحی کش ها اینست که پردازنده بتواند دستوراتی را که قرار است اجرا کند، پیشاپیش در خودش ذخیره داشته باشد تا مدام به حافظه اصلی کامپیوتر مراجعه نکند. چرا که سرعت دسترسی به اطلاعات از روی کش نسبت به سرعت دسترسی به اطلاعات از روی حافظه کامپیوتر به مراتب سریعتر است. توجه داشته باشید که وقتی در اینجا صحبت از حافظه اصلی می کنیم، منظور رم (RAM) کامپیوتر است و هارد دیسک منظور ما نمی باشد. چون پردازنده با RAM و اطلاعات روی آن درگیر می شود.

اگر کش نباشد، پردازنده مجبور است که هر بار که نیاز به دستوراتی برای پردازش و انجام دادن دارد، به حافظه اصلی کامپیوتر مراجعه کند و در واقع داده های مورد نیازش را در جای دیگری بیابد. اینجا بود که حافظه کش سطح 2 (L2 cache) نیز وارد کار شد. حافظه کش را معمولا به سطوح مختلفی دسته بندی می کنند که هر سطح (Level) سرعت دسترسی خاص خودش و حافظه خاص خودش را دارد. کش اصلی را که در سطح 1 می باشد و مستقیما با پردازنده در ارتباط می باشد L1 یا همان Level 1 می نامند. حافظه سطح 2 (L2) نسبت به حافظه سطح 1 فضای بیشتری را دارد اما طبیعتا سرعت کمتری نسبت به آن دارد. اما باز هم نسبت به سرعت خواندن اطلاعات از حافظه اصلی کامپیوتر به مراتب سریعتر عمل خواهد کرد.

پردازنده برای انجام دستوراتش ابتدا به حافظه کش سطح 1 (L1) مراجعه می کند، اگر دستوراتش را پیدا نکرد به حافظه کش سطح 2 (L2) مراجعه می کند و اگر آنجا هم داده های مورد نظرش را نیافت به حافظه کش سطح سه (L3) مراجعه خواهد کرد. اگر آنجا هم نباشد نهایتا به حافظه اصلی کامپیوتر مراجعه خواهد کرد. به این مراحل مراجعه به حافظه های مختلف توسط کامپیوتر اصطلاحا نسبت ضربه (hit rate : hit ratio) می گویند.

برای مشاهده فهرست آموزش های این دوره آموزشی بر روی لینک زیر کلیک کنید :

نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز