Commit Graph

259 Commits

Author SHA1 Message Date
Lang Yu 7313e52f35 SWDEV-467545 - Add rocprofiler support for gfx1150/gfx1151
Change-Id: I2cddc36981f6d815c865d180a1daf1b8a7e0633f
Signed-off-by: Lang Yu <lang.yu@amd.com>
2024-07-09 22:40:10 -04:00
Giovanni LB 7e199e6b7a SWDEV-470113: Fixing hang on navi33
Change-Id: I5c1d30547039a6f23ab5974f43ea63f971573108
2024-07-05 20:39:56 -04:00
Giovanni LB 70fedc5195 SWDEV-470113: Swapping test order and resetting queue.cpp variables
Change-Id: I20f3fa3cbf389ab89ba8ea8e430819c4ef837ad0
2024-07-03 15:41:37 -03:00
Giovanni LB 8d2f139005 SWDEV-470113: Waiting on active signals
Change-Id: Ie99477a2f031fa0dbb7ff7c860f8b780177e6e9d
2024-06-27 15:17:56 -03:00
jatang e7b96b1e71 SWDEV-458392 - Add gfx12 support.
Change-Id: I91bb6a3329bf77f26005a345c18b63b86922028a
2024-06-17 13:24:48 -04:00
Giovanni LB 4d0fee6637 SWDEV-468021: Improving profiler performance
Change-Id: I91921160a19aaea1fedfa40d11b83114d6a6fc65
2024-06-14 15:29:27 -03:00
Saurabh Verma 056156135d SWDEV-457922: Temporary fix to prevent multiple instances of either rocprofiler v1 or v2 to be running, whether it's interception or standalone mode.
The fix works by using a pid file and a lock file, similar to how firefox prevents multiple instances.

Change-Id: I4974a80bf920eaf0376a53410573c1cc74ec17ac
2024-06-10 12:49:29 -04:00
gobhardw 1e69b3e2f6 SWDEV-465520: RHEL9 toolchain doesnt seem to support experimental filesystem
Change-Id: I6b1e7f42c49b1c7af412c0b68851724861c9970a
2024-06-05 12:50:48 -04:00
Giovanni LB 140f658820 SWDEV-464906: Swap read and stop packets in queue.cpp
Change-Id: I2dd33a71c0cbe69fe6c2cfaf523b9f8c6500093f
2024-06-05 09:11:59 -04:00
Ammar ELWazir b8726a6225 Adding JSON & Major fixes
Adding Chrome Tracing JSON for V2
Some fixes for the Kernel Dispatch tracing
Changes related to the HIP Runtime Destruction fix

Change-Id: I2fe1f1ef66b415df17c503a4a9fadcfa107d8c49
2024-05-29 01:21:52 -04:00
Giovanni LB b354c54ed7 Setting output buffer to always local
Change-Id: I82bf9f4cb922221d4a2b7ae15adb0f208a0ba70e
2024-05-27 14:53:32 -04:00
Saurabh Verma 34606db8c3 Fix for crash Error: HsaRsrcFactory::SignalWait: signal_value(1), ret_value(-1)
Context::GetData() would crash when it tries to wait on the completion signal of the stop packet. The expected signal value after waiting in HsaRsrcFactory::SignalWait() is supposed to be 0 but sometimes it comes up as -1. The signal being checked has already decremented before. Profile::Finalize() was assigning the same completion signal to the read and stop packet. So those two packets have been assigned different completion signals. This fix only affects standalone profiling mode.

