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 asynchronous activity.
The API provides functionality for registering the runtimes API callbacks and asynchronous activity records pool support.
ROC-TX library: Code Annotation Events API
Includes API for:
roctxMarkroctxRangePushroctxRangePop
Usage#
rocTracer API#
To use the rocTracer API you need the API header and to link your application with roctracer .so library:
/opt/rocm/include/roctracer/roctracer.hAPI header.
/opt/rocm/lib/libroctracer64.so.so library.
rocTX API#
To use the rocTX API you need the API header and to link your application with roctx .so library:
/opt/rocm/roctracer/include/roctx.hAPI header.
/opt/rocm/lib/libroctx64.so.so library.
Library source tree#
docDocumentation.
incInclude header files.
roctracer.hrocTacerlibrary public API header.roctx.hrocTXlibrary public API header.
srcLibrary sources.
corerocTracerlibrary API sources.roctxrocTXlibrary API sources.utilLibrary utils sources.
testTest suit.
MatrixTransposeTest based on HIP MatrixTranspose sample.
Documentation#
API description:
Code examples:
Build and run tests#
ROCm is required
Packages required:
For Ubuntu 18.04 and Ubuntu 20.04 the following adds the needed packages:
apt install python3 python3-pip gcc g++ libatomic1 make \ cmake doxygen graphviz texlive-full
For CentOS 8.1 and RHEL 8.1 the following adds the needed packages:
yum install -y python3 python3-pip gcc gcc-g++ make \ cmake libatomic doxygen graphviz texlive \ texlive-xtab texlive-multirow texlive-sectsty \ texlive-tocloft texlive-tabu texlive-adjustbox
For SLES 15 Service Pack 15 the following adds the needed packages:
zypper in python3 python3-pip gcc gcc-g++ make \ cmake libatomic doxygen graphviz \ texlive-scheme-medium texlive-hanging texlive-stackengine \ texlive-tocloft texlive-etoc texlive-tabu
Python modules requirements:
CppHeaderParser,argparse.To install:
pip3 install CppHeaderParser argparse
Clone development branch of
roctracer:git clone -b amd-master https://github.com/ROCm-Developer-Tools/roctracer
To build
roctracerlibrary:cd <your path>/roctracer ./build.sh
To build and run test:
cd <your path>/roctracer/build make mytest run.sh
Installation#
Install by:
make install
or:
make package && dpkg -i *.deb