add cudaDeviceReset for correctly profiling