如果我使用的DMA RAM < - > GPU上的CUDA C ++,我怎么能肯定的是,将内存从锁定的(锁定页)RAM,从CPU缓存中读取,而不是?
毕竟,DMA,CPU不知道的事实任何人更改了内存和大约需要CPU的同步(缓存< - > RAM)。 而据我所知,性病:: memory_barier()从C + +11不与DMA帮助,而且不会从RAM中读取,但只有将导致缓存L1 / L2 / L3之间的合规性。 此外,在一般情况下,那么就没有协议缓存和CPU上RAM之间解决冲突,但仅同步协议,在NUMA不同水平的CPU高速缓冲存储器L1 / L2 / L3和多CPU的:MOESI / MESIF