Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
228 commits
Select commit Hold shift + click to select a range
7d7bb04
Initial commit
Jul 17, 2018
12f8613
update
Jul 17, 2018
edde6c1
Update README.md
Aug 18, 2018
05e63d2
update, version 3.0
Aug 20, 2018
f344120
metrics descriptions
Aug 20, 2018
1ceedc0
install prefix
Aug 20, 2018
d1e594d
Update README.md
eshcherb Aug 22, 2018
0921b34
Update README.md
eshcherb Aug 22, 2018
1cf808b
Update README.md
eshcherb Aug 22, 2018
aae99a8
Update README.md
eshcherb Aug 22, 2018
d763aa8
install dir
Aug 22, 2018
4ca5584
Update README.md
eshcherb Aug 22, 2018
bdb98b6
rocm include dir search fix
Aug 22, 2018
3039a51
enable timestamps only
Aug 26, 2018
ce893db
Update README.md
eshcherb Sep 17, 2018
894eba5
Update README.md
eshcherb Sep 20, 2018
8591164
fix reading of the input counters line without end-of-line symboll
Oct 4, 2018
a379020
Update README.md
eshcherb Oct 12, 2018
0fe0ffd
Update README.md
eshcherb Oct 12, 2018
5ac3c57
Change sorting so that it not only works with Python 2.7, but with 3.…
rwvo Oct 15, 2018
df0ce58
tracker handlers ordering
Nov 17, 2018
1047b90
pre/post package scripts install dir name fix and CPACK_PACKAGING_INS…
Nov 20, 2018
43a5aac
Merge pull request #2 from rwvo/python-3.x
eshcherb Jan 22, 2019
569e980
adding kernel properties
Feb 5, 2019
e029fd1
removing scripts, moved as bin
Feb 5, 2019
9e00d58
readme: adding 'rocprof' hsa trace option
Feb 5, 2019
3eb7738
readme: generated files info
Feb 5, 2019
f56e53a
tracing info help
Feb 5, 2019
83bc8e6
Update README.md
eshcherb Feb 5, 2019
758ddf5
Update README.md
eshcherb Feb 19, 2019
67b17cb
Update README.md
eshcherb Feb 19, 2019
61c17b2
Update README.md
eshcherb Feb 19, 2019
efdb465
Update README.md
eshcherb Feb 19, 2019
29fe11b
Update README.md
eshcherb Feb 20, 2019
baf874f
Update README.md
eshcherb Feb 20, 2019
4d1a2ed
Update README.md
eshcherb Feb 20, 2019
1dd85fe
Update README.md
eshcherb Feb 20, 2019
e5982b9
Update README.md
eshcherb Feb 20, 2019
d37c0f4
Update rocprofiler_spec.md
eshcherb Feb 21, 2019
b8f8e41
Update README.md
eshcherb Feb 21, 2019
3ad6f22
Update README.md
eshcherb Feb 21, 2019
f171839
Update README.md
eshcherb Feb 21, 2019
f7278ac
Update README.md
eshcherb Feb 21, 2019
0ae9561
2.2 update
Mar 12, 2019
5280006
Update README.md
eshcherb Mar 19, 2019
391bc82
Update README.md
eshcherb Apr 2, 2019
11535ba
Update README.md
eshcherb Apr 3, 2019
cda8b42
Update README.md
eshcherb Apr 3, 2019
e8cc596
Update README.md
eshcherb Apr 3, 2019
cc130bd
fixing standalone intercepion for N-GPUs
Apr 3, 2019
f92bc03
2.3 update
Apr 5, 2019
6bc8b93
Update README.md
eshcherb Apr 5, 2019
2efc120
Update README.md
eshcherb Apr 5, 2019
83703a9
Update README.md
eshcherb Apr 5, 2019
44198f3
N-GPU standalone intercept
Apr 5, 2019
d36407a
fix overwriting of LD_LIBRARY_PATH; instead, prepend to old path
rwvo Apr 11, 2019
968f3bc
2.6 update
Jul 9, 2019
12b64e4
add flag to rpl_run.sh that enables the user to define custom metrics…
Jul 10, 2019
95e1858
Merge pull request #6 from arghdos/enable_custom_metrics
eshcherb Jul 26, 2019
a584de1
Merge branch 'amd-master' into fix_ld_library_path
eshcherb Jul 26, 2019
5f6c3a9
Merge pull request #4 from rwvo/fix_ld_library_path
eshcherb Jul 26, 2019
b71ad35
Protect application arguments with spaces.
ye-luo Jul 30, 2019
15b2692
Merge pull request #7 from ye-luo/arguments-with-space
eshcherb Sep 11, 2019
21b6013
minor cosmetic fixes
Sep 11, 2019
f77f71e
rocm2.7 update
Sep 27, 2019
c30ee0e
2.8 update
Sep 27, 2019
8fc0d41
Create rocprof.md
eshcherb Oct 19, 2019
4adacd1
Update rocprof.md
eshcherb Oct 19, 2019
b7a1086
Update README.md
eshcherb Nov 22, 2019
908ea02
Update README.md
eshcherb Nov 23, 2019
b49880d
Update README.md
eshcherb Nov 23, 2019
54aaa3d
Update README.md
eshcherb Nov 23, 2019
4e0158a
rocm2.10 update
Nov 23, 2019
8914bf0
Update LICENSE
eshcherb Nov 27, 2019
8703877
custom metrics file rocprof option; profiled cmd line quoting option;
Dec 3, 2019
b4d4c03
3.0 update
Dec 17, 2019
3eb4a67
fixing stat file names eexpression
Dec 20, 2019
3667c04
Update README.md
eshcherb Dec 20, 2019
fa28e6d
spec update
Dec 31, 2019
ca823d2
Update rocprofiler_spec.md
eshcherb Dec 31, 2019
d93e1b4
Update README.md
eshcherb Dec 31, 2019
64bd4de
Update README.md
eshcherb Dec 31, 2019
95a4317
multiple rocm version support, remove shared library conflicts
srinivamd Sep 19, 2019
6cc11fa
Update README.md
eshcherb Jan 6, 2020
2904d29
Update README.md
eshcherb Jan 6, 2020
145232e
Update README.md
eshcherb Jan 6, 2020
6280517
adding: get_time() API; C test;
Jan 7, 2020
294cb95
Update README.md
eshcherb Jan 7, 2020
5c8dea1
Update README.md
eshcherb Jan 7, 2020
c69d836
Update README.md
eshcherb Jan 7, 2020
2c262c3
Update README.md
eshcherb Jan 7, 2020
9560d8f
Update README.md
eshcherb Jan 7, 2020
8f0e758
Update README.md
eshcherb Jan 7, 2020
315a69e
Update README.md
eshcherb Jan 7, 2020
3acd29b
Update rocprofiler_spec.md
eshcherb Jan 11, 2020
47a3ad5
Update rocprof.md
eshcherb Jan 11, 2020
1b3ce5e
Update README.md
eshcherb Jan 11, 2020
8b402d0
Fix crash in the fill_ext_db
rkebichi Jan 14, 2020
38348e9
Update rocprofiler_spec.md
eshcherb Jan 23, 2020
c771b37
Update rocprofiler_spec.md
eshcherb Jan 23, 2020
2cd889a
Update README.md
eshcherb Jan 24, 2020
b592051
Update README.md
eshcherb Jan 24, 2020
f840d11
Update README.md
eshcherb Jan 24, 2020
b575b92
Update README.md
eshcherb Jan 24, 2020
7df4f3a
Update tblextr.py
rkebichi Jan 27, 2020
fe97acc
Merge pull request #12 from rkebichi/rkebichi-patch-rocprof
eshcherb Jan 28, 2020
6811346
Update README.md
eshcherb Jan 30, 2020
03279c2
3.1 update
Feb 27, 2020
18d289d
Merge pull request #16 from ROCm-Developer-Tools/roc-3.1.x
eshcherb Feb 27, 2020
c65b74b
Update sqlitedb.py
rkebichi Mar 4, 2020
dc9bee7
Create txt2params.py
rkebichi Mar 4, 2020
3e9cf71
Merge pull request #11 from paulfreddy/amd-master
eshcherb Mar 5, 2020
3b9438c
Update sqlitedb.py
rkebichi Mar 6, 2020
65ece94
Update tblextr.py
rkebichi Mar 13, 2020
e5048f6
Update sqlitedb.py
rkebichi Mar 13, 2020
30ea6b7
rocprofiler spec: correcting info_data_t
Mar 18, 2020
c355f87
rocprofiler spec: correcting get info code example
Mar 18, 2020
11c8318
kernel build fix
Mar 19, 2020
741b870
Update sqlitedb.py
rkebichi Mar 19, 2020
19d26f3
Update tblextr.py
rkebichi Mar 19, 2020
d4e182c
Update txt2params.py
rkebichi Mar 19, 2020
67af394
Merge pull request #17 from rkebichi/rkebichi-json-sysadd
eshcherb Mar 20, 2020
8f856d9
cleanup
Mar 20, 2020
5fb023d
adding labels sort index
Mar 25, 2020
dd824f6
Update README.md
eshcherb Apr 30, 2020
a0a4bf1
intercept test removing not needed headers
Apr 30, 2020
fdd7d53
Adding reference instead of copy of container elements
Jun 5, 2020
e3c0bea
Merge pull request #24 from cjatin/compileFix
eshcherb Jun 8, 2020
2ef4d5d
Update README.md
eshcherb Jun 12, 2020
1debae5
Update README.md
eshcherb Jun 27, 2020
13fa7df
Revert "Update README.md"
Jun 27, 2020
4aa416f
adding ROCm requirements
Jun 27, 2020
c988f7f
3.6 update
Jul 16, 2020
08d86aa
3.7 update
Aug 17, 2020
b9e5f11
merge fix
Aug 21, 2020
fea1fd5
clang warinig fix
Aug 21, 2020
a2e7bfa
3.8 update
Sep 21, 2020
2ae6abd
Update README.md
eshcherb Oct 15, 2020
0fb8713
Update README.md
eshcherb Oct 15, 2020
73a8c80
Add rocminfo in the binary package dependency.
whchung Oct 23, 2020
7df9562
Update rocprofiler_spec.md
eshcherb Oct 28, 2020
759f081
3.9 update
Oct 28, 2020
7779252
3.10 update
Nov 30, 2020
939b0e2
Avoid empty-argument lists in C function declarations
bertwesarg Dec 12, 2020
58ae9b6
Update rocprofiler_spec.md
eshcherb Jan 19, 2021
4f948e5
Update rocprof.md
eshcherb Jan 21, 2021
8cd086e
Update README.md
eshcherb Feb 8, 2021
a204da1
Merge pull request #39 from bertwesarg/avoid-empty-args-decls
eshcherb Mar 26, 2021
84b5b24
Merge pull request #37 from ROCm-Developer-Tools/rocminfo-dependency
eshcherb Mar 26, 2021
93778bd
cleanup
Apr 8, 2021
48cc785
SWDEV-282961: dependency arrows missing
chrispaquot Jun 23, 2021
9f0ca10
Add support for gfx90a
Jun 16, 2021
a369af3
SWDEV-282961 Skip barrier events. Process hipMemSet events
rkebichi May 19, 2021
c55464d
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Sushma1920 Jul 8, 2021
2f18979
Add dependency on rocm-core
amd-isparry Jul 7, 2021
613fc6e
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Jul 21, 2021
7707d60
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Aug 3, 2021
4430b04
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Aug 14, 2021
4c3053c
Merge "Add dependency on rocm-core" into amd-master
amd-isparry Aug 17, 2021
d630e60
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Aug 26, 2021
c764803
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Sep 2, 2021
5f477f1
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Sep 18, 2021
4241758
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Oct 7, 2021
ae6c093
Adding Known Issues
ammarwa Oct 28, 2021
8359240
Updating Known Issues
ammarwa Oct 28, 2021
c06fb90
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Nov 22, 2021
3fa8ee7
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Dec 10, 2021
b71b541
SWDEV-318551: Adding License file for profiler
ammarwa Jan 21, 2022
3ae0b6f
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Feb 3, 2022
99079c8
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Feb 7, 2022
a13a53d
Update Readme
ammarwa Feb 9, 2022
967d6c2
Rename Readme.txt to README.md
ammarwa Feb 9, 2022
f1e92a9
Merge branch 'amd-master' into rocm-5.0.x
ammarwa Feb 9, 2022
b318ef9
Create rocprof.md
ammarwa Feb 24, 2022
06b07a5
Create rocprofiler_spec.md
ammarwa Feb 24, 2022
9682fb7
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Mar 14, 2022
8a30d4c
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Mar 25, 2022
62af1cf
Merge tag 'rocm-5.1.0' into amd-master
ammarwa Mar 30, 2022
4650aa6
SWDEV-324379 : Expose FP64 and FP32 performance counters on on AMD p…
cyamder Mar 17, 2022
4b28a9c
Merge remote-tracking branch 'remotes/origin/amd-staging' into amd-ma…
Apr 18, 2022
e6b8a3b
SWDEV-298750:Approval to make internal profile counters public
sauverma93 May 16, 2022
4fccecb
SWDEV-320429: wrapping the comma-containing names in the .csv in doub…
kiumarssabeti Apr 15, 2022
07766d9
Merge remote-tracking branch 'origin/rocm-5.1.x' into amd-master
ammarwa May 20, 2022
638e6b2
Merge "SWDEV-320429: wrapping the comma-containing names in the .csv …
zhang2amd May 20, 2022
843726f
Merge branch 'rocm-5.2.x' into amd-master
Jun 28, 2022
8d448fe
SWDEV-362165 - Escape argument strings in the JSON file
lmoriche Oct 15, 2022
be70c6e
SWDEV-362165 - Escape argument strings in the JSON file
lmoriche Oct 15, 2022
a5e7508
Merge branch 'rocm-5.3.x' into amd-master
ammarwa Oct 28, 2022
153668b
Merge remote-tracking branch 'origin/rocm-5.3.x' into amd-master
ammarwa Oct 29, 2022
b7d002d
Suppressing the hipGraphLaunch issue
ammarwa Nov 2, 2022
74ecd34
GPU Index to use HSA AMD Agent Driver Node ID
ammarwa Nov 18, 2022
c67d811
Merge tag 'rocm-5.4.0' into amd-master
ammarwa Dec 1, 2022
e80f7cb
Squashed commit for rocprofilerv2 support of the following:
ammarwa Feb 20, 2023
9429af0
Squashed commit of the following:
ammarwa Mar 1, 2023
6517bd2
Fixing Dispatch numbers
ammarwa Mar 6, 2023
ab734e5
SWDEV-387026: using gethostid instead of depending on libsystemd
ammarwa Mar 6, 2023
6ef30ff
SWDEV-387039: Modified gfx90a section to inherit from gfx9 base and r…
kiumarssabeti Mar 8, 2023
a6dd615
SWDEV-374072 : rocprof gpu selector fix
bgopesh Mar 14, 2023
7367050
GPU ID issue
ammarwa Dec 2, 2022
0ba5f05
SWDEV-389002: Remove quadratic wave lookup + Parser to skip corrupted…
ApoKalipse-V Mar 17, 2023
1fcab32
Fixing the support for C for rocprofiler API
ammarwa Mar 17, 2023
c61f82c
SWDEV-388295 fixing samples installation error on RHEL
bgopesh Mar 22, 2023
7e300dc
Fixing Symbol Versioning for V2
ammarwa Apr 5, 2023
f914c8a
Merge branch 'rocm-5.5.x' into amd-master
ammarwa May 2, 2023
f3fe149
SWDEV-383221 - Set the default value of ROCM_HEADER_WRAPPER_WERROR to…
raramakr May 8, 2023
af902a9
Fixing header to be C instead of C++ only
ammarwa Apr 11, 2023
4d847a1
SWDEV-387560 rocprofiler changes for CI test scripts
bgopesh Apr 5, 2023
9476ce1
Fixing Symbol Versioning for V2
ammarwa Apr 5, 2023
28fde34
SWDEV-297576: RSMI based micro benchmark for pcie validation
bgopesh Apr 12, 2023
05c01d7
Duplicate of SWDEV-392986 -Use absolute path of clang-tidy
ammarwa Apr 17, 2023
e329e36
SWDEV-394873: Fixing Build IDs for HIP related tests
ammarwa Apr 17, 2023
3641160
Adding build id to microbenchmark target
bgopesh Apr 17, 2023
a2b8c9e
Fixing Kernel Names
ammarwa Apr 20, 2023
9c301a8
V1/V2 API Library Separation
ammarwa Apr 20, 2023
2925a8d
Fixing ROCProf Tool V1 list basic/derived counters
ammarwa Jun 2, 2023
a41faed
SWDEV-388711: Updated readme for navi21 PMC issue.
ApoKalipse-V Jun 15, 2023
4f779d1
Merge tag 'rocm-5.6.0' into amd-master
ammarwa Jun 29, 2023
b272ba3
Create test file
SwRaw Aug 2, 2023
aaf7aae
Adding images
SwRaw Aug 2, 2023
4fb9529
Delete test
SwRaw Aug 2, 2023
e288b1c
Add files via upload
SwRaw Aug 3, 2023
55d5aec
Add files via upload
SwRaw Aug 3, 2023
f2071f6
Add files via upload
SwRaw Aug 3, 2023
e304384
Add files via upload
SwRaw Aug 3, 2023
ccc1bd4
Add files via upload
SwRaw Aug 3, 2023
244dc26
Add files via upload
SwRaw Aug 3, 2023
2703e56
Add files via upload
SwRaw Aug 3, 2023
e59540f
Correct rocprofv2 help message.
sfantao Aug 9, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
203 changes: 203 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,210 @@
Full documentation for ROCprofiler is available at
[docs.amd.com](https://docs.amd.com/bundle/ROCm-Profiling-Tools-User-Guide-v5.3)

As of ROCm 5.5, the ROCm Profiler will not use terminologies like `rocmtools` or
`rocsight` to describe `rocrofiler` as was done in ROCm 5.4. To identify the
separation of the two versions of `rocprofiler`, the terms `rocprofilerV1` and
`rocprofilerV2` will be used. The `rocprofilerV2` API is currently considered a
beta release and subject to changes in future releases.

## ROCprofiler for rocm 5.4.4

In ROCm 5.4 the naming of the ROCm Profiler related files is:

| ROCm 5.4 | rocprofilerv1 | rocmtools |
|-----------------|-------------------------------------|---------------------------------|
| **Tool script** | `bin/rocprof` | `bin/rocsight` |
| **API include** | `include/rocprofiler/rocprofiler.h` | `include/rocmtools/rocmtools.h` |
| **API library** | `lib/librocprofiler64.so.1` | `lib/librocmtools.so.1` |

The ROCm Profiler Tool that uses `rocprofilerV1` can be invoked using the
following command:

```sh
$ rocprof …
```

To write a custom tool based on the `rocprofilerV1` API do the following:

```C
main.c:
#include <rocprofiler/rocprofiler.h> // Use the rocprofilerV1 API
int main() {
// Use the rocprofilerV1 API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.4.4/include -L/opt/rocm-5.4.4/lib -lrocprofiler64
```

The resulting `a.out` will depend on
`/opt/rocm-5.4.4/lib/librocprofiler64.so.1`.

The ROCm Profiler that uses `rocprofilerV2` API can be invoked using the
following command:

```sh
$ rocsight …
```

To write a custom tool based on the `rocmtools` API do the following:

```C
main.c:
#include <rocmtools/rocmtools.h> // Use the rocmtools API
int main() {
// Use the rocmtools API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.4.4/include -L/opt/rocm-5.4.4/lib -lrocmtools
```

The resulting `a.out` will depend on `/opt/rocm-5.4.4/lib/librocmtools.so.1`.

## ROCprofiler for rocm 5.5.0

In ROCm 5.5 the `rocprofilerv1` and `rocprofilerv2` include and library files
are merged into single files. The `rocmtools` available in ROCm 5.4 is also
available in ROCm 5.5 but is deprecated and will be removed in a future release.

| ROCm 5.5 | rocprofilerv1 | rocprofilerv2 | rocmtools *(deprecated)* |
|-----------------|-------------------------------------|-------------------------------------|---------------------------------|
| **Tool script** | `bin/rocprof` | `bin/rocprofv2` | `bin/rocsight` |
| **API include** | `include/rocprofiler/rocprofiler.h` | `include/rocprofiler/rocprofiler.h` | `include/rocmtools/rocmtools.h` |
| **API library** | `lib/librocprofiler64.so.1` | `lib/librocprofiler64.so.1` | `lib/librocmtools.so.1` |


The ROCm Profiler Tool that uses `rocprofilerV1` can be invoked using the
following command:

```sh
$ rocprof …
```

To write a custom tool based on the `rocprofilerV1` API it is necessary to
define the macro `ROCPROFILER_V1`:

```C
main.c:
#define ROCPROFILER_V1
#include <rocprofiler/rocprofiler.h>
int main() {
// Use the rocprofilerV1 API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.5.0/include -L/opt/rocm-5.5.0/lib -lrocprofiler64
```

The resulting `a.out` will depend on
`/opt/rocm-5.5.0/lib/librocprofiler64.so.1`.

The ROCm Profiler that uses `rocprofilerV2` API can be invoked using the
following command:

```sh
$ rocprofv2 …
```

To write a custom tool based on the `rocprofilerV2` API do the following:

```C
main.c:
#include <rocprofiler/rocprofiler.h>
int main() {
// Use the rocprofilerV2 API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.5.0/include -L/opt/rocm-5.5.0/lib -lrocprofiler64
```

The resulting `a.out` will depend on
`/opt/rocm-5.5.0/lib/librocprofiler64.so.1`.

## ROCprofiler for rocm 5.6.0

In ROCm 5.6 the `rocprofilerv1` and `rocprofilerv2` include and library files of
ROCm 5.5 are split into separate files. The `rocmtools` files that were
deprecated in ROCm 5.5 have been removed.

| ROCm 5.6 | rocprofilerv1 | rocprofilerv2 |
|-----------------|-------------------------------------|----------------------------------------|
| **Tool script** | `bin/rocprof` | `bin/rocprofv2` |
| **API include** | `include/rocprofiler/rocprofiler.h` | `include/rocprofiler/v2/rocprofiler.h` |
| **API library** | `lib/librocprofiler.so.1` | `lib/librocprofiler.so.2` |

The ROCm Profiler Tool that uses `rocprofilerV1` can be invoked using the
following command:

```sh
$ rocprof …
```

To write a custom tool based on the `rocprofilerV1` API do the following:

```C
main.c:
#include <rocprofiler/rocprofiler.h> // Use the rocprofilerV1 API
int main() {
// Use the rocprofilerV1 API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.6.0/include -L/opt/rocm-5.6.0/lib -lrocprofiler64
```

The resulting `a.out` will depend on
`/opt/rocm-5.6.0/lib/librocprofiler64.so.1`.

The ROCm Profiler that uses `rocprofilerV2` API can be invoked using the
following command:

```sh
$ rocprofv2 …
```

To write a custom tool based on the `rocprofilerV2` API do the following:

```C
main.c:
#include <rocprofiler/v2/rocprofiler.h> // Use the rocprofilerV2 API
int main() {
// Use the rocprofilerV2 API
return 0;
}
```

This can be built in the following manner:

```sh
$ gcc main.c -I/opt/rocm-5.6.0/include -L/opt/rocm-5.6.0/lib -lrocprofiler64-v2
```

The resulting `a.out` will depend on
`/opt/rocm-5.6.0/lib/librocprofiler64.so.2`.

### Optimized
- Improved Test Suite
### Added
Expand Down
8 changes: 4 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ include(utils)
include(env)

# Setup the package version.
get_version("2.0.0")
get_version("1.0.0")
message("-- LIB-VERSION: ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")

set(BUILD_VERSION_MAJOR ${VERSION_MAJOR})
Expand Down Expand Up @@ -277,7 +277,7 @@ if(FILE_REORG_BACKWARD_COMPATIBILITY)
set(ROCM_HEADER_WRAPPER_WERROR "$ENV{ROCM_HEADER_WRAPPER_WERROR}"
CACHE STRING "Header wrapper warnings as errors.")
else()
set(ROCM_HEADER_WRAPPER_WERROR "ON" CACHE STRING "Header wrapper warnings as errors.")
set(ROCM_HEADER_WRAPPER_WERROR "OFF" CACHE STRING "Header wrapper warnings as errors.")
endif()
endif()

Expand Down Expand Up @@ -516,8 +516,8 @@ if(DOXYGEN_FOUND)
COMMAND make -C ${CMAKE_CURRENT_BINARY_DIR}/doc/latex pdf
MAIN_DEPENDENCY ${DOXYGEN_OUT}
${DOXYGEN_IN}
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/inc/rocprofiler.h
${CMAKE_CURRENT_SOURCE_DIR}/inc/rocprofiler_plugin.h
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/include/rocprofiler/v2/rocprofiler_plugin.h
${CMAKE_CURRENT_SOURCE_DIR}/include/rocprofiler/v2/rocprofiler.h
COMMENT "Generating documentation")

