دانشنامه کابلی

کش سی پی یو چیست؟

کش سی پی یو چیست

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

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

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

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

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

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

این حافظه ها در اکثر مواقع در سه سطح L1 ,L2 ,L3 شناخته می شوند و کش اول L1 به عنوان کش اصلی پردازنده علاوه بر آن که جزو سریع ترین حافظه سیستم محسوب می شود؛ داده هایی را شامل می شود که عمدتا به هنگام تکمیل یک پروژه خاص به آن ها نیاز پیدا می کنیم.

این لایه اول حاوی دیتا و اطلاعاتی از عملیات و دستور هایی است که باید توسط پردازنده انجام شوند و بخش دیگر آن نیز اطلاعاتی را در بر دارد که برای اجرای عملیات مورد نیاز قرار می گیرند و حتی قابل ذکر است که اگر سی پی یو چندین هسته داشته باشد برای هر هسته یک لایه L1 جداگانه وجود خواهد داشت.

کش سطح دوم نسبت به L1 کمی کندتر عمل می کند اما L2 به عنوان یک کش ثانویه نیز همانند سطح اول بسته به نوع خود پردازنده ظرفیت کشی را شامل می شود که به مراتب از سطح اول بیشتر نیز هست و همچنان جزو سریع ترین حافظه های رم سیستم شمرده می شود و ظرفیت متغیری از 256 کیلوبایت تا 8 مگا بایت دارد.

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

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

کش سی پی یو

آیا کش پردازنده بیشتر به معنای سرعت بالاتر پردازنده است؟

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

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

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

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

 

محصول پیشنهادی : کابل کواکسیال

 

منظور از Cache Miss و Cache Hit در کش سی پی یو چیست؟

پیش از این درباره سه سطح کش پردازنده توضیح دادیم و در واقع این سه سطح مسیر های طی شده به هنگام پردازش هستند چرا که به هنگام محاسبه هر گونه اطلاعاتی، ابتدا داده ها را از سطح یک دریافت کرده و اگر دچار آدرس دهی نا درست شده و یا اگر اطلاعات لازم بر روی سطح اول نباشند در همین سلسله مراتب به سراغ سطح دوم کش رفته و به همین صورت اگر داده های لازم را در آن جا نیز پیدا نکند، در نهایت در سطح سوم به دنبال آن خواهد گشت و البته که همه این جست و جو ها طی مدت زمان کوتاه و با سرعت بالایی انجام می گیرد؛ به گونه ای که در هر ثانیه چیزی حدود 2.7 میلیارد پردازش در پردازنده ها صورت می گیرد.

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

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

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *