Introduce a new API roctracer_get_timestamp().

roctracer_status_t roctracer_get_timestamp(uint64_t* timestamp);

Get system timestamp for roctracer clients.

The API could be used to help roctracer clients understand the reference frame
of timestamps when receiving activity callbacks, as the nanoseconds reported in
the activity callbacks are not in the same reference frame as CPU walltime
clock.
Этот коммит содержится в:
Wen-Heng (Jack) Chung
2019-12-19 18:03:40 +00:00
родитель 23a1d54acf
Коммит b7aa8fedb7
2 изменённых файлов: 10 добавлений и 0 удалений
+4
Просмотреть файл
@@ -225,6 +225,10 @@ bool roctracer_load(
void roctracer_unload(bool destruct);
// Get system timestamp.
roctracer_status_t roctracer_get_timestamp(
uint64_t* timestamp);
#ifdef __cplusplus
} // extern "C" block
#endif // __cplusplus
+6
Просмотреть файл
@@ -1106,6 +1106,12 @@ PUBLIC_API void roctracer_unload(bool destruct) {
ONLOAD_TRACE_END();
}
PUBLIC_API roctracer_status_t roctracer_get_timestamp(uint64_t* timestamp) {
API_METHOD_PREFIX
*timestamp = util::HsaRsrcFactory::Instance().TimestampNs();
API_METHOD_SUFFIX
}
PUBLIC_API bool OnLoad(HsaApiTable* table, uint64_t runtime_version, uint64_t failed_tool_count,
const char* const* failed_tool_names) {
ONLOAD_TRACE_BEG();