What are the advantages for using Thrust device_malloc
instead of the normal cudaMalloc
and what does device_new
do?
For device_malloc
it seems the only reason to use it is that it's just a bit cleaner.
The device_new
documentation says:
"device_new implements the placement new operator for types resident in device memory. device_new calls T's null constructor on a array of objects in device memory. No memory is allocated by this function."
Which I don't understand...