How does Memcpy work ?

Is the CPU or the GPU which executes this fonction ? (I think it’s the GPU but I have a doubt).

And I want to know if we can use a pointer to an integer (in the src) instead of the adress of this integer in order to copy directly the information ?

The only thing executing on the GPU are device functions (kernels) so a memcopy is executing on CPU

And I am not a C guru, but a pointer to something = the address of something as far as I know.