2018-06-15 13:49:29 -05:00
|
|
|
# ROC-tracer
|
2018-08-26 19:27:36 -05:00
|
|
|
```
|
|
|
|
|
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.
|
2018-06-15 13:49:29 -05:00
|
|
|
|
2018-08-26 19:27:36 -05:00
|
|
|
The API provides functionality for registering the runtimes API callbacks and
|
|
|
|
|
asyncronous activity records pool support.
|
|
|
|
|
```
|
2018-06-04 15:43:09 -05:00
|
|
|
|
2019-02-20 14:47:42 -06:00
|
|
|
## The library source tree
|
|
|
|
|
```
|
2018-06-04 15:43:09 -05:00
|
|
|
- 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
|
2019-02-20 14:47:42 -06:00
|
|
|
```
|
2018-06-04 15:43:09 -05:00
|
|
|
|
2018-08-26 19:27:36 -05:00
|
|
|
## Documentation
|
|
|
|
|
```
|
|
|
|
|
- API description: inc/roctracer.h
|
2019-02-04 18:17:00 -06:00
|
|
|
- Code example: test/MatrixTranspose/MatrixTranspose.cpp
|
2018-08-26 19:27:36 -05:00
|
|
|
```
|
|
|
|
|
|
2018-08-26 18:02:53 -05:00
|
|
|
## To build and run test
|
2018-06-15 13:49:29 -05:00
|
|
|
```
|
2018-08-26 18:02:53 -05:00
|
|
|
cd <your path>
|
2018-06-04 15:43:09 -05:00
|
|
|
|
2019-02-04 17:36:21 -06:00
|
|
|
- CLone development branches of roctracer and HIP/HCC:
|
2018-08-26 18:02:53 -05:00
|
|
|
git clone -b amd-master https://github.com/ROCmSoftwarePlatform/roctracer.git
|
2019-02-08 19:59:34 -06:00
|
|
|
git clone -b master https://github.com/ROCm-Developer-Tools/HIP.git
|
|
|
|
|
git clone --recursive -b clang_tot_upgrade https://github.com/RadeonOpenCompute/hcc.git
|
2018-06-04 15:43:09 -05:00
|
|
|
|
2018-08-26 18:02:53 -05:00
|
|
|
- Set environment:
|
|
|
|
|
export HIP_PATH=<your path>/HIP
|
2018-11-05 02:31:37 -06:00
|
|
|
export HCC_HOME=<your path>/hcc/build
|
2019-02-08 20:01:44 -06:00
|
|
|
export CMAKE_PREFIX_PATH=/opt/rocm
|
2018-08-08 15:47:30 -05:00
|
|
|
|
2018-08-26 18:02:53 -05:00
|
|
|
- Build HCC:
|
2018-11-13 19:01:26 -06:00
|
|
|
cd <your path>/hcc && mkdir build && cd build &&
|
|
|
|
|
cmake -DUSE_PROF_API=1 -DPROF_API_HEADER_PATH=<your path>/roctracer/inc/ext .. && make -j <nproc>
|
2018-08-26 18:02:53 -05:00
|
|
|
|
|
|
|
|
- Build HIP:
|
2018-11-13 19:01:26 -06:00
|
|
|
cd <your path>/HIP && mkdir build && cd build &&
|
|
|
|
|
cmake -DUSE_PROF_API=1 -DPROF_API_HEADER_PATH=<your path>/roctracer/inc/ext .. && make -j <nproc>
|
|
|
|
|
ln -s <your path>/HIP/build <your path>/HIP/lib
|
2018-08-26 18:02:53 -05:00
|
|
|
|
|
|
|
|
- Build ROCtracer
|
2018-11-13 17:09:58 -06:00
|
|
|
cd <your path>/roctracer && mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/opt/rocm .. && make -j <nproc>
|
2018-08-26 18:02:53 -05:00
|
|
|
|
2019-02-04 17:36:21 -06:00
|
|
|
- To build and run test
|
|
|
|
|
make mytest
|
|
|
|
|
run.sh
|
2018-11-13 18:51:56 -06:00
|
|
|
|
|
|
|
|
- To install
|
|
|
|
|
make install
|
|
|
|
|
or
|
|
|
|
|
make package && dpkg -i *.deb
|
2018-06-15 13:49:29 -05:00
|
|
|
```
|