add_custom_target(
Expand Down
27 changes: 17 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ Library supports GFX8/GFX9.

The library source tree:
- doc - Documentation
- inc/rocprofiler.h - Library public API
- include/rocprofiler/rocprofiler.h - Library public API
- include/rocprofiler/v2/rocprofiler.h - V2 Beta Library public API
- include/rocprofiler/v2/rocprofiler_plugins.h - V2 Beta Tool's Plugins Library public API
- src - Library sources
- core - Library API sources
- util - Library utils sources
Expand Down Expand Up @@ -64,7 +66,7 @@ To enable verbose tracing:
$ export ROCPROFILER_TRACE=1
```

## ROC Profiler library version 2.0
## ROC Profiler library version 9.0

## Introduction

Expand Down Expand Up @@ -249,8 +251,8 @@ The user has two options for building:

installtion:
```bash
rocprofiler-plugins_2.0.0-local_amd64.deb
rocprofiler-plugins-2.0.0-local.x86_64.rpm
rocprofiler-plugins_9.0.0-local_amd64.deb
rocprofiler-plugins-9.0.0-local.x86_64.rpm
```
usage:

Expand Down Expand Up @@ -299,8 +301,8 @@ The user has two options for building:

installation:
```bash
rocprofiler-tests_2.0.0-local_amd64.deb
rocprofiler-tests-2.0.0-local.x86_64.rpm
rocprofiler-tests_9.0.0-local_amd64.deb
rocprofiler-tests-9.0.0-local.x86_64.rpm
```
usage:
From build directory:
Expand All @@ -319,8 +321,8 @@ We make use of doxygen to autmatically generate API documentation. Generated doc

installtion:
```bash
rocprofiler-docs_2.0.0-local_amd64.deb
rocprofiler-docs-2.0.0-local.x86_64.rpm
rocprofiler-docs_9.0.0-local_amd64.deb
rocprofiler-docs-9.0.0-local.x86_64.rpm
```
## Samples

Expand All @@ -329,8 +331,8 @@ We make use of doxygen to autmatically generate API documentation. Generated doc

insalltion:
```bash
rocprofiler-samples_2.0.0-local_amd64.deb
rocprofiler-samples-2.0.0-local.x86_64.rpm
rocprofiler-samples_9.0.0-local_amd64.deb
rocprofiler-samples-9.0.0-local.x86_64.rpm
```
usage:

Expand Down Expand Up @@ -371,3 +373,8 @@ samples can be run as independent executables once installed
Please report in the Github Issues

## Limitations
- In 5.6, Navi2x requires a GRBM counter as the first counter for input PMC lines. Results are undefined otherwise.
- Navi requires a stable power state for counter collection. Currently this state needs to be set by the user.
To do so, set "power_dpm_force_performance_level" to be writeable for non-root users with chmod, then:
echo profile_standard >> /sys/class/drm/card0/device/power_dpm_force_performance_level
Recommended: "auto" or "high" for ATT and "profile_standard" for PMC. Use rocm-smi to verify the current power state.
4 changes: 2 additions & 2 deletions bin/rocprofv2
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ usage() {
echo -e "--clean-install For installing ROCProfilerV2 with new clean build in the default installation folder (review build.sh to know more about the default paths)"
fi
echo -e "--hip-api For Collecting HIP API Traces"
echo -e "--hip-activity For Collecting HSA API Activities Traces"
echo -e "--hsa-api For Collecting HIP API Traces"
echo -e "--hip-activity For Collecting HIP API Activities Traces"
echo -e "--hsa-api For Collecting HSA API Traces"
echo -e "--hsa-activity For Collecting HSA API Activities Traces"
echo -e "--roctx-trace For Collecting ROCTx Traces"
echo -e "--kernel-trace For Collecting Kernel dispatch Traces"
Expand Down
8 changes: 4 additions & 4 deletions bin/rpl_run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ unset ROCPROFILER_SESS

# Profiler environment
# Loading of profiler library by HSA runtime
MY_HSA_TOOLS_LIB="$RPL_PATH/librocprofiler64.so"
MY_HSA_TOOLS_LIB="$RPL_PATH/librocprofiler64.so.1"
# Loading of the test tool by ROC Profiler
export ROCP_TOOL_LIB=$TLIB_PATH/librocprof-tool.so
# Enabling HSA dispatches intercepting by ROC PRofiler
Expand Down Expand Up @@ -272,16 +272,16 @@ run() {

if [ "$HSA_TRACE" = 1 ] ; then
export ROCTRACER_DOMAIN=$API_TRACE":hsa"
MY_HSA_TOOLS_LIB="$MY_HSA_TOOLS_LIB $ROCM_LIB_PATH/libroctracer64.so $TTLIB_PATH/libroctracer_tool.so"
MY_HSA_TOOLS_LIB="$MY_HSA_TOOLS_LIB $ROCM_LIB_PATH/libroctracer64.so.4 $TTLIB_PATH/libroctracer_tool.so"
elif [ -n "$API_TRACE" ] ; then
export ROCTRACER_DOMAIN=$API_TRACE
OUTPUT_LIST="$ROCP_OUTPUT_DIR/"
MY_HSA_TOOLS_LIB="$ROCM_LIB_PATH/libroctracer64.so $TTLIB_PATH/libroctracer_tool.so"
MY_HSA_TOOLS_LIB="$ROCM_LIB_PATH/libroctracer64.so.4 $TTLIB_PATH/libroctracer_tool.so"
fi

if [ "$ROCP_STATS_OPT" = 1 ] ; then
if [ "$ROCTRACER_DOMAIN" = ":hip" ] ; then
MY_HSA_TOOLS_LIB="$ROCM_LIB_PATH/libroctracer64.so $TTLIB_PATH/libhip_stats.so"
MY_HSA_TOOLS_LIB="$ROCM_LIB_PATH/libroctracer64.so.4 $TTLIB_PATH/libhip_stats.so"
else
error_message="ROCP_STATS_OPT is only available with --hip-trace option"
echo $error_message
Expand Down
2 changes: 1 addition & 1 deletion doc/Doxyfile.in
Original file line number Diff line number Diff line change
Expand Up @@ -791,7 +791,7 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.

INPUT = @CMAKE_CURRENT_SOURCE_DIR@/inc/rocprofiler.h @CMAKE_CURRENT_SOURCE_DIR@/inc/rocprofiler_plugin.h
INPUT = @CMAKE_CURRENT_SOURCE_DIR@/include/rocprofiler/v2/rocprofiler.h @CMAKE_CURRENT_SOURCE_DIR@/include/rocprofiler/v2/rocprofiler_plugin.h

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
Loading