Jetson TK1 memory management


I’m working on an application for Jetson TK1.
Is there a way to take advantage of the fact that the memory is physically shared between CPU and GPU? I need to read repeatedly input data and currently I do this by:

fread(data_host, size , file_id );
cudaMemcpy(data_device, data_host ,size, cudaMemcpyHostToDevice)

Ideally I would like to avoid to define two distinct memory areas and to copy data from one to the other.
Is there a way to write input data directly on the the memory pointed by the device?
I don’t need something that just simplifies the programmer point of view (like CUDA 6 Unified Memory does). I would like to do this physically. Is it possible? I need to gain as much time as possible.

Thank you, Gabriel