Change-Id: I4b16825019e58d95d70188a72b2cc5871e09dd81
2024-05-26 13:31:39 -04:00
Ammar ELWazir b6576393a2 Temporary fix for SWDEV-459354
Change-Id: I13d7d600ab72d873d1dbc5d5e9b72c2ca5941488
2024-05-24 10:39:32 -04:00
Giovanni LB 604738fd8d Fixing occupancy metrics for MI300
Change-Id: I25a150dbcd3582cd397a658aa9a991956577cfa8
2024-04-30 15:23:42 -04:00
Giovanni LB 3ae1b6af74 SWDEV-452226: Changing ATT dispatch IDs to match previous kernel-trace change
Change-Id: Ifd00160f2e8705e9ef11d41d284f6625b70de389
2024-04-29 11:56:32 -04:00
gobhardw dc09052d82 SWDEV-452226-dispatch ids to start from 0 for v1 parity
Change-Id: Ib60a6c108131f67395ab1f9d35ad605859d39987
2024-04-23 00:41:55 -04:00
Giovanni LB 97c6b0b867 Re-enabling ATT tests
Change-Id: Ied23410d40eecbbfb8972d36ed065289f74aaa0c
2024-04-17 18:49:55 -03:00
Giovanni LB bf749ba8d6 Fixing XCC-based metrics
Change-Id: I7451355b5b5eeefbd1c78b996d4ca5c4b770246a
2024-03-27 16:17:24 -04:00
Giovanni LB 4dd21807c0 Updating to load_delta. Fixing perfetto plugin.
Change-Id: If893f84b0ff108cfa0ccdcf717ee8592aa621032
2024-03-07 15:21:37 -03:00
Giovanni LB 4711a083de SWDEV-445711: Workaround for race condition on exit
Change-Id: I7391637005ccc7ea89611f28691c02e569197dff
2024-02-27 14:45:47 -05:00
Giovanni LB fe00badc6e Adding late-replace envvar filenames to ATT
Change-Id: I5df51934ffa25358503013e1a230adb894d6ff94
2024-02-22 10:02:32 -05:00
Manjunath-Jakaraddi 8d705f8b96 SWDEV-445654: Adding metrics to MI300
Change-Id: I7c3d78d8739ad219fc05bd99d7fc11d1f023aadc
2024-02-14 13:17:15 -05:00
Giovanni LB 95b49ca593 Adding bank conflict and other MI300 missing metrics to rocprofv2
Change-Id: Ibb7fb6163aa3bd7742f199a03600c737720e3c61
2024-02-14 13:15:54 -05:00
gobhardw 28871e661a node id to be reported as gpu id
Change-Id: I237281b33cfb5bdad67b7d6e8b69e9a86d62ca5d
2024-02-12 12:26:41 +05:30
Giovanni LB 363abb238b Fixing SE numbering and cache invalidade parsing
Change-Id: Ie63c68a0b2b07427586faaf69b68a19c315387e3
2024-01-31 13:11:19 -03:00
Giovanni LB 067071f669 SWDEV-439757: Remove codeobj marker on last kernel. Fixed codeobj size limit. ATT version bump.
Change-Id: Ie0b9c4de6c37acaaad4ae7d8d774d234a3847b7c
2024-01-17 05:01:50 -03:00
Saurabh Verma 5676c27c02 Supporting UMC counters in rocprofv2
Change-Id: Ic96c33244d78ac5031cfd99ac2be0c12c774d1b0
2024-01-04 12:33:08 -05:00
Ammar ELWazir a59d56f9bc Fixing ROCProfilerV2 to match versioning changes in HIP Runtime
Change-Id: Ifb0f98356acebcb7cf5372340b36178de000405d
2024-01-03 12:28:08 -06:00
Giovanni LB 25a02fe03e SWDEV-437776: Fixing typo for in stitch.py. Fixing singleDispatch kernel name.
Change-Id: I8d65598fffa4f15f78a64f741fdcb9a4a77af2a0
2023-12-27 18:08:39 -05:00
Saurabh Verma b18bc9930b Fixed format of presenting MI300 counters for individual xccs
1. Modified rocprofiler_record_profiler_t to include xcc_index
2. Modified file plugin to add additional column XCC_Index to the csv

Change-Id: Ic526c739e16b50dca5704070ccabbcbecd994d6a
2023-12-20 14:04:10 -05:00
Giovanni LB 490ea4c37d SWDEV-432445: ATT - Adding fixes for symbolic stitch and source reference numbering
Change-Id: I31d63bd2500155697129c29d7e0bc857e48cad8e
2023-12-18 08:53:51 -03:00
Jatin Chaudhary 8dd9d9df51 SWDEV-412457 - include assert header in files that use it
Change-Id: Ie1a947e78c4badc5b07b15fefc8aaedacfc7a02c
2023-12-13 13:37:41 -05:00
Giovanni LB e85c6911aa SWDEV-432445: Reorganizing ATT packet start/stop. Bump ATT parser version.
Change-Id: I979648f8a6a25aa7b499b3eea49978578f6c3f5a
2023-12-12 17:43:34 -05:00
Giovanni LB edf93d48ab SWDEV-432445: ATT continuous mode update part2. Added codeobj tracking.
Change-Id: I1b58af70d221bbeb9b4cab960d26357a504045dd
2023-12-12 17:40:59 -05:00
Giovanni LB aba6a1d986 SWDEV-432445: ATT continuous mode
Change-Id: I52732fc1dba41df3373ef6a19a428b00d729bf04
2023-12-12 10:55:23 -03:00
Giovanni LB 99b14fc9f8 Added option to control how codeobj is dumped from ATT
Change-Id: Ie76aeea1193c7ba8fe7f51be159516f8a9eab55f
2023-11-08 17:48:28 -03:00
Mythreya 46e02a9866 Add MI200/MI300 counters
Revision - Addition [Impact SoC: MI200, MI300]
    Note: this set of counters are important help understand the
          bottleneck.
    1.	TCC_TAG_STALL
        a.	Metric:  TCC_TAG_STALL/TCC_CYCLE: percentage of time TCC
            tag lookup pipeline is stalled
    2.	TCP_TCR_TCP_STALL_CYCLES
        a.	Metric: TCP_TCR_TCP_STALL_CYCLES/TCP_GATE_EN1: percentage
            of time TCP is stalled by TCR

