Skip to content

Commit 2ca1342

Browse files
authored
Merge pull request cms-sw#40869 from AdrianoDee/fix_localCoordToHostAsync_131
Fix `cudaMemcpyAsync` for `localCoordToHostAsync`
2 parents 816a0b5 + 9636d83 commit 2ca1342

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

CUDADataFormats/TrackingRecHit/interface/TrackingRecHitSoADevice.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,10 @@ class TrackingRecHitSoADevice : public cms::cuda::PortableDeviceCollection<Track
4848
cms::cuda::host::unique_ptr<float[]> localCoordToHostAsync(cudaStream_t stream) const {
4949
auto ret = cms::cuda::make_host_unique<float[]>(4 * nHits(), stream);
5050
size_t rowSize = sizeof(float) * nHits();
51-
cudaCheck(cudaMemcpyAsync(ret.get(), view().xLocal(), rowSize * 4, cudaMemcpyDefault, stream));
51+
52+
size_t srcPitch = ptrdiff_t(view().yLocal()) - ptrdiff_t(view().xLocal());
53+
cudaCheck(
54+
cudaMemcpy2DAsync(ret.get(), rowSize, view().xLocal(), srcPitch, rowSize, 4, cudaMemcpyDeviceToHost, stream));
5255

5356
return ret;
5457
} //move to utilities

0 commit comments

Comments
 (0)