2
0

[rocprofv3] MultiKernelDispatch ATT support (#774)

* Initial consecutive kernel WIP

* Updated logic after discussion, create context only when needed, change set of captured ids to dispatch_id_t type

* Updated to fix concurrency issues and revert kernel_iterations

* Add captured id in first lock capture

* Updated code to use wlock, added comments, removed some unecessary atomic

* Cleaned up, need to add test

* Add test to check that generated stats csv file is not empty

* Updated test to check if vector-ops kernels are being used

* Fix phase bug

* Updated for comments

* Flattened ATT logic a bit

* Fix incorrect if-statement

* Fix merge conflict
Este cometimento está contido em:
itrowbri
2025-09-23 20:19:27 -05:00
cometido por GitHub
ascendente 34b9184686
cometimento abd6029603
8 ficheiros modificados com 398 adições e 29 eliminações
+13
Ver ficheiro
@@ -794,6 +794,13 @@ For attachment profiling of running processes:
type=str,
)
att_options.add_argument(
"--att-consecutive-kernels",
help="Consecutive kernels to profile with ATT. Default 0",
default=None,
type=str,
)
att_options.add_argument(
"--att-buffer-size",
help="Thread trace buffer size. Default 256MB",
@@ -1627,6 +1634,12 @@ def run(app_args, args, **kwargs):
int_auto(args.att_simd_select),
overwrite=True,
)
if args.att_consecutive_kernels:
update_env(
"ROCPROF_ATT_CONSECUTIVE_KERNELS",
int_auto(args.att_consecutive_kernels),
overwrite=True,
)
if args.att_serialize_all:
update_env(
"ROCPROF_ATT_PARAM_SERIALIZE_ALL",