Кіріспе

Жазу буфері – кэштен негізгі жадқа немесе жад иерархиясындағы келесі кэшке деректерді жазу үшін қолданылатын дерек буферінің бір түрі. Ол өнімділікті арттыру және кідіріс уақытын азайтуға мүмкіндік береді. Intel x86 және AMD64 сияқты кейбір процессор кэш архитектураларында қолданылады. Көп ядролы жүйелерде жазу буферлері тізбекті сәйкестікті бұзады. C11 дерек жарысына қатысты қағидалар сияқты кейбір бағдарламалық тәсілдер жадтың тізбекті сәйкес келетін көрінісін қалпына келтіруге жеткілікті. Жазу арқылы кэштеудің бір түрі – буферленген жазу. Жазу буферін осылай пайдалану кэшке жазу кезінде оқу сұраныстарын өңдеуге мүмкіндік береді. Бұл әсіресе өте баяу негізгі жад үшін пайдалы, себебі келесі оқулар ұзақ негізгі жад кідірісін күтпей-ақ жалғаса алады. Жазу буфері толған кезде (яғни, барлық жазбалар орын алғанда), келесі жазбалар бос орын босағанша күтуі керек. Келесі оқулар жазу буферінен өңделуі мүмкін. Бұл тоқтауды одан әрі азайту үшін жазу буферін біріктіру деп аталатын оптимизация қолданылуы мүмкін. Жазу буферін біріктіру – бір-біріне тікелей жақын мекенжайларға жазылатын деректерді бір буферлік жазбаға біріктіреді. Әйтпесе, олар жеке жазбаларды алып, құбыр желісінің тоқтауына себеп болуы мүмкін. Жәбірленуші буфер – жазу кэшіндегі кір деректерді сақтайтын жазу буферінің бір түрі, осылайша олар негізгі жадқа жазылады. Құбыр желісінің тоқтауын азайтудан басқа, қарапайым жазу буфері сияқты кір деректерді жазуды күтпеу арқасында, жәбірленуші буфер кейінгі кэштік кірулерде локальділік көрсетілген кезде уақытша резервтік сақтау ретінде де қызмет ете алады, соңғы уақытта шығарылған деректерді сұрап, олар жәбірленуші буферде сақталады. Жазу буфері IBM компаниясы ACS жобасы аясында 1964-1968 жылдары ойлап табылған, бірақ ол алғаш рет 1990 жылдары коммерциялық өнімдерде қолданылған.