Caching 为什么写合并而不是写回?

Caching 为什么写合并而不是写回?,caching,write,Caching,Write,我试图理解缓存一致性策略。在我提问之前,以下是Ulrich Drepper撰写的“每个程序员都应该知道关于内存的内容”一文中的一段小引语,我想作为参考: 传输整个缓存线只是因为缓存线中的一个字 如果下一个操作修改了下一个单词,那么编写的是浪费 因此,正如我所理解的,通过写入,我无法对同一行进行后续写入。比如说,我需要进行8次后续的8字节写入(出于什么原因!),缓存线是64字节-我最终将对同一缓存线进行8次读取、写入和逐出,对吗 在写回的情况下在第一次写入后,写入的缓存线不会被逐出,因此我可以在第

我试图理解缓存一致性策略。在我提问之前,以下是Ulrich Drepper撰写的“每个程序员都应该知道关于内存的内容”一文中的一段小引语,我想作为参考:

传输整个缓存线只是因为缓存线中的一个字 如果下一个操作修改了下一个单词,那么编写的是浪费

因此,正如我所理解的,通过
写入
,我无法对同一行进行后续写入。比如说,我需要进行8次后续的8字节写入(出于什么原因!),缓存线是64字节-我最终将对同一缓存线进行8次读取、写入和逐出,对吗

写回的情况下
在第一次写入后,写入的缓存线不会被逐出,因此我可以在第一次写入后立即创建其他缓存线,对吗

正如我所读到的,
write combine
用于(至少是它的一个目标)进行后续写入。但是,如果我可以使用
写回
进行后续写操作,为什么需要一个呢

我已经阅读了一些额外的材料,并且理解(一般来说)硬件实现是不同的,因为CPU需要与其他设备的内存进行通信,在这种情况下,常规缓存并没有那么有效(尽管我还不明白为什么)。主要问题是,基本上,什么目标是
write combine
追求的而
write back
没有,以及为什么不能通过
write back
实现这些目标?