I am aware of the 3 ways of transfering data from host to gpu
cudamemcpy, cudahostalloc(default), cudahostalloc(pinned).
What happens with pinned memory at a lower level?
When zerocopy who initializes the transfer/mapping, cpu or gpu?
Is there any way to have a piece of HOST memory dedicated to gpu and gpu can read, write, etc this piece autonomously without any involment of cpu (except some initialization of course)?
Can anyone tell me more about Unified Virtual Address Space (Cuda C programming guide Version 4.0 page 37)