Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cudagrind

1. Requirements

Cudagrind has been tested and runs with the following parameters:

  • Valgrind 3.6.0 or higher
  • CUDA SDK 4.0 or higher
  • Compatible CUDA driver
  • GCC 4.4.7 or higher

Different compilers should work if they support the C99 standard and GCC's C-(de)constructor extension.

2. Installation

To compile the Cudagrind set the location of both Valgrind's and the CUDA driver's INCLUDE and LIB directories in the Makefile. Then call 'make new' to build libcudagrind.so and put it in an accessible location.

If the system does not offer a POSIX thread library add '-DCUDAGRIND_NOPTHREAD' to the CFLAGS. This stops Cudagrind from being thread-safe for hybrid programs.

3. Execution

To check a program with Cudagrind preload Cudagrind's libcudagrind.so and the CUDA driver's 'libcuda.so' in this order

export LD_PRELOAD=/path/to/libcudagrind.so:/path/to/libcuda.so:$LD_PRELOAD

. Then execute the program with Valgrind/Memcheck

valgrind <executable>

If necessary add a suppression file to avoid display of spurious errors in the CUDA runtime. For more information about generating and using suppression files see the Valgrind manual.

About

A Valgrind extension for CUDA, unofficial mirror for https://www.hlrs.de/organization/av/spmt/research/cudagrind/

Resources

Stars

10 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages