# ROC-tracer ``` ROC-tracer library, Runtimes Generic Callback/Activity APIs. The goal of the implementation is to provide a generic independent from specific runtime profiler to trace API and asyncronous activity. The API provides functionality for registering the runtimes API callbacks and asyncronous activity records pool support. ``` The library source tree: - inc/roctracer.h - Library public API - src - Library sources - core - Library API sources - util - Library utils sources - test - test suit - MatrixTranspose - test based on HIP MatrixTranspose sample ## Documentation ``` - API description: inc/roctracer.h - Code exaple: test/MatrixTranspose/MatrixTranspose.cpp ``` ## To build and run test ``` cd - CLone roctracer and custom branches of HIP/HCC: git clone -b amd-master https://github.com/ROCmSoftwarePlatform/roctracer.git git clone -b roctracer-hip-frontend-181113 https://github.com/eshcherb/HIP.git git clone --recursive -b roctracer-hip-frontend-181113 https://github.com/eshcherb/hcc.git - Set environment: export HIP_PATH=/HIP export HCC_HOME=/hcc/build export CMAKE_PREFIX_PATH=/opt/rocm/lib:/opt/rocm/include/hsa - Build HCC: cd /hcc && mkdir build && cd build && cmake -DUSE_PROF_API=1 -DPROF_API_HEADER_PATH=/roctracer/inc/ext .. && make -j - Build HIP: cd /HIP && mkdir build && cd build && cmake -DUSE_PROF_API=1 -DPROF_API_HEADER_PATH=/roctracer/inc/ext .. && make -j ln -s /HIP/build /HIP/lib - Build ROCtracer cd /roctracer && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/opt/rocm .. && make -j - To run test make mytest - To install make install or make package && dpkg -i *.deb ```