Is there a reliable function in cuda that will record the total time for a job to run? If it’s more than ‘beginner’ difficulty to implement, application tips would be helpful.
as a secondary challenge, I will be running FORTRAN code utimately, so if anyone has experience with timing/clocks in fortran/C mixed that would be great. thanks,
geo_diver
um hello I am also running in a linux environment, and i just remembered that i can just do $ time ./exec command. is that effective enough as a profiler? i just need .1 second accuracy
For timing within Fortran, GPTL is hard to beat. You can either let it auto-instrument your functions (still requires a couple setup calls in your main program), or setup timing entries as such:
ret = gptlstart(‘computation1’)
do …
ret = gptlstop(‘computation1’)
You’ll get an entry in your GPTL output file telling you what happened between the start and stop calls. If you have PAPI installed, life gets even better (though PAPI can be more difficult to install).