Revision - Addition [Impact SoC: MI300]
    3.	TCC_BUBBLE:
        a.	Definition: Number of 128-byte read requests sent to EA
        b.	Revised Metric #1, TCC-EA Read BW:
        ReadBW =   128 * TCC_BUBBLE
                + 64 * (TCC_EA0_RDREQ - TCC_BUBBLE - TCC_EA0_RDREQ_32B)
                + 32 * TCC_EA0_RDREQ_32B
        c.	Revised Metric #2: TCC_EA Read Latency
        ReadLatency = TCC_EA0_RDREQ_LEVEL / (TCC_BUBBLE + TCC_EA0_RDREQ)

    /* [Fineprint] More detailed arithmetic:
    * ReadLatency = TCC_EA0_RDREQ_LEVEL / (#32B_req + #64B_req + #128B_req * 2)
    */

Change-Id: I0a2dfc1b64ca97023b1e8ba0f9830330b3034946
2023-10-30 15:38:46 -04:00
Lancelot Six 372fc3910b src/core/isa_capture/code_object_track.cpp: remove unused dbgapi import
The src/core/isa_capture/code_object_track.cpp file includes the
amd-dbgapi header but does not use the library (and is not configured to
use the library).

Remove the unused import.

Change-Id: Icc6c46a1f52355e9e5631395dfad1b44365bdca4
2023-10-27 00:09:21 -04:00
Mythreya 1fae494b12 Remove non-functional counters for MI200 and MI300
Counters removed for MI300 (gfx940)
    TCP_TCC_WRITE_REQ_HOLE_LATENCY
    TCP_TCC_WRITE_REQ_LATENCY
    TCP_TCC_READ_REQ_LATENCY
    TCP_TCP_LATENCY

Counters removed for MI200 and MI300 (gfx90a and gfx940 respectively)
    TA_BUFFER_COALESCABLE_WAVEFRONT
    TA_FLAT_COALESCABLE_WAVEFRONT
    TCC_EA0_WRREQ_IO_CREDIT_STALL
    TCC_EA0_WRREQ_GMI_CREDIT_STALL
    TCC_EA0_WRREQ_DRAM_CREDIT_STALL
    TCC_EA0_RDREQ_IO_CREDIT_STALL
    TCC_EA0_RDREQ_GMI_CREDIT_STALL
    TCC_EA0_RDREQ_DRAM_CREDIT_STALL

Change-Id: Ic3d1e7bf35495f35b1239f03ca6420e949421386
2023-10-26 12:50:57 -04:00
Saurabh Verma 1e1692e6c0 SWDEV-427921: Fixing rocprof v1 counter collection for PAPI on MI300
Change-Id: I8589fe78fca481ed326e584ea1d01c0f90de655e
2023-10-19 13:40:32 -04:00
gobhardw 5d390717b5 SWDEV-427554 Fixing mainline ASAN build
Change-Id: I63cd047ceb75dea5f8ed6f84946e1ec209c7d812
2023-10-18 21:42:47 +05:30
gobhardw def7fa710a Solving timestamps and serialization merge
Change-Id: Icd14e49c06b19e4334adbdb98efed54af029b95b
2023-10-16 14:54:50 -04:00
Sriraksha Nagaraj a76341e30c Enabling -m and --basenames option
Change-Id: Ic19ac28ab6ec842daf2a93a311ed7690b61b1e2a
2023-10-13 14:44:20 -04:00
Giovanni LB e0962d9d63 SWDEV-423947: Added ATT header option
Change-Id: I6e9ad213b578d752c865c9f9af4ee0b79d447e1b
2023-10-12 10:02:30 -04:00
Giovanni LB 9efd1865c0 Fixing GL2C counter instances
Change-Id: I37edbdaebe349149e369b21a9e48c302e170941e
2023-10-10 12:09:49 -04:00
Giovanni LB 7418c52cc8 SWDEV-423659: Disabling HIP_ACTIVITY when HSA_ACTIVITY is enabled.
Change-Id: If64fabdcd0d8a718dd0017c2bc821a94c999e87e
2023-09-26 01:13:21 -04:00
vlaindic 03a63791b0 SWDEV-418738: Listing counters of all GPU agents
Using `gfxip` when listing counters on the system with multi-GPUs
all belonging to the same family results in showing counters
of the first agent multiple times.
Instead, use the agent's `name` to observe counters of all agents.

Change-Id: I7b46c0670bc7c918e2ba0357fa659df9d23379d4
2023-09-22 17:22:28 +02:00
Sriraksha Nagaraj 54f6e2afb7 SWDEV-378008: Adding changes to serialize the kernels in rocprofV2
Change-Id: I82353ba94b3a15fdc5991e6129fe47f6765a9f74
2023-09-14 13:09:09 -04:00
Giovanni LB adc1367c59 SWDEV-421600: Fixing eval_metrics
Change-Id: I3a41fb6b27d80d84a34ee6461382e512dbecb61f
2023-09-12 16:24:30 -04:00
Giovanni LB 43e259e5da SWDEV-419944: Added metrics for gfx1102
Change-Id: I5c69ff716f530d130710c0687f20e5bc990a60eb
2023-09-11 13:59:33 -04:00