Commit Graph

82 Commits

Author SHA1 Message Date
Ammar ELWazir be0c6a3380 Suppressing the hipGraphLaunch issue
hipGraphs acts as a separate activity group as they have their own memory copies and their kernel dispatches and more activities, currently hip api that roctracer depend on doesn't have a way to represent this type, so we are temporarily suppressing the issue up till we have a complete support for the hipGraphs

Change-Id: I5d889be05c9414530672c781e5a712d572ea4104


[ROCm/rocprofiler commit: bbbd177dd7]
2022-11-01 23:29:05 -05:00
Laurent Morichetti ee8efd3e2b SWDEV-362165 - Escape argument strings in the JSON file
"a_string\x000" -> \"a_string\\x000\"

Change-Id: I8bf054702b34577f84080080d9538b16abc996fe


[ROCm/rocprofiler commit: 3b61d6bd8c]
2022-10-18 01:47:46 -04:00
Sriraksha Nagaraj 1e64045fb1 SWDEV-359118 - fix for misrepresentation for stream ids in Json file
Some trace entries report the stream argument as 'stream=' and some report it as 'hStream='.
Change-Id: I9e7c7af162db72ddadf6f2a3fe4f44a04bf77ed6


[ROCm/rocprofiler commit: 3bb853c56d]
2022-10-13 21:48:48 -04:00
Sriraksha Nagaraj 541764daad SWDEV-323976 - changes in the scripts to display copy activity in the trace output
Change-Id: If8f7df3668c075a8f21508c796220693be9b40d3


[ROCm/rocprofiler commit: b0152e0091]
2022-07-05 16:24:45 -04:00
Ammar ELWazir a5bd7dd935 Google-Chrome Tracer parser attaching flow events to the wrong time slice
This issue happens when we have slices that have overlapping
timestamp values (i.e. start_ts + dur = start_ts of next slice)
and the flow event references that shared timestamp value.
The google chrome parser sorts all the events
and just taking the most recent one.
Rocprof is outputting flow attachment points as start+dur;
the end ts of the slice that can overlap with the next slice
if no gap between them.

Solution proposal by Michael Steffen (Michael.Steffen@amd.com)

Change-Id: Ifcde142144033c9012b01a78c95f047384f972dd


[ROCm/rocprofiler commit: 93a79eb99a]
2022-06-13 14:53:14 -04:00
Ammar ELWazir 8594855227 SWDEV-332635: Fixing the effect of roctx-rename feature
HIP/HSA traces were asked to access range_data list, however, it was not initialized because roctx tracing was not enabled, moved lists initialization before roctx check

Change-Id: I9942876445cb1b2f69c6bb0d8986d6d9234f1441


[ROCm/rocprofiler commit: 1f925b3f16]
2022-04-13 12:58:31 +00:00
Laurent Morichetti 26bb13ade0 SWDEV-318682: Using roctx to rename long kernel names to shorter ones.
To enable this feature use the --roctx-rename rocprof option. This
implementation records all messages received in roctxPush calls and
use them to replace corresponding kernel names.

Tested with the following HIP program:

\#include <hip/hip_runtime.h>
\#include <roctracer/roctx.h>

__global__ void
ThisIsALongKernelName ()
{
}

int
main (int argc, char* argv[])
{
  hipSetDevice (0);

  // Not in a roctx range.
  ThisIsALongKernelName<<<1, 1>>> ();

  roctxRangePush ("A");
  // In a simple first level roctx range.
  ThisIsALongKernelName<<<1, 1>>> ();
  roctxRangePop ();

  roctxRangePush ("B");
  roctxRangePush ("C");
  // In a nested roctx range.
  ThisIsALongKernelName<<<1, 1>>> ();
  roctxRangePop ();
  roctxRangePop ();

  roctxRangePush ("D");
  roctxRangePush ("E");
  roctxRangePop ();
  // In a first level roctx range, but after a nested range.
  ThisIsALongKernelName<<<1, 1>>> ();
  roctxRangePop ();

  hipDeviceSynchronize ();
  return 0;
}

Change-Id: I629312234468daff8b017caa5cb0773707d98cce


[ROCm/rocprofiler commit: 1078a088e9]
2022-04-07 18:03:03 -07:00
Ammar ELWazir 6da8b33053 SWDEV-329270: fixed the multiline input.txt issue
In a previous change the key for the var_table in tblextr.py script has been changed from one value to a tuple without changing the usage of the var_table in the rest of the script

Change-Id: I38964f61afad5323d1ca9b64d538cec426298842


[ROCm/rocprofiler commit: 46c4e5045a]
2022-03-25 05:09:52 +00:00
Ammar ELWazir 314abc4cca SWDEV-329261: Fix for Post-Processing HSA Memcopy Async Activities
The Post-Processing script was depending HSA API call for async mem copies to correlate it with the HSA Async Memcpy Activity, now if user decided to include input file with filtering HSA Api calls without adding HSA Memcpy, then all the correlation data will be dropped and the Async activity will be reported with the information given from the HSA async activity result file

Change-Id: I5123a5acab9b35a4c25793e7953fdfb74929c999


[ROCm/rocprofiler commit: fd4767d954]
2022-03-24 10:22:52 -04:00
Ammar ELWazir 050d78cfd9 SWDEV-326120: Fix for Staging
'merge_traces script from rocprof fails to include GPU / HSA / ROCTX activity in merged trace' change was missing tuple addition to the second for loop causing issues on gfx908 and gfx906 | change NO: 628475

Change-Id: Ic0b6140d4372eb109fdf7bdc8d58c0d84239196d


[ROCm/rocprofiler commit: 7a9692766d]
2022-03-04 12:22:37 -05:00
Saurabh Verma 7284cbb59b SWDEV-299902: merge_traces script from rocprof fails to include GPU / HSA / ROCTX activity in merged trace
Change-Id: I29cfd6cfaf34bfa588bd90774db6d8ac501e8aa8


[ROCm/rocprofiler commit: 7a7c73b7d8]
2022-02-18 16:11:08 -06:00
Chun Yang b4231ee97d SWDEV-296922 : Incorrect rounding due to integer division in rocprofiler metrics
Changed var_pattern in tblextr.py to include pattern like "name[0]"

Change-Id: Ibe1c512595cfbdcaca8fa5bddceb3f6a570caf43


[ROCm/rocprofiler commit: ff43ca1542]
2021-09-29 09:15:11 -07:00
Chun Yang 62a76c8ebb SWDEV-296922 : Incorrect rounding due to integer division in rocprofiler metrics
Changed derived metrics to double from int64.
Fixed standalone test due to int64 to float change
Fixed intercept test due to int64 to float change.

Change-Id: I49631c187406ae9dd94a869b3bb13772012e8cdf


[ROCm/rocprofiler commit: f9017cbdc5]
2021-09-23 14:52:35 -07:00
Saurabh Verma d6a648e396 SWDEV-296100: hipStreamWaitValue64 and hipStreamWriteValue64 break rocprof
Change-Id: I5b31affa6df4359a02014b87b825554ac5519c1a


[ROCm/rocprofiler commit: ca059e1aa9]
2021-09-15 12:07:40 -04:00
Christophe Paquot 02e1c73a51 SWDEV-295205 - Remove KFD domain from roc profiler
Removed KFD domain and references.

Change-Id: Icd7e1789c77490e57b527be065043eadb6b75c1c


[ROCm/rocprofiler commit: 79d477daed]
2021-07-14 16:50:20 -07:00
rachida e1f148e260 SWDEV-282961 Skip barrier events. Process hipMemSet events
Marker events inside hcc_ops_trace.txt are from barriers so they are not meant to be stored in ops_patch_data map.
Added support for hipMemset events which are a kind of memory copy.

Change-Id: I213fe959bcd35ff0371613ba5bffd95bc53e06b5


[ROCm/rocprofiler commit: caa5f32300]
2021-06-10 16:33:39 -04:00
Rachida Kebichi a01a4a26a7 Fixed issue with map key in dep_proc map
Change-Id: I5c2deeda2c2dedd9c800af60c0b4748279f8418e


[ROCm/rocprofiler commit: 7a5e408891]
2021-04-23 13:14:40 -04:00
Rachida Kebichi 0b1ad281f7 SWDEV-263827 Visualize back-dep for wait
Change-Id: Ic8a00c6ec583c5b90fcd0a1d19c5a51ce6303449


