As the tensor paper states, communication between devices through Tensorflow is achieved by adding “receive node” and “send node” to the devices.
In my opinion, the device (given that only the CPU devices are involved) is responsible for the operation. However, data (for example: Tensor created from operation, Variable buffer) is in memory. I don’t know how to physically transfer data from one device to another device . I assume that data transfer is achieved through shared memory. It is right?
I would appreciate any explanation / relevant codes regarding how the data is transferred. PS: TensorFlow paper binding , Figure 4 shows the communication mechanism between the devices.
source
share