Loading...
Loading...
Answers questions about what rocprofiler-systems configuration options exist and how to use them — e.g. "what hardware counters are available on my system", "what ROCm APIs can I trace", "what settings control sampling/output", "how do I persist my configuration" — by mapping the question to the right `rocprof-sys-avail` or `rocprof-sys-run --help=<topic>` command. Use when the user wants to discover or explore ROCPROFSYS_* settings, Timemory components, hardware counters, ROCm API tracing domains, or GPU metrics, rather than apply them. Do NOT use this for picking a starting --preset for a workload — that's `choosing-a-profiling-preset`.
npx skill4agent add amd/skills rocprofiler-systems-discovering-profiling-optionsrocprof-sys-availrocprof-sys-run --help=<topic>rocprof-sys-availrocprof-sys-availrocprof-sys-runrocprof-sys-samplePATHsource <install-prefix>/share/rocprofiler-systems/setup-env.sh| User question | Command | Notes |
|---|---|---|
| What settings/env vars exist, with descriptions? | | |
| What hardware counters are available on my system? | | |
| What ROCm APIs can be traced? | | Regex-filters settings to the |
| What operations/API calls exist within one ROCm domain? | | e.g. |
| What Timemory components can I collect? | | add |
| What settings exist for one topic (tracing, sampling, output, ...)? | | category names don't always match plain English — it's |
| What GPU power/temp/utilization metrics can I sample? | | surfaces |
What CLI flags does | | topics: |
| How do I persist chosen settings across runs? | | |
| Name you see | What it controls |
|---|---|
| Perfetto trace output |
| rocPD output |
| timemory profile output |
| call-stack sampling |
| ROCm API tracing |
| MPI, RCCL, OpenMP and Kokkos API tracing |
-r <regex>-c <category>-A-A--availablerocprof-sys-avail -G ~/.rocprof-sys.cfg --all # --all adds descriptions/categories
export ROCPROFSYS_CONFIG_FILE=~/.rocprof-sys.cfg-F txt|json|xmltxtxmlROCPROFSYS_CONFIG_FILEjsonROCPROFSYS_CONFIG_FILErocprof-sys-run --preset=<file>.json -- <app>ROCPROFSYS_SAMPLING_FREQ = 50ROCPROFSYS_SAMPLING_FREQ=77rocprof-sys-run --sampling-freq=100 -- <app>-H -c CPUROCPROFSYS_PAPI_EVENTSROCPROFSYS_PROFILE=ONpapi_arraypapi_vectorROCPROFSYS_TIMEMORY_COMPONENTSwall_clock,papi_arraypapi_array*.txt/jsonpapi_vector*PAPI_*perf::*perf_event/proc/sys/kernel/perf_event_paranoidnet:::/proc/net/devROCPROFSYS_USE_SAMPLING=ONROCPROFSYS_SAMPLING_OVERFLOW=ONROCPROFSYS_SAMPLING_OVERFLOW_EVENT=<event>rocprof-sys-avail -H -c CPU -r overflowROCPROFSYS_SAMPLING_OVERFLOW_FREQ10000000perf_event_paranoid-H -c GPUFETCH_SIZE:device=0ROCPROFSYS_ROCM_EVENTSrocprof-device-<N>-<counter>.txt/jsonROCPROFSYS_GPU_PERF_COUNTERS:device=NROCPROFSYS_AMD_SMI_METRICSbusy,temp,power,mem_usageallROCPROFSYS_USE_AMD_SMI=OFFROCPROFSYS_ROCM_DOMAINShip_runtime_api,kernel_dispatch,memory_copyrocprof-sys-avail -bd -r ROCM_DOMAINSkfd_eventsHSA_XNACK=1rocminfo | grep -i xnackxnack-xnack+| Mistake | Fix |
|---|---|
Guessing a category name for | Run |
Dumping the full | Combine with |
| Confusing this skill with picking a profiling preset | Preset selection is |
| Typing a ROCm domain name from memory | An unknown |
Forgetting | Without it, |
rocprof-sys-avail