[ROCm/rocprofiler commit: a80f8e6e03]
2021-04-05 09:44:25 -04:00
Evgeny cb57b17051 SWDEV-267190 real pid/tid arg values
Change-Id: Ia3d98364b5bc7e9eace3d742055af4e074d64c66


[ROCm/rocprofiler commit: 567f457f25]
2021-03-18 15:13:21 +00:00
Evgeny bacf127670 SWDEV-267558 : json rebasing supression by env ROCP_JSON_REBASE=0
Change-Id: I968d3922b1714dba09621a90c26cec959be55b91


[ROCm/rocprofiler commit: 3f504e9bd7]
2021-01-27 20:57:43 -06:00
Rachida Kebichi e83ac32641 SWDEV-255543 Hsa memcopy info csv gen
Change-Id: I35ed7d613879343851007dce473784ab227cb3ed


[ROCm/rocprofiler commit: cf9975f217]
2020-11-18 11:08:01 -05:00
Rachida Kebichi b50e7ddcdf SWDEV-254356 Adapting memcopy info mechanism to optimized JSON generator
Change-Id: If88e1a69682332ba6c8f782ce870c4035eae65a2


[ROCm/rocprofiler commit: 9b9096f5a8]
2020-10-19 21:12:12 -05:00
Evgeny ec86ed0551 hip async ops api detection fix
Change-Id: I039caf278214ded95c1ef4d06a872d888ac19573


[ROCm/rocprofiler commit: 90cfe92b05]
2020-10-12 16:47:36 -05:00
Evgeny 617098d096 SWDEV-249924 : hip correlation id explicite propogation
Change-Id: If5799a812b7789a805797aed8be4ab52d417221f


[ROCm/rocprofiler commit: 8d021eb401]
2020-10-01 12:40:41 -04:00
Evgeny e6be2dd03a SWDEV-254810 : JSON generator cleanup
Change-Id: Iacf782ee1e33443e9efb35b1adfcd2a43feda91d


[ROCm/rocprofiler commit: 29191089cc]
2020-10-01 00:48:56 -05:00
Evgeny e508fd72cc JSON flow timestamp fix
Change-Id: I2dacc29250f2d9c5d56bf8ab3ca7f621cb7b663a


[ROCm/rocprofiler commit: a87d41c6e4]
2020-09-21 03:53:03 -04:00
Evgeny 4e691bd307 passing filename to mem_manager dump
Change-Id: I95cb99a69c4d2f8e55a063388d46a7f7b196f6bd


[ROCm/rocprofiler commit: 5511a969e7]
2020-08-15 04:01:08 -04:00
Evgeny 71a89320ef postprocessing optimisation
Change-Id: I8091f293a80a8c546432932f209327ce97769c98


[ROCm/rocprofiler commit: 8a8f498468]
2020-08-12 13:00:33 -04:00
Evgeny 3374fe1705 roctx range api py script changes
Change-Id: I1ee994e00fa0283e129f05e2745c0c6caf8aa6b5


[ROCm/rocprofiler commit: 71b1da0eab]
2020-08-07 16:53:24 -04:00
Rachida Kebichi 5eb3782e02 Simple fix for incorrect kernel name
Change-Id: I8fe2c552d37aa2e1b8874cead4c126ee48fbc02e


[ROCm/rocprofiler commit: 1a06583d15]
2020-07-17 12:25:33 -04:00
Evgeny dfec1e8668 enabling memory manager by env var
Change-Id: I8fe708882123b1dd62c20afd9e4967e9ab80c97a


[ROCm/rocprofiler commit: 81d768c91f]
2020-07-13 12:58:50 -05:00
Rachida Kebichi e6ab54a04c Fix for ptr type unknown
Change-Id: I17674c689e7051b79d15cc4cae9676c86a8c46ae


[ROCm/rocprofiler commit: 37231cd00d]
2020-07-07 01:16:16 -04:00
Rachida Kebichi 03b77328c4 Removed not needed extra parenthesis
Change-Id: I485c248773e7b0344e754c5ecf3341321216b7b2


[ROCm/rocprofiler commit: f15937f13c]
2020-07-06 12:44:50 -04:00
Evgeny 1a84fa2528 JSON trace dependencies flow to-tid fix
Change-Id: If21b12d0560e7db07b1ff02e0441addff3453cbe


