Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix access to uninitialised memory in RawToDigi_kernel #206

Conversation

fwyzard
Copy link

@fwyzard fwyzard commented Nov 29, 2018

Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...

Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
@fwyzard
Copy link
Author

fwyzard commented Nov 29, 2018

Validation summary

Reference release CMSSW_10_4_0_pre2 at c6061f4
Development branch CMSSW_10_4_X_Patatrack at b8334a2
Testing PRs:

makeTrackValidationPlots.py plots

/RelValTTbar_13/CMSSW_10_4_0_pre2-PU25ns_103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_13/CMSSW_10_4_0_pre2-103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

DQM GUI plots

/RelValTTbar_13/CMSSW_10_4_0_pre2-PU25ns_103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_13/CMSSW_10_4_0_pre2-103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

logs and nvprof/nvvp profiles

/RelValTTbar_13/CMSSW_10_4_0_pre2-PU25ns_103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

/RelValZMM_13/CMSSW_10_4_0_pre2-103X_upgrade2018_realistic_v8-v1/GEN-SIM-DIGI-RAW

Logs

The full log is available at https://fwyzard.web.cern.ch/fwyzard/patatrack/pulls/03488ef0452a185595c78ca7d23ee413eb03c8bb/log .

@fwyzard
Copy link
Author

fwyzard commented Nov 29, 2018

No negative impact on runtime performance.
Before:

Running 4 times over 4200 events with 1 jobs, each with 8 threads, 8 streams and 1 GPUs
  1833.6 ±   2.6 ev/s (4000 events)
  1840.2 ±   2.6 ev/s (4000 events)
  1812.8 ±   2.1 ev/s (4000 events)
  1848.8 ±   2.7 ev/s (4000 events)

After:

  1851.5 ±   2.1 ev/s (4000 events)
  1850.1 ±   2.8 ev/s (4000 events)
  1874.4 ±   2.7 ev/s (4000 events)
  1873.6 ±   2.2 ev/s (4000 events)

@fwyzard
Copy link
Author

fwyzard commented Nov 29, 2018

Comparison of the summaries look good.
The initcheck errors are gone.

@fwyzard fwyzard merged commit da30349 into cms-patatrack:CMSSW_10_4_X_Patatrack Nov 29, 2018
@fwyzard fwyzard deleted the fix_memory_RawToDigi_kernel branch November 29, 2018 10:53
@fwyzard fwyzard added this to the CMSSW_10_4_0_pre3_Patatrack milestone Dec 7, 2018
@fwyzard fwyzard added fixed bug and removed bug labels Dec 7, 2018
fwyzard added a commit that referenced this pull request Oct 8, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Oct 19, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Oct 20, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Oct 23, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Nov 6, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Nov 16, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard pushed a commit that referenced this pull request Dec 25, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Dec 29, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
fwyzard added a commit that referenced this pull request Dec 29, 2020
Reported by cuda-memcheck --tool initcheck:

CUDA-MEMCHECK
Host API memory access error at host access to 0x7fe311800000 of size 112660 bytes
    Uninitialized access at 0x7fe311811720 on access by cudaMemcopy source.
    Saved host backtrace up to driver entry point at error
    ...
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (pixelgpudetails::SiPixelRawToClusterGPUKernel::makeClustersAsync(SiPixelFedCablingMapGPU const*, unsigned char const*, SiPixelGainForHLTonGPU const*, pixelgpudetails::SiPixelRawToClusterGPUKernel::WordFedAppender const&, unsigned int, unsigned int, bool, bool, bool, bool, bool, cuda::stream_t<false>&) + 0x1d87) [0x6e827]
    Host Frame:.../pluginRecoLocalTrackerSiPixelClusterizerPlugins.so (SiPixelRawToClusterHeterogeneous::acquireGPUCuda(edm::HeterogeneousEvent const&, edm::EventSetup const&, cuda::stream_t<false>&) + 0x768) [0x58618]
    ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant