Commit Graph

197 Commits

Author SHA1 Message Date
Saurabh Verma e892d68dcd SWDEV-409527: Fixing Mi100/Mi200 Counters rocprof
Change-Id: I0c39003f99b43994ae0f4fcfad2b3ebbb29a63b8
2023-07-10 10:05:07 -04:00
Giovanni LB e935632769 SWDEV-408509: Added MPI awareness, dispatch ID and buffer size to ATT API. Fixed wrong dispatch ID on kernel.txt. Readme fixes.
Change-Id: Ib1e2d515d14419097d73dc28648e47ca752d95a6
2023-07-07 01:55:04 -04:00
Ammar ELWazir 4f88f712c4 Fixing Mi100/Mi200 Counters
Change-Id: Id4f074a639db1faa881a7f40fe521e294e984f54
2023-07-06 21:22:49 +00:00
Ammar ELWazir f1f5c4485d SWDEV-406401: Adding Kernel Duration as a Metric
Change-Id: If5137ce0bdb65d87ca9d86fa860cb95b240081ce
2023-06-30 18:32:07 -04:00
Ammar ELWazir 3b9a213378 SWDEV-408630: Fixing missing versioning functions implementation
Change-Id: Id5a8d565301d0515583bf566de7d04870a771aa1
2023-06-29 18:04:51 +00:00
Ammar ELWazir b6836ad330 Fixing Reached HW Limits message for counters
Change-Id: I61830307c7a45fd689adddc8f5ddc9411aa138f8
2023-06-29 09:32:38 -04:00
Giovanni LB 590f014e3e SWDEV-406670: Handling repeated counters
Change-Id: I90e71463b8ba14659d55d6e916b1ad26257e8ccb
2023-06-21 16:55:46 -04:00
Saurabh Verma b7d045c672 SWDEV-400688: Correction for block instance count referenced in xml for MI300 metrics
Change-Id: I8b84f5d018d64104ed3d1bedeff272fd5e7437ca
2023-06-21 16:26:59 -04:00
Ammar ELWazir 93c28b5d39 SWDEV-403398: ROCProfiler V2 Optimizations
1- Optimizations for current profiler, tracer classes
2- Adding Flush Interval functionality
3- Adding Trace Period functionality

Change-Id: I319b76b723516abad34565cd8364326e8435e634
2023-06-21 12:46:15 -04:00
Ammar ELWazir e626f26b4f SWDEV-404087: Adding default value for the metrics XML path
Change-Id: Idbc8e35067229a5b6b97103dad2555948987aeb0
2023-06-21 06:31:37 -04:00
Ammar ELWazir 3ac57e167e SWDEV-403068 & SWDEV-403069: Memory Leaks fix for tracer
Change-Id: I57ce10ae616dda9529d22d4cee15556864760d6c
2023-06-21 06:28:47 -04:00
Ammar ELWazir 2c34a6c166 SWDEV-406385: Fixing C support for tracer APIs
Change-Id: I20720db59f1aaed493dfac5b27e50a96c4329e52
2023-06-21 06:27:41 -04:00
Giovanni LB a1508035dc SWDEV-298742: Added occupancy metrics
Change-Id: I67e375ad06535bbb8cc864b78840ce3962bcc58e
2023-06-19 12:10:22 -04:00
Mark Laws 5daee04fc7 SWDEV-379554: handle multiple HSA agents correctly
Change-Id: I858dc0780628b7a2bdc1fdff2e4531d9ebdaaf30
2023-06-19 12:07:53 -04:00
Giovanni LB e1285e3fd4 SWDEV-405575: Added gfx941 and gfx942
Change-Id: I45a49cd64a76d3ae32c209497c70fe27b5be212b
2023-06-19 11:11:37 -04:00
Ammar ELWazir 4560bcae9f Setting Priority for HSA Queue handling Device Profiling
Change-Id: I82072ffb73f56b6effd2878164513ce47014c33f
2023-06-08 18:11:59 -04:00
Ammar ELWazir 5c8cb39b08 Fixing Perfetto Plugin & Updating Perfetto SDK
Change-Id: Idad07448a70b0b17acee899c0265147455a9d87c
2023-06-06 09:02:17 -04:00
Ammar ELWazir edf162163a Profiler and Tracer fix to use the same GPU ID
Change-Id: Ie42212d7717a3fd5e8fe1b5d1a2e893499ccedf7
2023-06-02 22:19:28 -04:00
Ammar ELWazir 3fd8de68aa Fixing ROCProf Tool V1 list basic/derived counters
Change-Id: I70534fd136301e54416d5f663e52b57788a7ec0a
2023-06-02 15:51:21 -05:00
Giovanni LB 59ee21f7d1 SWDEV-402866: Added browser file mode. Fixed caching. Changed ATT buffer size. Added MAX_ATT environment variable. Updated README/Changelog.
Change-Id: I36a6093bb85bf4ef179b59df676fc2e4cbdb5288
2023-06-02 12:41:20 -04:00
Ammar ELWazir 941a0373e6 Fixing Kernel Dispatches timestamps issue
Change-Id: I4946ea13e2796b018dc3a9114c232b0fa5f483dc
2023-06-02 02:02:22 +00:00
Ammar ELWazir 4bcef6b8de Removing ROCMTools naming from ROCProfiler project
Change-Id: Ibd6211e031157f68a1bc3dd8dd77385e695cb700
2023-05-30 22:14:50 -05:00
Ammar ELWazir 08fc21ac31 SWDEV-403050: Multiple fixes for Memory Leaks in profiler
Change-Id: Ib720a81105af13898ff745ce0cbc2a48c1f4a980
2023-05-30 21:41:54 -05:00
Ammar ELWazir 00ecca25c7 Fixing Multiple Profiler Issues:
1- Fixing Output Buffer Issues
2- Metrics Instances created for all GPUs in Init
3- Multi CPU/GPU/KernArg Pools are initialized for every Agent in Init
4- Lowering OverHead in the Packet WriteInterceptor in the ProxyQueue for both Profile Counting & ATT

Change-Id: Ic3d78156af8405bb134d01584574c339237d265f
2023-05-30 21:41:54 -05:00
Saurabh Verma b72fa8b125 corrected the gpu-id in the profiler record for MI300 individual xcc mode
Change-Id: Iec0163a67dd28b556f73ef7ff376d6d7040ba4c5
2023-05-30 21:41:54 -05:00
Saurabh Verma 58c4b165fe PLAT-130886: Support for MI300 XCC modes for rocprofv2
1. Accumulated mode(default mode) will aggregate counters and metric values from all xcc.
2. Individual mode (export ROCPROFILER_INDIVIDUAL_XCC_MODE=1) will dump metrics from each xcc separately.

Change-Id: I18ca334514f626f0c8e92d1472c1738978baccd4
2023-05-30 21:41:54 -05:00
Saurabh Verma 8f82ff6a46 MI300 counters support for rocprof and rocprofv2(Accumulation from all xccs)
1. Xml files updated for gfx940 counters
2. File plugin changes to allow rocprofv2 backward compatibility for results.csv
3. Changes in rocprofv2 script to use tblextr.py, to generate results.csv just like rocprof

Change-Id: I7798f4411ce01f6fbfffb126de654ed806ca7045
(cherry picked from commit 86cbaf38c436be876f0426fa27803b1e64d90378)
2023-05-30 21:41:54 -05:00
Ammar ELWazir 6b07b139c4 Fixing Timestamps for Tracing for the trace buffer results
Change-Id: I89b36daacb6531840ac334ba4629c73a7b8f1e79
2023-05-25 01:59:54 +00:00
Ammar ELWazir 05ed06f883 Fixing queue.cpp as record_id is being generated as transferred in the signal handler arguments as the kernel_name id
Change-Id: Ic89d1dad4993a5a78e19e416248208a3e4980538
2023-05-23 04:38:16 +00:00
Ammar ELWazir b6bcb5cd50 SWDEV-401678: Fixed Generated Record IDs missed between different threads
Change-Id: I7f78224dcc317668ee3c54279435f253121ad539
2023-05-23 04:38:16 +00:00
Ammar ELWazir f7e7255f10 Fixing Record ID in queues.cpp
Change-Id: I39aa90cdf399f47272b710a5377841c29708dfda
2023-05-19 16:56:22 +00:00
gobhardw c3107fc258 SWDEV-398161, SWDEV-398764 Fixed --hsa-api for v2
Change-Id: I1902ff463851a3485b48f7b9400f7116a073365a
2023-05-17 17:22:44 -04:00
Giovanni LB edbac98594 SWDEV-380635: Added metrics in src/core for gfx11
Change-Id: I4e2003a6bff8ce06ecd3c8e07354e67f053683b5
2023-05-05 15:39:30 -04:00
Kiumars Sabeti 997c771723 SWDEV-380635: adding gfx11 architecture to rocprofiler which includes navi31 and navi32 for now
Change-Id: Ib2a93a34688471c82b5db0dc10e8da58452dba21
2023-05-05 15:39:18 -04:00
Giovanni LB ba620ee7c6 SWDEV-389947: Fixing GPU memory being allocated for every kernel. Reduced python memory usage.
Change-Id: I74d31581653e53e529f148b272f5217a1edcf288
2023-05-05 11:26:34 -04:00
Ammar ELWazir 9e62e066fe V1/V2 API Library Separation
V1 library will be supported as librocprofiler64.so and V2 will be supported as librocprofiler64v2.so and headers will be rocprofiler.h for V1 and v2/rocprofiler.h for v2

Change-Id: Ibe5bdbf2f79f0175342c648e917ae77918186604
2023-05-02 22:44:43 -04:00
Giovanni LB 40619ac19c Navi21 support for ATT
Change-Id: I24f4a9ca6df805ec05163863490280f8f0a40930
2023-04-25 12:18:36 -04:00
gobhardw 40bfdcade0 SWDEV-388249: Memory leak fix
Change-Id: I68c62ee42e6d37fb85a1a8aa0d7a2cbda6431a8b
2023-04-25 12:12:43 +05:30
Giovanni LB c07eff437f SWDEV-388249: WIP - Fixed few memory leaks
Change-Id: I97eb348c7715ac166f48cee3fd3d1b702d355948
2023-04-24 17:58:46 -03:00
Giovanni LB 579d59698a SWDEV-393614: Zero-ed record struct on allocation.
Change-Id: I0c1fa995e336e21d66851ac621114b8e88786c94
2023-04-21 11:37:38 -04:00
Ammar ELWazir 1322e527a6 Fixing Kernel Names
The lifetime of the kernel descriptor handle is unknown, so we currently uses the record id to identify the kernel name

Change-Id: I8802ce245bb021bcb43dd97cd6334bc88de0faf4
2023-04-21 03:17:33 -04:00
Ammar ELWazir 29b25a3ef5 Adding Async output for API Tracing
If rocprofiler_set_api_trace_sync_callback is not called by the API client then it will be automatically saved in the buffer and it will be in async to the user to see the API trace data, sample for async api tracing is added to samples/tracer

Change-Id: I01266a12b0eec172fdcffd7f04c89c2fe96174bb
2023-04-21 03:17:27 -04:00
Ammar ELWazir 4a33787c01 Fixing Performance Issue with API Tracing V2
Records right now will report basic raw data, no pre-processing in API anymore, and it will be left to the tool to process data from the output of synchronous callbacks of the API tracing records output

Change-Id: I8e5845e49e1228cb2fb60ca188ee748745b6a1af
2023-04-21 03:17:17 -04:00
Ammar ELWazir 7621626559 Handling Corrupted kernel names
Change-Id: I660cefa1d6fadfd6cf59fe57b70b718c5e17aa75
2023-04-18 19:28:22 +00:00
Sriraksha Nagaraj d410ba3864 SWDEV-391217:Adding a fix to display kernel properties values
Change-Id: Icde93e81f7024e699bebec32e3b3315c8ae811fa
2023-04-11 03:56:46 +00:00
Ammar ELWazir da570693e3 Fixing Dispatch numbers
Change-Id: I2c8fb4aedfde68acaeb36cbb2e3263a0317011a7
2023-03-09 13:21:08 +00:00
Ammar ELWazir 118dcab102 Solving merge issues between v1 and v2
Change-Id: Ic7fcf7dfb55e893ebc78abb5b33ed79873ea73da
2023-03-09 13:21:08 +00:00
Giovanni LB cb07947ad4 SWDEV-385374: Fixed next record iteration.
Change-Id: I69e86f2c27ea9a8b02cb48d876534b1dd0f6dc4f
2023-03-09 13:21:07 +00:00
gobhardw 34e62464ee SWDEV-297569: Support for xgmi counters
Change-Id: If14c0f63821b721fe719d3b76915afc2f2333d5c
2023-03-09 13:21:07 +00:00
Saurabh Verma 3a639543e7 SWDEV-297574: Support for pcie counters
Change-Id: I4a662c43a9d0cf883f336574baa09fc33b78b9af
2023-03-09 13:21:06 +00:00