پیش واکشی حافظه نهان ( به انگلیسی: cache prefetching ) ، تکنیکی است که توسط پردازنده های رایانه انجام می شود و برای تقویت عملکرد اجرای برنامه ها است. در این تکنیک، پردازنده دستورالعمل ها یا داده ها را از حافظه اصلی ( حافظه کندتر ) به یک حافظه محلی ( حافظه تندتر ) قبل از اینکه واقعاً مورد نیاز باشد بازیابی می کند ( از این رو اصطلاح 'prefetch' نامیده می شود ) . [ ۱] اکثر پردازنده های کامپیوتری مدرن، دارای حافظه نهان سریع و محلی هستند که داده های بازیابی شده را تا زمانی که مورد استفاده قرار نگرفته اند در خود نگه می دارند. معمولاً عملیات پیش واکشی در حافظه اصلی صورت می گیرد. به دلیل طراحی پردازنده ها، معمولاً دسترسی به حافظه های نهان بسیار سریع تر از دسترسی به حافظه اصلی است، بنابراین واکشی اولیه داده ها و سپس دسترسی به آن ها از طریق حافظه نهان معمولاً چندین مرتبه سریع تر از دسترسی مستقیم به آن ها از حافظه اصلی است. واکشی اولیه را می توان با دستورالعمل های کنترل حافظه پنهان غیر مسدود کننده ( non - blocking ) انجام داد.
پیش واکشی حافظه نهان می تواند داده ها یا دستورالعمل ها را در حافظه پنهان بازیابی کند.
• پیش واکشی داده، داده ها را قبل از نیاز بازیابی می کند. از آنجا که الگوهای دسترسی به داده ها نظم کمتری نسبت به الگوهای دستورالعمل نشان می دهند، واکشی داده ها معمولاً چالش برانگیزتر از واکشی دستورالعمل است.
• پیش واکشی دستورالعمل، دستورالعمل ها را قبل از نیاز به اجرا بازیابی می کند. اولین ریزپردازنده های اصلی که از نوعی پیش واکشی دستورالعمل استفاده کردند، Intel 8086 ( شش بایت ) و موتورولا ۶۸۰۰۰ ( چهار بایت ) بودند. در سال های اخیر، تمام پردازنده های با کارایی بالا از تکنیک های پیش واکشی استفاده می کنند.
پیش واکشی حافظه نهان می تواند توسط سخت افزار یا نرم افزار انجام شود.
• پیش واکشی مبتنی بر سخت افزار معمولاً با داشتن مکانیزم سخت افزاری اختصاصی در پردازنده انجام می شود. در این روش، دستورالعمل ها یا داده هایی را که توسط برنامه اجراکننده در یک جریان خاص ( stream ) درخواست می شود، بررسی می شود و چند دستور یا دادهٔ بعدی که ممکن است در این جریان برنامه به آن نیاز داشته باشد شناسایی می کند و در حافظه پنهان پردازنده، پیش واکشی می کند. [ ۲]
• پیش واکشی مبتنی بر نرم افزار معمولاً با تجزیه و تحلیل کد توسط کامپایلر و درج دستورالعمل های اضافی «پیش واکشی» در برنامه هنگام کامپایل شدن انجام می شود. [ ۳]
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلفپیش واکشی حافظه نهان می تواند داده ها یا دستورالعمل ها را در حافظه پنهان بازیابی کند.
• پیش واکشی داده، داده ها را قبل از نیاز بازیابی می کند. از آنجا که الگوهای دسترسی به داده ها نظم کمتری نسبت به الگوهای دستورالعمل نشان می دهند، واکشی داده ها معمولاً چالش برانگیزتر از واکشی دستورالعمل است.
• پیش واکشی دستورالعمل، دستورالعمل ها را قبل از نیاز به اجرا بازیابی می کند. اولین ریزپردازنده های اصلی که از نوعی پیش واکشی دستورالعمل استفاده کردند، Intel 8086 ( شش بایت ) و موتورولا ۶۸۰۰۰ ( چهار بایت ) بودند. در سال های اخیر، تمام پردازنده های با کارایی بالا از تکنیک های پیش واکشی استفاده می کنند.
پیش واکشی حافظه نهان می تواند توسط سخت افزار یا نرم افزار انجام شود.
• پیش واکشی مبتنی بر سخت افزار معمولاً با داشتن مکانیزم سخت افزاری اختصاصی در پردازنده انجام می شود. در این روش، دستورالعمل ها یا داده هایی را که توسط برنامه اجراکننده در یک جریان خاص ( stream ) درخواست می شود، بررسی می شود و چند دستور یا دادهٔ بعدی که ممکن است در این جریان برنامه به آن نیاز داشته باشد شناسایی می کند و در حافظه پنهان پردازنده، پیش واکشی می کند. [ ۲]
• پیش واکشی مبتنی بر نرم افزار معمولاً با تجزیه و تحلیل کد توسط کامپایلر و درج دستورالعمل های اضافی «پیش واکشی» در برنامه هنگام کامپایل شدن انجام می شود. [ ۳]
wiki: پیش واکشی حافظه نهان