Vaibhav Sundriyal
Vaibhav Sundriyal

Reputation: 577

CPU->GPU transfer vs GPU->CPU transfer

I have been doing some experiments regarding measuring the latency of data transfer from CPU->GPU and GPU->CPU. I found that CPU->GPU data transfer rate is almost twice as much compared to GPU->CPU transfer rate for a particular message size. Can anybody explain me why this is so?

Upvotes: 2

Views: 2289

Answers (1)

RolandXu
RolandXu

Reputation: 3678

Since don't know the detail about your experiment, like what's CPU/GPU used, how to measure transfer rate, I just guess that, data transfer from CPU->GPU, normally is through DMA. each time it can transfer a block bytes from system memory to graphic memory. But data transfer from GPU->CPU, normally CPU is to read the graphic aperture memory which is mapped by PCI bus. CPU only can read the aperture memory in un-cacheable, strict order byte by byte, so it is slow.

Upvotes: 4

Related Questions