title: Pinned memory in CUDA and cudamemcpy()
body: <p>I understand that when copy operation between host and device starts using cudaMemcpy, the host pointer is pinned automatically. Then what is the meaning and necessity of having a separate API cudAHostAlloc() for allocating pinned host memory?      </p>