gpt4 book ai didi

DMA 上下文中的缓存一致性问题

转载 作者:太空狗 更新时间:2023-10-29 12:06:28 31 4
gpt4 key购买 nike

假设 CPU 修改了位置 x+50 的值并且没有将其刷新回主存(回写)。

与此同时,设备发起从 x 到 x+100 的 DMA 读取请求。

在那种情况下,如何通知 CPU 刷新脏缓存行?

最佳答案

DMA 电路通常直接与主内存一起工作,而不涉及 CPU(这就是主要思想,使 CPU 无需执行可以在硬件其他地方完成的 I/O,从而节省 CPU 周期)。所以,你可能确实遇到了 cache coherency problems .微软推荐flushing I/O buffers when using DMA .

但是有些系统确实支持 CPU 和 DMA 电路之间的高速缓存一致性协议(protocol),就像多处理器系统中 CPU 之间的协议(protocol)一样。最终答案取决于实际硬件。

关于DMA 上下文中的缓存一致性问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10139472/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com