Miscellaneous cleanup in CUDA code
Various changes to the CUDA code (and some common code as well) to make it simpler and less error-prone:
- Remove overly flexible operators of
cu::HostMemory
andcu::DeviceMemory
- Minor cleanup of
auxiliary::Memory
classes - Let
cu::*Memory
classes derive directly fromauxiliary::Memory
- Remove
copy_htoh
,copy_htod
, andcopy_dtoh
fromInstanceCUDA
- Use
std::copy_n
instead ofmemcpy
- Replace plain pointers to
InstanceCUDA
bystd::unique_ptr
Edited by Bram Veenboer