NVIDIA Developer Zone

CUDA-MEMCHECK

Accurately identifying the source and cause of memory access errors can be frustrating and time-consuming.  CUDA-MEMCHECK detects these errors in your GPU code and allows you to locate them quickly.  CUDA-MEMCHECK also reports runtime execution errors, identifying situations that could otherwise result in an “unspecified launch failure” error when your application is running.

Running CUDA-MEMCHECK on your application is easy; simply pass your application’s name as a parameter to CUDA-MEMCHECK on the command line. CUDA-MEMCHECK can also be enabled within CUDA-GDB while debugging your CUDA applications.

Key Features

(click images to expand)

  • Monitors hundreds of thousands of threads running concurrently on each GPU
  • Reports detailed information about global memory access errors such as out of bounds accesses and misaligned memory accesses, including:
    • Access size
    • Access type (read or write)
    • Accessed address
    • CUDA Function/Kernel name
    • Instruction offset
    • Source file and line number (when debug information is available)
  • Reports runtime executions errors such as:
    • Device stack overflows
    • User stack overflows
    • Illegal instructions
    • Out of range accesses to shared and local memory
    • Misaligned accesses to shared and local memory
  • Support for both CUDA C and CUDA C++ applications
  • Support for 32-bit and 64-bit applications on Linux, MacOS, and Windows
  • Supports applications compiled with or without debug information
  • Enable CUDA-MEMCHECK in CUDA-GDB to detect memory access errors while debugging

 

Availability

The latest version of CUDA-MEMCHECK with support for CUDA C and CUDA C++ applications is available with the CUDA Toolkit and is supported on all platforms supported by the CUDA Toolkit.
Developers should be sure to check out NVIDIA Parallel Nsight for integrated debugging capabilities.

References

 

Questions on CUDA Tools?

If you encounter difficulty with any of the CUDA Tools or have more questions please contact the NVIDIA tools team at cudatools@nvida.com