دستورالعمل کنترل حافظه پنهان
این مقاله، دستورالعمل کنترل حافظه پنهان، اخیراً بهواسطهٔ فرایند ایجاد مقاله ایجاد شدهاست. بازبینیکننده در حال بستن درخواست است و این برچسب احتمالاً بهزودی برداشته میشود.
ابزارهای بازبینی: پیشبارگیری بحث اعلان به نگارنده |
خطای اسکریپتی: پودمان «AfC submission catcheck» وجود ندارد. این مقاله در حال ترجمه از ویکی انگلیسی است، لطفا حذف نشود.
در محاسبه، یک دستورالعمل کنترل حافظه نهان اشاره ای است که در جریان دستورالعمل یک پردازنده تعبیه شده است تا عملکرد حافظه پنهان سخت افزار را با استفاده از دانش قبلی از الگوی دسترسی به حافظه ارائه شده توسط برنامه نویس یا کامپایلر، بهبود بخشد. آنها ممکن است آلودگی حافظه پنهان را کاهش دهند، نیاز به پهنای باند را کاهش دهند، با ارائه کنترل بهتر بر مجموعه کاری و تاخیرها را دور بزنند. بیشتر دستورالعملهای کنترل حافظه نهان بر معنای برنامه تأثیر نمیگذارند، اگرچه برخی از آنها میتوانند.
نمونه ها[ویرایش]
چندین نمونه از چنین دستورالعمل ها، با انواع مختلف، توسط چندین معماری مجموعه دستورات پردازنده، مانند ARM، MIPS، PowerPC و x86 پشتیبانی میشوند.
واکشی اولیه[ویرایش]
همچنین به عنوان لمس بلوک کش داده، اثر درخواست بارگیری خط کش مرتبط با یک آدرس داده شده است. این کار توسط دستور PREFETCH در مجموعه دستورات x86 انجام می شود. برخی از انواع، سطوح بالاتر سلسله مراتب کش را دور می زنند، که در زمینه "جریان" برای داده هایی که یک بار عبور می کنند، به جای نگهداری در مجموعه کاری مفید است. واکشی اولیه باید به اندازه کافی زودتر در زمان انجام شود تا تأخیر دسترسی به حافظه را کاهش دهد، برای مثال در حلقه ای که حافظه را به صورت خطی طی می کند. تابع ذاتی مجموعه کامپایلرbuiltin_prefetch ،GNU، می تواند برای فراخوانی آن در زبان های برنامه نویسی C یا C++ استفاده شود.
واکشی اولیه دستورالعمل[ویرایش]
یک نوع پیش واکشی برای کش دستورالعمل است.
بلوک کش داده صفر را تخصیص می دهد.[ویرایش]
این راهنمایی برای تهیه خطوط کش قبل از بازنویسی کامل مطالب استفاده می شود. در این مثال، CPU نیازی به بارگیری چیزی از حافظه اصلی ندارد. اثر معنایی معادل یک ممست تراز شده از یک بلوک به اندازه خط کش تا صفر است، اما این عملیات به طور موثر رایگان است.
بلوک حافظه پنهان داده نامعتبر است.[ویرایش]
این راهنمایی برای حذف خطوط کش، بدون اینکه محتویات آنها به حافظه اصلی اختصاص داده شود، استفاده می شود. مراقبت لازم است زیرا نتایج نادرست ممکن است. بر خلاف سایر نکات حافظه پنهان، معنای برنامه به طور قابل توجهی اصلاح شده است. این به همراه تخصیص صفر برای مدیریت داده های موقت استفاده می شود. این امر باعث صرفه جویی در پهنای باند حافظه اصلی و آلودگی حافظه پنهان می شود.
فلاش بلوک کش داده[ویرایش]
این اشاره درخواست تخلیه فوری خط کش را دارد و راه را برای تخصیص های آینده باز می کند. زمانی استفاده می شود که مشخص شود داده ها دیگر بخشی از مجموعه کاری نیستند.
اشاره های دیگر[ویرایش]
برخی از پردازندهها از انواع دستورالعملهای load-store پشتیبانی میکنند که به نکات حافظه پنهان نیز اشاره دارد. یک مثال آخرین بار در مجموعه دستورالعمل PowerPC است که نشان میدهد دادهها فقط یک بار استفاده میشوند، به عنوان مثال، خط کش مورد نظر ممکن است به سر صف تخلیه فشار داده شود، در حالی که در صورت نیاز مستقیم، آن را در حال استفاده نگه میدارد. رده:معماری رایانه
This article "دستورالعمل کنترل حافظه پنهان" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:دستورالعمل کنترل حافظه پنهان. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.