[NVCC] md5sum on compiled files are different


I want to release some cuda code thanks to a “.so” file, in order to check the file is correctly transfered or see if there is code modifications i want to execute md5sum on the binary file generated.

i’ve seen the same thing with “.o” file compiled.

each time i call nvcc on a file, a different md5sum is generated from the same sources.

i suspect there the temporary paths used by cudafe to be at the origin of the problem, (i’ve seen on the ptx files some comments about these files path).

Am i right? is cudafe temporary file path the source of my problem?
Is there a way to remove theses comments in the ptx file ?
How to specify a static (not randomized) temporary cudafe file path in order all my compilations from the same source generated exactly the same binary files?

I am under opensuse12.1 with cuda 5.0

Thanks in advance


P.S. i’ve this behaviour with the small example below

// file : example.cu
#include <cuda_runtime.h>
void Call_cudaMalloc(void** ptr)

and executing the command : “nvcc example.cu -c”

run : “md5sum example.o” --> check md5sum
rm example.o

then run “nvcc example.cu -c” and “md5sum example.o”

md5sum will be different

I think this can be resolved by specifying a “keep” directory

nvcc example.cu -c --keep --keep-dir ./keep

done the job for ptx code generation…