[ROCm/rocprofiler commit: c196fbe0d5]
2020-06-29 01:16:05 -05:00
Evgeny fb7e7f1568 fixing activity correlation for n-process use case
Change-Id: I3e52452b586a08fc9cfcb50851ddcc600c7ef910


[ROCm/rocprofiler commit: d013413cb8]
2020-06-27 04:01:51 -05:00
Evgeny 6678281480 JSON start point fix in multiproc usecase
Change-Id: I84317af41ec0828f08bb2d45803515738167e77a


[ROCm/rocprofiler commit: 60c106a07d]
2020-06-25 10:27:00 -04:00
Rachida Kebichi b223b9f084 memcpy info added to csv, sqlitedb and json
Change-Id: I56f2ec667c7f3741b519f3335a3eec26b34c0ab4


[ROCm/rocprofiler commit: 186a247dbe]
2020-06-24 18:41:21 -04:00
Evgeny cb337997db tblext.py fixing: 'stream_ind' not-inintialized python issue; app START time message;
Change-Id: Ib17c49daf7c118aa83025d805d707bf3d8e1c88f


[ROCm/rocprofiler commit: 708edfe989]
2020-06-23 19:58:33 -04:00
Evgeny 4ca9b4512c profiler app-replay results merge fix; stream index postproc fix;
Change-Id: If58ca46fb0259b4e69a764935cfd66fc80af507a


[ROCm/rocprofiler commit: 58fadcfa7c]
2020-06-23 13:15:58 -04:00
Evgeny 5649332eb5 json trace normalizing fix
Change-Id: Ia5987fcd3e08808953534fa3ded2df0b17e0e87a


[ROCm/rocprofiler commit: 6c72cdfe82]
2020-06-19 13:40:33 -05:00
Evgeny 80ad421ce0 json trace normalizing for app start
Change-Id: I97480f7461c377096c101cd0dc6ce088f799fbab


[ROCm/rocprofiler commit: dfba287ff2]
2020-06-17 19:01:12 -05:00
Rachida Kebichi 7289c3619e support for hip multi kernels
Change-Id: I8cc42eb53f075ea4f27dc1287e7ab3fb77916027


[ROCm/rocprofiler commit: 807f17d6ce]
2020-06-11 14:59:22 -05:00
Evgeny 6b422c23a8 JSON GPU activity per stream fix
Change-Id: I3fca861d0b36d26d2800cd39f12cd4485a2b4db9


[ROCm/rocprofiler commit: c4e3d8de32]
2020-06-05 10:16:57 -05:00
Evgeny b281fb3375 adding proc-id to activity events
Change-Id: I3a4673c8e5d8b115a213d00058e4235a4e68510e


[ROCm/rocprofiler commit: 35e6ac1d0f]
2020-06-03 03:29:24 -05:00
Evgeny 1e99890c58 sqlight generic fld change api
Change-Id: I1ff21da94bd61a3aecf2a54f0212cd3b88b5776e


[ROCm/rocprofiler commit: 6f0e4dbc61]
2020-06-02 11:00:19 -04:00
Evgeny 686152d347 workaround for hipLaunchKernel not having kernel name
Change-Id: I7d165a7d897cced7b6045f084d2112a0e9e33e69


[ROCm/rocprofiler commit: 201fc86f5c]
2020-05-28 16:58:33 -05:00
Evgeny dc8b22ca01 removing /opt/rocm hardcoding
Change-Id: Ifb041a76a0c6fa943f72a9228197f371ad384bb7


[ROCm/rocprofiler commit: 4debecbc3c]
2020-05-26 21:56:07 -05:00
Evgeny fe6ccb07d3 HIP API cb kernel name fixing
Change-Id: I4f9443d1ccc800058dbf14685043a9677676abcb


[ROCm/rocprofiler commit: cee1be4739]
2020-05-06 03:53:34 -05:00
Rachida Kebichi 3eccfa97e8 fixed 'bad record' issue in hip events
Change-Id: I601e508cf74ca5d9268dab3362085dbc512d390d


[ROCm/rocprofiler commit: 5cfc13a46c]
2020-05-05 22:13:10 -04:00
Evgeny 212aefac7d adding pid for kernel results to support multi-process profiling
Change-Id: I283228a4b4145599c5e637dd6faa771b9f4b6345


[ROCm/rocprofiler commit: 3af87a7423]
2020-05-05 05:35:32 -05:00