Remove the thread local begin_timestamp stack
Using a thread_local object is problematic as the thread local destructors are called first before any global destructor, making the object invalid while tearing down the process. rocblas uses a global destructor to clean up the loaded HIP modules and ends up calling hip_executable_destroy after the timestamp stack is destructed. As a result the begin timestamp for that API function is 0. The solution is to store the phase_enter timestamp in the phase_data. Change-Id: If143f4d123dfb111c72fb20365431d07e73fc570
This commit is contained in:
@@ -401,6 +401,7 @@ class API_DescrParser:
|
||||
content += ' } ' + call + ';\n'
|
||||
else:
|
||||
content += ' } args;\n'
|
||||
content += ' uint64_t *phase_data;\n'
|
||||
content += '};\n'
|
||||
return content
|
||||
|
||||
|
||||
Reference in New Issue
Block a user