Repository navigation
Conversation
rocprof-sys-unit-tests is marked build_only in tests/pytest/test_units.py and has no install rule, so the packaged test tree skips it and none of its 1576 cases run in CI. Install the binary and an explicit manifest under a new ROCPROFSYS_INSTALL_HOST_ASAN_TESTS option so the CPU-only host-ASAN matrix can execute them on a builder with no GPU device nodes. The manifest pins the exact admitted cases and records the two parametrized suites whose instantiated names can only be enumerated at runtime. Under an address-sanitizer build the payload is linked with -shared-libasan and given an INSTALL_RPATH to the runtime directory, so the consumer can verify direct shared ASAN linkage rather than trusting an inherited LD_PRELOAD.
Contributor
rocprofiler-systems CI SummaryTest Results (for commit
|
| Workflow | Runs | Avg Test Time | Tests | Skipped | Failed |
|---|---|---|---|---|---|
| Ubuntu 22.04 | 5 | 30m 46s | 2,585 | 105 | 0 |
| Ubuntu 24.04 | 5 | 30m 36s | 2,605 | 115 | 0 |
| Debian | 4 | 35m 50s | 2,180 | 82 | 0 |
| RHEL | 12 | 36m 54s | 6,204 | 307 | 1 |
| System deps | 10 | 29m 43s | 5,394 | 226 | 0 |
| Total | 36 | 33m 03s | 18,968 | 835 | 1 |
Failed Tests
RHEL (1 failed)
| Artifact | Failed Test |
|---|---|
junit-build-rhel-primary-build-9 |
ucx-mpi-allreduce-binary-rewrite.ucx-mpi-allreduce-binary-rewrite |
Sanitizers
| Thread | Undefined | Address |
|---|---|---|
| Passed | Passed | Passed |
✅ All Policy Checks Passed
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
Contributor
|
| Lines | Functions | File |
|---|---|---|
| 0.0% 0/10 | 0/2 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/byte_container_with_subtype.hpp |
| 0.0% 0/1 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/log_msg_buffer.h |
| 0.0% 0/1 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/sinks/ansicolor_sink.h |
| 0.0% 0/2 | 0/1 | build/coverage/include/profiler-hub/shared_types.hpp |
| 0.0% 0/105 | 0/9 | source/bin/common/argument_registration.hpp |
| 0.0% 0/254 | 0/28 | source/bin/common/tool_runner.cpp |
| 0.0% 0/59 | 0/6 | source/bin/rocprof-sys-avail/avail.hpp |
| 0.0% 0/260 | 0/12 | source/bin/rocprof-sys-avail/generate_config.cpp |
| 0.0% 0/102 | 0/6 | source/bin/rocprof-sys-avail/hw_counter_query.cpp |
| 0.0% 0/447 | 0/47 | source/bin/rocprof-sys-causal/impl.cpp |
| 0.0% 0/80 | 0/2 | source/bin/rocprof-sys-causal/rocprof-sys-causal.cpp |
| 0.0% 0/670 | 0/45 | source/bin/rocprof-sys-instrument/details.cpp |
| 0.0% 0/91 | 0/7 | source/bin/rocprof-sys-instrument/function_signature.cpp |
| 0.0% 0/20 | 0/5 | source/bin/rocprof-sys-instrument/function_signature.hpp |
| 0.0% 0/158 | 0/7 | source/bin/rocprof-sys-instrument/info.hpp |
| 0.0% 0/264 | 0/22 | source/bin/rocprof-sys-instrument/internal_libs.cpp |
| 0.0% 0/64 | 0/6 | source/bin/rocprof-sys-instrument/log.cpp |
| 0.0% 0/5 | 0/1 | source/bin/rocprof-sys-instrument/log.hpp |
| 0.0% 0/532 | 0/41 | source/bin/rocprof-sys-instrument/module_function.cpp |
| 0.0% 0/93 | 0/7 | source/bin/rocprof-sys-instrument/module_function.hpp |
| 0.0% 0/1535 | 0/87 | source/bin/rocprof-sys-instrument/rocprof-sys-instrument.cpp |
| 0.0% 0/157 | 0/12 | source/bin/rocprof-sys-instrument/rocprof-sys-instrument.hpp |
| 0.0% 0/2 | 0/1 | source/bin/rocprof-sys-run/rocprof-sys-run.cpp |
| 0.0% 0/2 | 0/1 | source/bin/rocprof-sys-sample/rocprof-sys-sample.cpp |
| 0.0% 0/24 | 0/1 | source/lib/backends/amd_smi/wrapper.hpp |
| 0.0% 0/16 | 0/4 | source/lib/binary/address_multirange.cpp |
| 0.0% 0/9 | 0/1 | source/lib/binary/address_multirange.hpp |
| 0.0% 0/117 | 0/5 | source/lib/binary/analysis.cpp |
| 0.0% 0/7 | 0/1 | source/lib/binary/binary_info.hpp |
| 0.0% 0/102 | 0/9 | source/lib/binary/dwarf_entry.cpp |
| 0.0% 0/1 | 0/1 | source/lib/binary/dwarf_entry.hpp |
| 0.0% 0/69 | 0/6 | source/lib/binary/link_map.cpp |
| 0.0% 0/3 | 0/1 | source/lib/binary/link_map.hpp |
| 0.0% 0/10 | 0/1 | source/lib/binary/scope_filter.cpp |
| 0.0% 0/5 | 0/2 | source/lib/binary/scope_filter.hpp |
| 0.0% 0/158 | 0/18 | source/lib/binary/symbol.cpp |
| 0.0% 0/8 | 0/8 | source/lib/binary/symbol.hpp |
| 0.0% 0/9 | 0/2 | source/lib/common/env_vars.hpp |
| 0.0% 0/40 | 0/3 | source/lib/common/invoke.hpp |
| 0.0% 0/150 | 0/10 | source/lib/common/md5sum.hpp |
| 0.0% 0/22 | 0/2 | source/lib/common/setup.hpp |
| 0.0% 0/166 | 0/2 | source/lib/core/agent_info.hpp |
| 0.0% 0/80 | 0/18 | source/lib/core/binary/address_range.cpp |
| 0.0% 0/9 | 0/3 | source/lib/core/binary/address_range.hpp |
| 0.0% 0/21 | 0/6 | source/lib/core/categories.cpp |
| 0.0% 0/11 | 0/11 | source/lib/core/components/fwd.hpp |
| 0.0% 0/14 | 0/2 | source/lib/core/containers/aligned_static_vector.hpp |
| 0.0% 0/11 | 0/3 | source/lib/core/containers/c_array.hpp |
| 0.0% 0/1 | 0/1 | source/lib/core/containers/operators.hpp |
| 0.0% 0/46 | 0/12 | source/lib/core/containers/stable_vector.hpp |
| 0.0% 0/23 | 0/5 | source/lib/core/containers/static_vector.hpp |
| 0.0% 0/84 | 0/5 | source/lib/core/cpu.cpp |
| 0.0% 0/1 | 0/1 | source/lib/core/cpu.hpp |
| 0.0% 0/54 | 0/6 | source/lib/core/dynamic_library.cpp |
| 0.0% 0/28 | 0/7 | source/lib/core/exception.cpp |
| 0.0% 0/160 | 0/12 | source/lib/core/gpu_metrics.cpp |
| 0.0% 0/33 | 0/6 | source/lib/core/mpi.hpp |
| 0.0% 0/24 | 0/2 | source/lib/core/node_info.cpp |
| 0.0% 0/2 | 0/2 | source/lib/core/node_info.hpp |
| 0.0% 0/80 | 0/5 | source/lib/core/perf.cpp |
| 0.0% 0/50 | 0/5 | source/lib/core/perfetto/cached_perfetto_session.cpp |
| 0.0% 0/33 | 0/4 | source/lib/core/perfetto/counter_track.hpp |
| 0.0% 0/29 | 0/7 | source/lib/core/perfetto/emitter.cpp |
| 0.0% 0/48 | 0/9 | source/lib/core/perfetto/emitter.hpp |
| 0.0% 0/7 | 0/1 | source/lib/core/perfetto/sinks/append_mode.hpp |
| 0.0% 0/1 | 0/1 | source/lib/core/progress/bar.hpp |
| 0.0% 0/8 | 0/3 | source/lib/core/sdk/tracing-config-deps.hpp |
| 0.0% 0/54 | 0/3 | source/lib/core/trace_cache/cache_manager.cpp |
| 0.0% 0/7 | 0/3 | source/lib/core/trace_cache/cache_manager.hpp |
| 0.0% 0/516 | 0/71 | source/lib/core/trace_cache/metadata_registry.cpp |
| 0.0% 0/784 | 0/102 | source/lib/core/trace_cache/perfetto_processor.cpp |
| 0.0% 0/119 | 0/12 | source/lib/core/trace_cache/post_processor.cpp |
| 0.0% 0/829 | 0/32 | source/lib/core/trace_cache/rocpd_processor.cpp |
| 0.0% 0/77 | 0/1 | source/lib/core/trace_cache/sample_processor.hpp |
| 0.0% 0/14 | 0/6 | source/lib/rocprof-sys-causal-api/causal_api.cpp |
| 0.0% 0/540 | 0/85 | source/lib/rocprof-sys-dl/dl.cpp |
| 0.0% 0/16 | 0/1 | source/lib/rocprof-sys-dl/main.c |
| 0.0% 0/280 | 0/31 | source/lib/rocprof-sys-rt/src/RTcommon.c |
| 0.0% 0/29 | 0/4 | source/lib/rocprof-sys-rt/src/RTheap-linux.c |
| 0.0% 0/65 | 0/4 | source/lib/rocprof-sys-rt/src/RTheap.c |
| 0.0% 0/212 | 0/22 | source/lib/rocprof-sys-rt/src/RTlinux.c |
| 0.0% 0/97 | 0/8 | source/lib/rocprof-sys-rt/src/RTposix.c |
| 0.0% 0/6 | 0/2 | source/lib/rocprof-sys-rt/src/RTsignal.c |
| 0.0% 0/11 | 0/2 | source/lib/rocprof-sys-rt/src/RTthread-x86-64.c |
| 0.0% 0/3 | 0/1 | source/lib/rocprof-sys-rt/src/RTthread.c |
| 0.0% 0/84 | 0/20 | source/lib/rocprof-sys/api.cpp |
| 0.0% 0/669 | 0/40 | source/lib/rocprof-sys/library.cpp |
| 0.0% 0/73 | 0/6 | source/lib/rocprof-sys/library/causal/components/backtrace.cpp |
| 0.0% 0/7 | 0/2 | source/lib/rocprof-sys/library/causal/components/backtrace.hpp |
| 0.0% 0/105 | 0/11 | source/lib/rocprof-sys/library/causal/components/blocking_gotcha.cpp |
| 0.0% 0/33 | 0/7 | source/lib/rocprof-sys/library/causal/components/causal_gotcha.cpp |
| 0.0% 0/85 | 0/22 | source/lib/rocprof-sys/library/causal/components/progress_point.cpp |
| 0.0% 0/23 | 0/3 | source/lib/rocprof-sys/library/causal/components/progress_point.hpp |
| 0.0% 0/49 | 0/8 | source/lib/rocprof-sys/library/causal/components/unblocking_gotcha.cpp |
| 0.0% 0/553 | 0/33 | source/lib/rocprof-sys/library/causal/data.cpp |
| 0.0% 0/89 | 0/16 | source/lib/rocprof-sys/library/causal/delay.cpp |
| 0.0% 0/380 | 0/29 | source/lib/rocprof-sys/library/causal/experiment.cpp |
| 0.0% 0/3 | 0/2 | source/lib/rocprof-sys/library/causal/experiment.hpp |
| 0.0% 0/24 | 0/5 | source/lib/rocprof-sys/library/causal/sample_data.cpp |
| 0.0% 0/268 | 0/25 | source/lib/rocprof-sys/library/causal/sampling.cpp |
| 0.0% 0/4 | 0/1 | source/lib/rocprof-sys/library/causal/selected_entry.cpp |
| 0.0% 0/5 | 0/3 | source/lib/rocprof-sys/library/causal/selected_entry.hpp |
| 0.0% 0/71 | 0/11 | source/lib/rocprof-sys/library/components/backtrace.cpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/backtrace.hpp |
| 0.0% 0/214 | 0/30 | source/lib/rocprof-sys/library/components/backtrace_metrics.cpp |
| 0.0% 0/11 | 0/2 | source/lib/rocprof-sys/library/components/backtrace_metrics.hpp |
| 0.0% 0/9 | 0/3 | source/lib/rocprof-sys/library/components/backtrace_timestamp.cpp |
| 0.0% 0/4 | 0/2 | source/lib/rocprof-sys/library/components/backtrace_timestamp.hpp |
| 0.0% 0/71 | 0/10 | source/lib/rocprof-sys/library/components/callchain.cpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/callchain.hpp |
| 0.0% 0/367 | 0/30 | source/lib/rocprof-sys/library/components/comm_data.cpp |
| 0.0% 0/19 | 0/5 | source/lib/rocprof-sys/library/components/comm_data.hpp |
| 0.0% 0/8 | 0/2 | source/lib/rocprof-sys/library/components/ensure_storage.hpp |
| 0.0% 0/28 | 0/6 | source/lib/rocprof-sys/library/components/exit_gotcha.cpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/exit_gotcha.hpp |
| 0.0% 0/68 | 0/8 | source/lib/rocprof-sys/library/components/fork_gotcha.cpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/fork_gotcha.hpp |
| 0.0% 0/13 | 0/3 | source/lib/rocprof-sys/library/components/kill_gotcha.cpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/kill_gotcha.hpp |
| 0.0% 0/170 | 0/22 | source/lib/rocprof-sys/library/components/mpi_gotcha.cpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/components/mpi_gotcha.hpp |
| 0.0% 0/533 | 0/12 | source/lib/rocprof-sys/library/components/mpip.hpp |
| 0.0% 0/78 | 0/19 | source/lib/rocprof-sys/library/components/numa_gotcha.cpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/components/numa_gotcha.hpp |
| 0.0% 0/335 | 0/20 | source/lib/rocprof-sys/library/components/pthread_create_gotcha.cpp |
| 0.0% 0/5 | 0/1 | source/lib/rocprof-sys/library/components/pthread_create_gotcha.hpp |
| 0.0% 0/34 | 0/9 | source/lib/rocprof-sys/library/components/pthread_gotcha.cpp |
| 0.0% 0/24 | 0/2 | source/lib/rocprof-sys/library/components/pthread_mutex_gotcha_policy.hpp |
| 0.0% 0/164 | 0/31 | source/lib/rocprof-sys/library/components/vaapi_gotcha.cpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/components/vaapi_gotcha.hpp |
| 0.0% 0/143 | 0/10 | source/lib/rocprof-sys/library/coverage.cpp |
| 0.0% 0/29 | 0/5 | source/lib/rocprof-sys/library/coverage.hpp |
| 0.0% 0/60 | 0/16 | source/lib/rocprof-sys/library/coverage/impl.hpp |
| 0.0% 0/252 | 0/37 | source/lib/rocprof-sys/library/kokkosp.cpp |
| 0.0% 0/252 | 0/32 | source/lib/rocprof-sys/library/perf.cpp |
| 0.0% 0/11 | 0/3 | source/lib/rocprof-sys/library/perf.hpp |
| 0.0% 0/172 | 0/10 | source/lib/rocprof-sys/library/pmc/collectors/common/settings.hpp |
| 0.0% 0/66 | 0/5 | source/lib/rocprof-sys/library/pmc/collectors/cpu/cache_policy.hpp |
| 0.0% 0/47 | 0/6 | source/lib/rocprof-sys/library/pmc/collectors/cpu/cpu_traits.hpp |
| 0.0% 0/52 | 0/9 | source/lib/rocprof-sys/library/pmc/collectors/cpu/perfetto_policy.hpp |
| 0.0% 0/116 | 0/6 | source/lib/rocprof-sys/library/pmc/collectors/gpu/cache_policy.hpp |
| 0.0% 0/224 | 0/36 | source/lib/rocprof-sys/library/pmc/collectors/gpu/perfetto_policy.hpp |
| 0.0% 0/25 | 0/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu/sample.hpp |
| 0.0% 0/33 | 0/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/cache_policy.hpp |
| 0.0% 0/39 | 0/7 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/perfetto_policy.hpp |
| 0.0% 0/16 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/nic/sample.hpp |
| 0.0% 0/14 | 0/2 | source/lib/rocprof-sys/library/pmc/device_providers/procfs/provider.hpp |
| 0.0% 0/164 | 0/20 | source/lib/rocprof-sys/library/pmc/sampler.cpp |
| 0.0% 0/121 | 0/11 | source/lib/rocprof-sys/library/process_sampler.cpp |
| 0.0% 0/15 | 0/3 | source/lib/rocprof-sys/library/process_sampler.hpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/rocm.cpp |
| 0.0% 0/1264 | 0/89 | source/lib/rocprof-sys/library/rocprofiler-sdk.cpp |
| 0.0% 0/109 | 0/13 | source/lib/rocprof-sys/library/rocprofiler-sdk/counters.cpp |
| 0.0% 0/17 | 0/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/counters.hpp |
| 0.0% 0/129 | 0/9 | source/lib/rocprof-sys/library/rocprofiler-sdk/fwd.cpp |
| 0.0% 0/34 | 0/7 | source/lib/rocprof-sys/library/rocprofiler-sdk/fwd.hpp |
| 0.0% 0/36 | 0/9 | source/lib/rocprof-sys/library/rocprofiler-sdk/marker_writer.cpp |
| 0.0% 0/136 | 0/13 | source/lib/rocprof-sys/library/rocprofiler-sdk/rccl.cpp |
| 0.0% 0/108 | 0/10 | source/lib/rocprof-sys/library/rocprofiler-sdk/roctx_client.cpp |
| 0.0% 0/118 | 0/20 | source/lib/rocprof-sys/library/runtime.cpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/runtime.hpp |
| 0.0% 0/955 | 0/58 | source/lib/rocprof-sys/library/sampling.cpp |
| 0.0% 0/145 | 0/31 | source/lib/rocprof-sys/library/thread_data.hpp |
| 0.0% 0/10 | 0/3 | source/lib/rocprof-sys/library/thread_data_growth.hpp |
| 0.0% 0/10 | 0/1 | source/lib/rocprof-sys/library/thread_deleter.cpp |
| 0.0% 0/5 | 0/1 | source/lib/rocprof-sys/library/thread_deleter.hpp |
| 0.0% 0/161 | 0/27 | source/lib/rocprof-sys/library/thread_info.cpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/thread_info.hpp |
| 0.0% 0/113 | 0/11 | source/lib/rocprof-sys/library/tracing.cpp |
| 0.0% 0/109 | 0/30 | source/lib/rocprof-sys/library/tracing.hpp |
| 0.0% 0/3 | 0/1 | source/lib/rocprof-sys/library/tracing/annotation.cpp |
| 0.0% 0/45 | 0/4 | source/lib/rocprof-sys/library/tracing/annotation.hpp |
| 0.0% 0/8 | 0/2 | source/lib/rocprof-sys/progress.cpp |
| 0.0% 0/74 | 0/16 | source/lib/rocprof-sys/regions.cpp |
| 0.0% 0/91 | 0/6 | source/lib/rocprof-sys/timeout.cpp |
| 0.0% 0/439 | 0/45 | source/python/libpyrocprofsys.cpp |
| 0.6% 1/169 | 1/13 | source/lib/core/perfetto.cpp |
| 0.8% 7/847 | 1/73 | source/lib/core/argparse.cpp |
| 6.9% 31/449 | 6/53 | build/coverage/_deps/fmt-src/include/fmt/chrono.h |
| 7.1% 1/14 | 0/1 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/primitive_iterator.hpp |
| 8.3% 2/24 | 1/2 | source/lib/core/amd_smi.cpp |
| 14.0% 30/215 | 8/24 | source/bin/rocprof-sys-avail/common.cpp |
| 16.7% 4/24 | 0/2 | source/lib/backends/rocprofiler_sdk/wrapper.hpp |
| 18.0% 32/178 | 6/23 | source/lib/core/gpu.cpp |
| 18.2% 4/22 | 1/3 | source/lib/common/static_object.hpp |
| 18.8% 6/32 | 0/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/types.hpp |
| 19.4% 6/31 | 2/5 | source/bin/common/common_utils.hpp |
🟠 20-50% (12 files)
| Lines | Functions | File |
|---|---|---|
| 20.0% 1/5 | 0/2 | source/lib/core/argparse.hpp |
| 23.2% 13/56 | 1/4 | source/lib/core/mproc.cpp |
| 29.4% 354/1206 | 34/96 | build/coverage/_deps/fmt-src/include/fmt/format.h |
| 32.1% 52/162 | 7/17 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/json_sax.hpp |
| 32.8% 20/61 | 4/9 | source/lib/core/utility.hpp |
| 35.0% 603/1722 | 155/301 | source/lib/core/config.cpp |
| 36.5% 23/63 | 6/12 | source/lib/core/agent_manager.cpp |
| 36.7% 11/30 | 1/6 | source/lib/core/trace_cache/metadata_registry.hpp |
| 40.3% 195/484 | 14/17 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/lexer.hpp |
| 40.5% 17/42 | 5/12 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/exceptions.hpp |
| 46.1% 434/941 | 10/48 | source/bin/rocprof-sys-avail/avail.cpp |
| 49.6% 127/256 | 14/32 | source/lib/rocprof-sys/library/components/category_region.hpp |
🟡 50-80% (37 files)
| Lines | Functions | File |
|---|---|---|
| 50.0% 153/306 | 9/11 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/output/serializer.hpp |
| 50.0% 1/2 | 0/1 | source/lib/rocprof-sys/library/pmc/collectors/nic/types.hpp |
| 51.0% 213/418 | 24/36 | source/bin/common/common_utils.cpp |
| 52.0% 13/25 | 2/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/gpu_perf_counter_traits.hpp |
| 52.1% 25/48 | 3/5 | source/lib/core/output_file_registry.cpp |
| 53.3% 8/15 | 3/3 | source/lib/core/perfetto/sinks/per_pid_file_sink.cpp |
| 55.0% 22/40 | 4/6 | build/coverage/_deps/fmt-src/include/fmt/ranges.h |
| 55.0% 262/476 | 20/39 | build/coverage/_deps/fmt-src/include/fmt/base.h |
| 55.7% 34/61 | 5/8 | source/lib/rocprof-sys/library/pmc/collectors/cpu/sample.hpp |
| 58.3% 14/24 | 3/8 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/output/output_adapters.hpp |
| 58.3% 7/12 | 0/4 | build/coverage/_deps/spdlog-src/include/spdlog/common.h |
| 60.0% 3/5 | 1/1 | source/lib/core/agent.hpp |
| 62.1% 272/438 | 33/41 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/json.hpp |
| 62.1% 41/66 | 7/8 | source/lib/rocprof-sys/library/pmc/collectors/base/collector.hpp |
| 62.8% 49/78 | 4/5 | source/lib/core/trace_cache/discovery.cpp |
| 63.1% 70/111 | 7/10 | source/lib/core/progress/bar.cpp |
| 64.5% 333/516 | 26/40 | source/bin/common/json_config.cpp |
| 65.4% 34/52 | 4/4 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/from_json.hpp |
| 65.4% 17/26 | 2/3 | source/lib/core/config.hpp |
| 66.2% 47/71 | 5/5 | source/lib/rocprof-sys/library/pmc/collectors/gpu/gpu_traits.hpp |
| 66.4% 87/131 | 4/5 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/parser.hpp |
| 66.7% 2/3 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/cpu/types.hpp |
| 67.2% 43/64 | 11/14 | source/lib/core/trace_cache/data_types.cpp |
| 68.4% 39/57 | 4/6 | source/lib/core/perfetto.hpp |
| 68.8% 22/32 | 3/8 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/types.hpp |
| 71.1% 69/97 | 8/8 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/iter_impl.hpp |
| 71.8% 219/305 | 15/17 | source/bin/common/preset_registry.cpp |
| 72.2% 13/18 | 2/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/roctx_client.hpp |
| 72.3% 86/119 | 14/17 | source/lib/core/perfetto/engine.cpp |
| 73.7% 28/38 | 6/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/iteration_proxy.hpp |
| 74.4% 32/43 | 3/3 | source/lib/core/perfetto/sinks/file_output.cpp |
| 74.5% 41/55 | 4/7 | source/lib/core/config/trace_period_config.hpp |
| 75.0% 3/4 | 0/1 | source/lib/backends/amd_smi/nic_types.hpp |
| 75.0% 3/4 | 1/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/callback/code_object.hpp |
| 76.0% 76/100 | 9/10 | source/lib/core/perfetto/engine_impl.hpp |
| 77.8% 7/9 | 0/1 | source/bin/rocprof-sys-avail/info_type.hpp |
| 78.6% 77/98 | 4/4 | source/lib/core/perfetto/sinks/single_file_sink.cpp |
🟢 80-100% (103 files)
| Lines | Functions | File |
|---|---|---|
| 80.0% 8/10 | 1/2 | build/coverage/include/profiler-hub/writer_types.hpp |
| 80.3% 61/76 | 9/10 | source/lib/rocprof-sys/library/pmc/device_providers/rocprofiler_sdk/provider.hpp |
| 81.1% 99/122 | 14/16 | source/lib/common/path.hpp |
| 82.8% 48/58 | 6/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/to_json.hpp |
| 83.4% 131/157 | 10/14 | source/lib/backends/procfs/backend.hpp |
| 83.9% 73/87 | 10/12 | source/lib/logger/logger.hpp |
| 84.4% 54/64 | 4/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/page_migrate.hpp |
| 85.1% 40/47 | 2/2 | source/lib/core/trace_cache/storage_parser.hpp |
| 85.2% 52/61 | 9/11 | source/lib/common/string_utility.hpp |
| 85.5% 47/55 | 4/4 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/device.hpp |
| 86.9% 213/245 | 15/16 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/to_chars.hpp |
| 88.1% 251/285 | 28/33 | source/lib/common/environment.hpp |
| 89.1% 49/55 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_page_migrate.hpp |
| 89.2% 223/250 | 23/33 | source/lib/core/sdk/tracing-config.hpp |
| 89.5% 34/38 | 5/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/input_adapters.hpp |
| 90.0% 54/60 | 4/4 | source/lib/core/trace_cache/buffer_storage.cpp |
| 90.1% 100/111 | 8/8 | source/lib/rocprof-sys/library/pmc/collectors/cpu/device.hpp |
| 90.2% 240/266 | 21/30 | source/lib/core/trace_cache/sample_type.hpp |
| 90.5% 38/42 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_page_fault.hpp |
| 90.5% 38/42 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_queue.hpp |
| 90.7% 243/268 | 19/20 | source/lib/core/trace_cache/unified_memory_processor.cpp |
| 90.9% 10/11 | 1/2 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/json_ref.hpp |
| 90.9% 40/44 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/queue.hpp |
| 91.3% 178/195 | 14/18 | source/lib/rocprof-sys/library/components/shmem_gotcha.hpp |
| 91.5% 43/47 | 7/7 | source/lib/core/control/triggers/time_window.hpp |
| 91.5% 43/47 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_unmap_from_gpu.hpp |
| 91.7% 11/12 | 2/2 | source/lib/core/perfetto/session_backend.hpp |
| 92.2% 47/51 | 7/7 | source/lib/core/control/clocks/posix.hpp |
| 92.6% 163/176 | 9/9 | source/lib/rocprof-sys/library/pmc/collectors/gpu/device.hpp |
| 92.9% 13/14 | 0/1 | source/lib/rocprof-sys/library/pmc/collectors/common/collector_slice.hpp |
| 93.0% 40/43 | 6/11 | source/lib/core/demangler.hpp |
| 93.2% 68/73 | 7/8 | source/lib/core/trace_cache/buffer_storage.hpp |
| 94.3% 133/141 | 30/32 | source/lib/backends/rocprofiler_sdk/backend.hpp |
| 94.4% 17/18 | 3/3 | source/bin/rocprof-sys-avail/component_categories.hpp |
| 94.7% 36/38 | 7/7 | build/coverage/_deps/spdlog-src/include/spdlog/logger.h |
| 94.7% 54/57 | 6/8 | source/lib/rocprof-sys/library/components/pthread_mutex_gotcha.hpp |
| 95.0% 19/20 | 4/6 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/string_concat.hpp |
| 95.4% 62/65 | 1/5 | source/lib/core/trace_cache/cacheable.hpp |
| 95.7% 22/23 | 4/6 | source/lib/common/synchronized.hpp |
| 95.8% 23/24 | 2/4 | source/lib/common/pci_bdf.hpp |
| 95.9% 162/169 | 19/22 | source/lib/rocprof-sys/library/components/ucx_gotcha.hpp |
| 96.2% 25/26 | 1/2 | source/lib/common/delimit.hpp |
| 96.5% 82/85 | 11/12 | source/lib/core/state.hpp |
| 96.8% 30/31 | 3/4 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/sample.hpp |
| 96.8% 151/156 | 16/16 | source/lib/rocprof-sys/library/rocprofiler-sdk/domain_service.hpp |
| 96.9% 31/32 | 2/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_dropped_events.hpp |
| 97.3% 73/75 | 6/6 | source/lib/core/common_types.hpp |
| 97.3% 73/75 | 3/3 | source/lib/core/perfetto/packet_framing.hpp |
| 97.4% 38/39 | 3/3 | source/lib/core/utility.cpp |
| 97.5% 39/40 | 6/7 | source/lib/core/trace_cache/rocpd_helpers.hpp |
| 97.7% 85/87 | 11/12 | source/lib/core/control/triggers/roctx.cpp |
| 97.8% 44/45 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/page_fault.hpp |
| 97.8% 45/46 | 7/7 | source/lib/rocprof-sys/library/rocprofiler-sdk/rccl_internal.hpp |
| 97.9% 47/48 | 3/3 | source/lib/rocprof-sys/library/pmc/collectors/nic/device.hpp |
| 98.1% 51/52 | 7/7 | source/lib/rocprof-sys/library/pmc/device_providers/amd_smi/provider.hpp |
| 98.7% 78/79 | 15/16 | source/lib/backends/amd_smi/backend.hpp |
| 99.1% 115/116 | 19/19 | source/lib/core/control/session.cpp |
| 100.0% 14/14 | 1/1 | build/coverage/_deps/fmt-src/include/fmt/ostream.h |
| 100.0% 6/6 | 0/3 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/adl_serializer.hpp |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/position_t.hpp |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/backtracer.h |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/circular_q.h |
| 100.0% 1/1 | 0/1 | build/coverage/include/profiler-hub/reader_types.hpp |
| 100.0% 1/1 | 0/1 | source/bin/common/json_config.hpp |
| 100.0% 39/39 | 2/2 | source/bin/rocprof-sys-avail/get_availability.hpp |
| 100.0% 10/10 | 1/1 | source/bin/rocprof-sys-avail/get_categories.hpp |
| 100.0% 4/4 | 1/1 | source/bin/rocprof-sys-avail/info_type.cpp |
| 100.0% 107/107 | 13/14 | source/lib/backends/amd_smi/device.hpp |
| 100.0% 7/7 | 0/1 | source/lib/backends/amd_smi/gpu_types.hpp |
| 100.0% 1/1 | 0/1 | source/lib/backends/rocprofiler_sdk/types.hpp |
| 100.0% 12/12 | 1/1 | source/lib/common/join.hpp |
| 100.0% 14/14 | 2/4 | source/lib/common/units/data_size.hpp |
| 100.0% 11/11 | 2/3 | source/lib/common/units/frequency.hpp |
| 100.0% 11/11 | 2/3 | source/lib/common/units/power.hpp |
| 100.0% 5/5 | 0/3 | source/lib/common/units/quantity.hpp |
| 100.0% 8/8 | 0/2 | source/lib/common/version.hpp |
| 100.0% 2/2 | 1/2 | source/lib/core/agent_manager.hpp |
| 100.0% 19/19 | 4/4 | source/lib/core/control/clocks/steady.cpp |
| 100.0% 2/2 | 1/2 | source/lib/core/control/clocks/steady.hpp |
| 100.0% 15/15 | 3/5 | source/lib/core/control/session.hpp |
| 100.0% 3/3 | 0/2 | source/lib/core/control/triggers/roctx.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/output_file_registry.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/category_registry.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/engine.hpp |
| 100.0% 7/7 | 0/1 | source/lib/core/perfetto/sinks/file_output.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/sinks/per_pid_file_sink.hpp |
| 100.0% 2/2 | 0/1 | source/lib/core/perfetto/sinks/single_file_sink.hpp |
| 100.0% 2/2 | 0/1 | source/lib/core/perfetto/sinks/trace_sink.hpp |
| 100.0% 6/6 | 2/2 | source/lib/core/progress/tracker.cpp |
| 100.0% 1/1 | 0/1 | source/lib/core/progress/tracker.hpp |
| 100.0% 4/4 | 0/3 | source/lib/core/trace_cache/data_types.hpp |
| 100.0% 9/9 | 3/3 | source/lib/core/trace_cache/type_registry.hpp |
| 100.0% 24/24 | 4/5 | source/lib/core/trace_cache/unified_memory_processor.hpp |
| 100.0% 5/5 | 2/2 | source/lib/core/track_registry.cpp |
| 100.0% 4/4 | 0/2 | source/lib/core/track_registry.hpp |
| 100.0% 10/10 | 1/1 | source/lib/logger/logger.cpp |
| 100.0% 9/9 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/gpu/types.hpp |
| 100.0% 20/20 | 4/4 | source/lib/rocprof-sys/library/pmc/collectors/nic/perfetto_policy.hpp |
| 100.0% 2/2 | 0/2 | source/lib/rocprof-sys/library/pmc/common/types.hpp |
| 100.0% 41/41 | 5/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered_domain.hpp |
| 100.0% 11/11 | 1/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/callback_domain.hpp |
| 100.0% 27/27 | 3/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/domain_registry.hpp |
| 100.0% 33/33 | 3/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/marker_writer.hpp |
Distribution
| Range | Files |
|---|---|
| 0-20% | 187 |
| 20-50% | 12 |
| 50-80% | 37 |
| 80-100% | 103 |
E2E Tests
Code Coverage: e2e-tests
Lines: 🟡 63.9% — 23,805/37,232 across 339 files
Functions: 🟡 64.5% — 2,470/3,829
🔴 0-20% (49 files)
| Lines | Functions | File |
|---|---|---|
| 0.0% 0/10 | 0/2 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/byte_container_with_subtype.hpp |
| 0.0% 0/1 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/log_msg_buffer.h |
| 0.0% 0/1 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/sinks/ansicolor_sink.h |
| 0.0% 0/2 | 0/1 | build/coverage/include/profiler-hub/shared_types.hpp |
| 0.0% 0/102 | 0/6 | source/bin/rocprof-sys-avail/hw_counter_query.cpp |
| 0.0% 0/24 | 0/1 | source/lib/backends/amd_smi/wrapper.hpp |
| 0.0% 0/166 | 0/2 | source/lib/core/agent_info.hpp |
| 0.0% 0/84 | 0/5 | source/lib/core/cpu.cpp |
| 0.0% 0/1 | 0/1 | source/lib/core/cpu.hpp |
| 0.0% 0/54 | 0/6 | source/lib/core/dynamic_library.cpp |
| 0.0% 0/28 | 0/7 | source/lib/core/exception.cpp |
| 0.0% 0/160 | 0/12 | source/lib/core/gpu_metrics.cpp |
| 0.0% 0/8 | 0/3 | source/lib/core/sdk/tracing-config-deps.hpp |
| 0.0% 0/6 | 0/2 | source/lib/rocprof-sys-rt/src/RTsignal.c |
| 0.0% 0/11 | 0/2 | source/lib/rocprof-sys-rt/src/RTthread-x86-64.c |
| 0.0% 0/3 | 0/1 | source/lib/rocprof-sys-rt/src/RTthread.c |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/exit_gotcha.hpp |
| 0.0% 0/1 | 0/1 | source/lib/rocprof-sys/library/components/kill_gotcha.hpp |
| 0.0% 0/52 | 0/9 | source/lib/rocprof-sys/library/pmc/collectors/cpu/perfetto_policy.hpp |
| 0.0% 0/116 | 0/6 | source/lib/rocprof-sys/library/pmc/collectors/gpu/cache_policy.hpp |
| 0.0% 0/224 | 0/36 | source/lib/rocprof-sys/library/pmc/collectors/gpu/perfetto_policy.hpp |
| 0.0% 0/25 | 0/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu/sample.hpp |
| 0.0% 0/33 | 0/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/cache_policy.hpp |
| 0.0% 0/39 | 0/7 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/perfetto_policy.hpp |
| 0.0% 0/16 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/nic/sample.hpp |
| 0.0% 0/2 | 0/1 | source/lib/rocprof-sys/library/rocm.cpp |
| 0.0% 0/109 | 0/13 | source/lib/rocprof-sys/library/rocprofiler-sdk/counters.cpp |
| 0.0% 0/17 | 0/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/counters.hpp |
| 0.0% 0/129 | 0/9 | source/lib/rocprof-sys/library/rocprofiler-sdk/fwd.cpp |
| 0.0% 0/136 | 0/13 | source/lib/rocprof-sys/library/rocprofiler-sdk/rccl.cpp |
| 0.0% 0/108 | 0/10 | source/lib/rocprof-sys/library/rocprofiler-sdk/roctx_client.cpp |
| 0.0% 0/3 | 0/1 | source/lib/rocprof-sys/library/tracing/annotation.cpp |
| 0.0% 0/45 | 0/4 | source/lib/rocprof-sys/library/tracing/annotation.hpp |
| 0.0% 0/439 | 0/45 | source/python/libpyrocprofsys.cpp |
| 0.6% 1/169 | 1/13 | source/lib/core/perfetto.cpp |
| 4.8% 61/1264 | 12/89 | source/lib/rocprof-sys/library/rocprofiler-sdk.cpp |
| 4.9% 8/164 | 2/31 | source/lib/rocprof-sys/library/components/vaapi_gotcha.cpp |
| 6.9% 31/449 | 6/53 | build/coverage/_deps/fmt-src/include/fmt/chrono.h |
| 7.1% 1/14 | 0/1 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/primitive_iterator.hpp |
| 8.3% 2/24 | 1/2 | source/lib/core/amd_smi.cpp |
| 8.3% 3/36 | 1/9 | source/lib/rocprof-sys/library/rocprofiler-sdk/marker_writer.cpp |
| 8.8% 3/34 | 0/7 | source/lib/rocprof-sys/library/rocprofiler-sdk/fwd.hpp |
| 13.6% 38/280 | 7/31 | source/lib/rocprof-sys-rt/src/RTcommon.c |
| 13.8% 4/29 | 1/4 | source/lib/rocprof-sys-rt/src/RTheap-linux.c |
| 14.2% 30/212 | 4/22 | source/lib/rocprof-sys-rt/src/RTlinux.c |
| 16.2% 12/74 | 4/16 | source/lib/rocprof-sys/regions.cpp |
| 16.7% 4/24 | 0/2 | source/lib/backends/rocprofiler_sdk/wrapper.hpp |
| 18.0% 32/178 | 6/23 | source/lib/core/gpu.cpp |
| 18.8% 6/32 | 0/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/types.hpp |
🟠 20-50% (25 files)
| Lines | Functions | File |
|---|---|---|
| 23.2% 192/829 | 9/32 | source/lib/core/trace_cache/rocpd_processor.cpp |
| 23.6% 122/516 | 24/71 | source/lib/core/trace_cache/metadata_registry.cpp |
| 23.8% 19/80 | 3/5 | source/lib/core/perf.cpp |
| 27.8% 27/97 | 4/8 | source/lib/rocprof-sys-rt/src/RTposix.c |
| 31.4% 54/172 | 5/10 | source/lib/rocprof-sys/library/pmc/collectors/common/settings.hpp |
| 32.1% 52/162 | 7/17 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/json_sax.hpp |
| 33.5% 263/784 | 34/102 | source/lib/core/trace_cache/perfetto_processor.cpp |
| 35.1% 423/1206 | 43/96 | build/coverage/_deps/fmt-src/include/fmt/format.h |
| 35.7% 30/84 | 10/20 | source/lib/rocprof-sys/api.cpp |
| 35.7% 10/28 | 3/6 | source/lib/rocprof-sys/library/components/exit_gotcha.cpp |
| 37.1% 39/105 | 5/11 | source/lib/rocprof-sys/library/causal/components/blocking_gotcha.cpp |
| 38.5% 5/13 | 2/3 | source/lib/rocprof-sys/library/components/kill_gotcha.cpp |
| 38.8% 31/80 | 1/2 | source/bin/rocprof-sys-causal/rocprof-sys-causal.cpp |
| 40.3% 195/484 | 14/17 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/lexer.hpp |
| 40.5% 17/42 | 5/12 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/exceptions.hpp |
| 41.3% 26/63 | 7/12 | source/lib/core/agent_manager.cpp |
| 43.8% 21/48 | 6/9 | source/lib/core/perfetto/emitter.hpp |
| 44.4% 4/9 | 1/3 | source/lib/rocprof-sys/library/components/backtrace_timestamp.cpp |
| 45.0% 27/60 | 6/16 | source/lib/rocprof-sys/library/coverage/impl.hpp |
| 45.6% 72/158 | 3/7 | source/bin/rocprof-sys-instrument/info.hpp |
| 46.2% 42/91 | 2/6 | source/lib/rocprof-sys/timeout.cpp |
| 47.7% 31/65 | 3/4 | source/lib/rocprof-sys-rt/src/RTheap.c |
| 48.3% 14/29 | 5/7 | source/lib/core/perfetto/emitter.cpp |
| 48.5% 178/367 | 16/30 | source/lib/rocprof-sys/library/components/comm_data.cpp |
| 49.5% 54/109 | 12/30 | source/lib/rocprof-sys/library/tracing.hpp |
🟡 50-80% (66 files)
| Lines | Functions | File |
|---|---|---|
| 50.0% 8/16 | 2/4 | source/lib/binary/address_multirange.cpp |
| 50.0% 7/14 | 2/6 | source/lib/rocprof-sys-causal-api/causal_api.cpp |
| 50.0% 1/2 | 0/1 | source/lib/rocprof-sys/library/components/numa_gotcha.hpp |
| 50.0% 1/2 | 0/1 | source/lib/rocprof-sys/library/components/vaapi_gotcha.hpp |
| 50.0% 1/2 | 0/1 | source/lib/rocprof-sys/library/pmc/collectors/nic/types.hpp |
| 50.0% 1/2 | 0/1 | source/lib/rocprof-sys/library/thread_info.hpp |
| 50.0% 4/8 | 1/2 | source/lib/rocprof-sys/progress.cpp |
| 52.0% 13/25 | 2/3 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/gpu_perf_counter_traits.hpp |
| 52.4% 132/252 | 27/37 | source/lib/rocprof-sys/library/kokkosp.cpp |
| 53.2% 41/77 | 0/1 | source/lib/core/trace_cache/sample_processor.hpp |
| 55.0% 22/40 | 4/6 | build/coverage/_deps/fmt-src/include/fmt/ranges.h |
| 56.2% 172/306 | 9/11 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/output/serializer.hpp |
| 56.4% 44/78 | 8/19 | source/lib/rocprof-sys/library/components/numa_gotcha.cpp |
| 57.5% 23/40 | 1/3 | source/lib/common/invoke.hpp |
| 58.3% 14/24 | 3/8 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/output/output_adapters.hpp |
| 58.3% 7/12 | 0/4 | build/coverage/_deps/spdlog-src/include/spdlog/common.h |
| 59.8% 98/164 | 15/20 | source/lib/rocprof-sys/library/pmc/sampler.cpp |
| 60.0% 63/105 | 5/9 | source/bin/common/argument_registration.hpp |
| 60.0% 3/5 | 1/1 | source/lib/core/agent.hpp |
| 60.7% 130/214 | 12/30 | source/lib/rocprof-sys/library/components/backtrace_metrics.cpp |
| 61.8% 42/68 | 5/8 | source/lib/rocprof-sys/library/components/fork_gotcha.cpp |
| 62.5% 50/80 | 13/18 | source/lib/core/binary/address_range.cpp |
| 62.8% 49/78 | 4/5 | source/lib/core/trace_cache/discovery.cpp |
| 63.1% 70/111 | 7/10 | source/lib/core/progress/bar.cpp |
| 63.9% 161/252 | 24/32 | source/lib/rocprof-sys/library/perf.cpp |
| 65.3% 311/476 | 23/39 | build/coverage/_deps/fmt-src/include/fmt/base.h |
| 65.4% 34/52 | 4/4 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/from_json.hpp |
| 66.0% 289/438 | 34/41 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/json.hpp |
| 66.1% 37/56 | 3/4 | source/lib/core/mproc.cpp |
| 66.2% 47/71 | 5/5 | source/lib/rocprof-sys/library/pmc/collectors/gpu/gpu_traits.hpp |
| 66.4% 87/131 | 4/5 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/parser.hpp |
| 66.9% 79/118 | 15/20 | source/lib/rocprof-sys/library/runtime.cpp |
| 68.8% 22/32 | 3/8 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/types.hpp |
| 69.0% 462/670 | 33/45 | source/bin/rocprof-sys-instrument/details.cpp |
| 69.3% 374/540 | 40/85 | source/lib/rocprof-sys-dl/dl.cpp |
| 70.2% 40/57 | 4/6 | source/lib/core/perfetto.hpp |
| 70.3% 64/91 | 5/7 | source/bin/rocprof-sys-instrument/function_signature.cpp |
| 71.1% 69/97 | 8/8 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/iter_impl.hpp |
| 71.4% 10/14 | 1/2 | source/lib/core/containers/aligned_static_vector.hpp |
| 71.4% 35/49 | 5/8 | source/lib/rocprof-sys/library/causal/components/unblocking_gotcha.cpp |
| 71.8% 122/170 | 16/22 | source/lib/rocprof-sys/library/components/mpi_gotcha.cpp |
| 72.2% 13/18 | 2/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/roctx_client.hpp |
| 72.7% 24/33 | 5/7 | source/lib/rocprof-sys/library/causal/components/causal_gotcha.cpp |
| 73.2% 699/955 | 46/58 | source/lib/rocprof-sys/library/sampling.cpp |
| 73.7% 28/38 | 6/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/iterators/iteration_proxy.hpp |
| 74.0% 409/553 | 30/33 | source/lib/rocprof-sys/library/causal/data.cpp |
| 74.1% 226/305 | 16/17 | source/bin/common/preset_registry.cpp |
| 74.4% 32/43 | 3/3 | source/lib/core/perfetto/sinks/file_output.cpp |
| 74.5% 35/47 | 4/6 | source/lib/rocprof-sys/library/pmc/collectors/cpu/cpu_traits.hpp |
| 75.0% 15/20 | 5/5 | source/bin/rocprof-sys-instrument/function_signature.hpp |
| 75.0% 3/4 | 0/1 | source/lib/backends/amd_smi/nic_types.hpp |
| 75.0% 18/24 | 4/5 | source/lib/rocprof-sys/library/causal/sample_data.cpp |
| 75.0% 3/4 | 1/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/callback/code_object.hpp |
| 75.4% 389/516 | 30/40 | source/bin/common/json_config.cpp |
| 75.4% 1158/1535 | 51/87 | source/bin/rocprof-sys-instrument/rocprof-sys-instrument.cpp |
| 75.6% 90/119 | 11/12 | source/lib/core/trace_cache/post_processor.cpp |
| 76.5% 407/532 | 40/41 | source/bin/rocprof-sys-instrument/module_function.cpp |
| 76.6% 49/64 | 5/6 | source/bin/rocprof-sys-instrument/log.cpp |
| 76.8% 53/69 | 5/6 | source/lib/binary/link_map.cpp |
| 77.0% 322/418 | 34/36 | source/bin/common/common_utils.cpp |
| 77.3% 17/22 | 3/3 | source/lib/common/static_object.hpp |
| 77.9% 113/145 | 26/31 | source/lib/rocprof-sys/library/thread_data.hpp |
| 78.0% 209/268 | 23/25 | source/lib/rocprof-sys/library/causal/sampling.cpp |
| 79.1% 201/254 | 24/28 | source/bin/common/tool_runner.cpp |
| 79.2% 19/24 | 2/2 | source/lib/core/node_info.cpp |
| 79.9% 211/264 | 20/22 | source/bin/rocprof-sys-instrument/internal_libs.cpp |
🟢 80-100% (199 files)
| Lines | Functions | File |
|---|---|---|
| 80.0% 4/5 | 0/1 | source/bin/rocprof-sys-instrument/log.hpp |
| 80.0% 80/100 | 10/10 | source/lib/core/perfetto/engine_impl.hpp |
| 80.3% 61/76 | 9/10 | source/lib/rocprof-sys/library/pmc/device_providers/rocprofiler_sdk/provider.hpp |
| 81.1% 1397/1722 | 275/301 | source/lib/core/config.cpp |
| 81.2% 69/85 | 17/22 | source/lib/rocprof-sys/library/causal/components/progress_point.cpp |
| 81.2% 13/16 | 1/1 | source/lib/rocprof-sys-dl/main.c |
| 81.4% 131/161 | 24/27 | source/lib/rocprof-sys/library/thread_info.cpp |
| 81.4% 175/215 | 21/24 | source/bin/rocprof-sys-avail/common.cpp |
| 82.0% 41/50 | 5/5 | source/lib/core/perfetto/cached_perfetto_session.cpp |
| 83.1% 556/669 | 35/40 | source/lib/rocprof-sys/library.cpp |
| 83.3% 25/30 | 3/6 | source/lib/core/trace_cache/metadata_registry.hpp |
| 83.4% 131/157 | 12/12 | source/bin/rocprof-sys-instrument/rocprof-sys-instrument.hpp |
| 84.2% 16/19 | 3/5 | source/lib/rocprof-sys/library/components/comm_data.hpp |
| 84.3% 86/102 | 8/9 | source/lib/binary/dwarf_entry.cpp |
| 84.4% 54/64 | 4/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/page_migrate.hpp |
| 84.5% 321/380 | 18/29 | source/lib/rocprof-sys/library/causal/experiment.cpp |
| 84.7% 83/98 | 4/4 | source/lib/core/perfetto/sinks/single_file_sink.cpp |
| 84.8% 134/158 | 17/18 | source/lib/binary/symbol.cpp |
| 84.8% 56/66 | 8/8 | source/lib/rocprof-sys/library/pmc/collectors/base/collector.hpp |
| 85.1% 74/87 | 10/12 | source/lib/logger/logger.hpp |
| 85.4% 76/89 | 14/16 | source/lib/rocprof-sys/library/causal/delay.cpp |
| 85.5% 47/55 | 4/4 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/device.hpp |
| 85.7% 6/7 | 1/1 | source/lib/core/perfetto/sinks/append_mode.hpp |
| 86.0% 80/93 | 5/7 | source/bin/rocprof-sys-instrument/module_function.hpp |
| 87.0% 47/54 | 3/3 | source/lib/core/trace_cache/cache_manager.cpp |
| 87.5% 391/447 | 35/47 | source/bin/rocprof-sys-causal/impl.cpp |
| 87.5% 42/48 | 4/5 | source/lib/core/output_file_registry.cpp |
| 87.6% 99/113 | 10/11 | source/lib/rocprof-sys/library/tracing.cpp |
| 88.1% 251/285 | 29/33 | source/lib/common/environment.hpp |
| 88.8% 127/143 | 10/10 | source/lib/rocprof-sys/library/coverage.cpp |
| 89.1% 49/55 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_page_migrate.hpp |
| 89.2% 223/250 | 23/33 | source/lib/core/sdk/tracing-config.hpp |
| 89.3% 756/847 | 58/73 | source/lib/core/argparse.cpp |
| 89.8% 220/245 | 15/16 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/to_chars.hpp |
| 90.0% 9/10 | 1/1 | source/lib/binary/scope_filter.cpp |
| 90.0% 54/60 | 4/4 | source/lib/core/trace_cache/buffer_storage.cpp |
| 90.0% 9/10 | 1/1 | source/lib/rocprof-sys/library/thread_deleter.cpp |
| 90.1% 64/71 | 9/11 | source/lib/rocprof-sys/library/components/backtrace.cpp |
| 90.1% 64/71 | 7/10 | source/lib/rocprof-sys/library/components/callchain.cpp |
| 90.2% 240/266 | 21/30 | source/lib/core/trace_cache/sample_type.hpp |
| 90.4% 235/260 | 11/12 | source/bin/rocprof-sys-avail/generate_config.cpp |
| 90.5% 38/42 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_page_fault.hpp |
| 90.5% 38/42 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_queue.hpp |
| 90.7% 243/268 | 19/20 | source/lib/core/trace_cache/unified_memory_processor.cpp |
| 90.9% 10/11 | 1/2 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/json_ref.hpp |
| 90.9% 20/22 | 2/2 | source/lib/common/setup.hpp |
| 90.9% 40/44 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/queue.hpp |
| 91.3% 21/23 | 4/5 | source/lib/core/containers/static_vector.hpp |
| 91.3% 306/335 | 18/20 | source/lib/rocprof-sys/library/components/pthread_create_gotcha.cpp |
| 91.5% 107/117 | 5/5 | source/lib/binary/analysis.cpp |
| 91.5% 43/47 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_unmap_from_gpu.hpp |
| 91.7% 11/12 | 2/2 | source/lib/core/perfetto/session_backend.hpp |
| 91.9% 102/111 | 8/8 | source/lib/rocprof-sys/library/pmc/collectors/cpu/device.hpp |
| 92.2% 47/51 | 7/7 | source/lib/core/control/clocks/posix.hpp |
| 92.6% 163/176 | 9/9 | source/lib/rocprof-sys/library/pmc/collectors/gpu/device.hpp |
| 92.8% 873/941 | 41/48 | source/bin/rocprof-sys-avail/avail.cpp |
| 92.9% 13/14 | 2/2 | source/lib/rocprof-sys/library/pmc/device_providers/procfs/provider.hpp |
| 93.1% 27/29 | 3/5 | source/lib/rocprof-sys/library/coverage.hpp |
| 93.2% 68/73 | 7/8 | source/lib/core/trace_cache/buffer_storage.hpp |
| 93.3% 111/119 | 16/17 | source/lib/core/perfetto/engine.cpp |
| 93.3% 14/15 | 3/3 | source/lib/core/perfetto/sinks/per_pid_file_sink.cpp |
| 93.4% 239/256 | 28/32 | source/lib/rocprof-sys/library/components/category_region.hpp |
| 93.4% 113/121 | 11/11 | source/lib/rocprof-sys/library/process_sampler.cpp |
| 93.9% 31/33 | 6/6 | source/lib/core/mpi.hpp |
| 94.1% 32/34 | 7/9 | source/lib/rocprof-sys/library/components/pthread_gotcha.cpp |
| 94.3% 148/157 | 12/14 | source/lib/backends/procfs/backend.hpp |
| 94.3% 133/141 | 30/32 | source/lib/backends/rocprofiler_sdk/backend.hpp |
| 94.4% 17/18 | 3/3 | source/bin/rocprof-sys-avail/component_categories.hpp |
| 94.7% 36/38 | 7/7 | build/coverage/_deps/spdlog-src/include/spdlog/logger.h |
| 95.0% 19/20 | 4/6 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/string_concat.hpp |
| 95.1% 116/122 | 15/16 | source/lib/common/path.hpp |
| 95.1% 58/61 | 7/8 | source/lib/rocprof-sys/library/pmc/collectors/cpu/sample.hpp |
| 95.4% 62/65 | 1/5 | source/lib/core/trace_cache/cacheable.hpp |
| 95.4% 186/195 | 16/18 | source/lib/rocprof-sys/library/components/shmem_gotcha.hpp |
| 95.7% 44/46 | 10/12 | source/lib/core/containers/stable_vector.hpp |
| 95.7% 45/47 | 2/2 | source/lib/core/trace_cache/storage_parser.hpp |
| 95.8% 23/24 | 2/4 | source/lib/common/pci_bdf.hpp |
| 95.9% 162/169 | 19/22 | source/lib/rocprof-sys/library/components/ucx_gotcha.hpp |
| 95.9% 70/73 | 6/6 | source/lib/rocprof-sys/library/causal/components/backtrace.cpp |
| 96.2% 25/26 | 1/2 | source/lib/common/delimit.hpp |
| 96.6% 56/58 | 7/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/conversions/to_json.hpp |
| 96.7% 59/61 | 9/9 | source/lib/core/utility.hpp |
| 96.8% 30/31 | 3/4 | source/lib/rocprof-sys/library/pmc/collectors/gpu_perf_counter/sample.hpp |
| 96.8% 151/156 | 16/16 | source/lib/rocprof-sys/library/rocprofiler-sdk/domain_service.hpp |
| 96.9% 62/64 | 14/14 | source/lib/core/trace_cache/data_types.cpp |
| 96.9% 31/32 | 2/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/event_dropped_events.hpp |
| 97.0% 32/33 | 4/4 | source/lib/core/perfetto/counter_track.hpp |
| 97.3% 73/75 | 6/6 | source/lib/core/common_types.hpp |
| 97.3% 73/75 | 3/3 | source/lib/core/perfetto/packet_framing.hpp |
| 97.4% 38/39 | 3/3 | source/lib/core/utility.cpp |
| 97.5% 39/40 | 6/7 | source/lib/core/trace_cache/rocpd_helpers.hpp |
| 97.7% 85/87 | 11/12 | source/lib/core/control/triggers/roctx.cpp |
| 97.8% 44/45 | 3/3 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered/kfd/page_fault.hpp |
| 97.8% 45/46 | 7/7 | source/lib/rocprof-sys/library/rocprofiler-sdk/rccl_internal.hpp |
| 97.9% 47/48 | 3/3 | source/lib/rocprof-sys/library/pmc/collectors/nic/device.hpp |
| 98.0% 147/150 | 9/10 | source/lib/common/md5sum.hpp |
| 98.1% 51/52 | 7/7 | source/lib/rocprof-sys/library/pmc/device_providers/amd_smi/provider.hpp |
| 98.2% 56/57 | 6/8 | source/lib/rocprof-sys/library/components/pthread_mutex_gotcha.hpp |
| 98.4% 60/61 | 10/11 | source/lib/common/string_utility.hpp |
| 98.7% 78/79 | 15/16 | source/lib/backends/amd_smi/backend.hpp |
| 99.1% 115/116 | 19/19 | source/lib/core/control/session.cpp |
| 100.0% 14/14 | 1/1 | build/coverage/_deps/fmt-src/include/fmt/ostream.h |
| 100.0% 6/6 | 0/3 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/adl_serializer.hpp |
| 100.0% 38/38 | 6/7 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/input_adapters.hpp |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/nlohmann_json-src/include/nlohmann/detail/input/position_t.hpp |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/backtracer.h |
| 100.0% 2/2 | 0/1 | build/coverage/_deps/spdlog-src/include/spdlog/details/circular_q.h |
| 100.0% 1/1 | 0/1 | build/coverage/include/profiler-hub/reader_types.hpp |
| 100.0% 10/10 | 1/2 | build/coverage/include/profiler-hub/writer_types.hpp |
| 100.0% 31/31 | 4/5 | source/bin/common/common_utils.hpp |
| 100.0% 1/1 | 0/1 | source/bin/common/json_config.hpp |
| 100.0% 59/59 | 6/6 | source/bin/rocprof-sys-avail/avail.hpp |
| 100.0% 39/39 | 2/2 | source/bin/rocprof-sys-avail/get_availability.hpp |
| 100.0% 10/10 | 1/1 | source/bin/rocprof-sys-avail/get_categories.hpp |
| 100.0% 4/4 | 1/1 | source/bin/rocprof-sys-avail/info_type.cpp |
| 100.0% 9/9 | 0/1 | source/bin/rocprof-sys-avail/info_type.hpp |
| 100.0% 2/2 | 1/1 | source/bin/rocprof-sys-run/rocprof-sys-run.cpp |
| 100.0% 2/2 | 1/1 | source/bin/rocprof-sys-sample/rocprof-sys-sample.cpp |
| 100.0% 107/107 | 13/14 | source/lib/backends/amd_smi/device.hpp |
| 100.0% 7/7 | 0/1 | source/lib/backends/amd_smi/gpu_types.hpp |
| 100.0% 1/1 | 0/1 | source/lib/backends/rocprofiler_sdk/types.hpp |
| 100.0% 9/9 | 0/1 | source/lib/binary/address_multirange.hpp |
| 100.0% 7/7 | 1/1 | source/lib/binary/binary_info.hpp |
| 100.0% 1/1 | 0/1 | source/lib/binary/dwarf_entry.hpp |
| 100.0% 3/3 | 0/1 | source/lib/binary/link_map.hpp |
| 100.0% 5/5 | 1/2 | source/lib/binary/scope_filter.hpp |
| 100.0% 8/8 | 7/8 | source/lib/binary/symbol.hpp |
| 100.0% 9/9 | 2/2 | source/lib/common/env_vars.hpp |
| 100.0% 12/12 | 1/1 | source/lib/common/join.hpp |
| 100.0% 23/23 | 5/6 | source/lib/common/synchronized.hpp |
| 100.0% 14/14 | 2/4 | source/lib/common/units/data_size.hpp |
| 100.0% 11/11 | 2/3 | source/lib/common/units/frequency.hpp |
| 100.0% 11/11 | 2/3 | source/lib/common/units/power.hpp |
| 100.0% 5/5 | 0/3 | source/lib/common/units/quantity.hpp |
| 100.0% 8/8 | 0/2 | source/lib/common/version.hpp |
| 100.0% 2/2 | 1/2 | source/lib/core/agent_manager.hpp |
| 100.0% 5/5 | 0/2 | source/lib/core/argparse.hpp |
| 100.0% 9/9 | 1/3 | source/lib/core/binary/address_range.hpp |
| 100.0% 21/21 | 6/6 | source/lib/core/categories.cpp |
| 100.0% 11/11 | 11/11 | source/lib/core/components/fwd.hpp |
| 100.0% 26/26 | 3/3 | source/lib/core/config.hpp |
| 100.0% 55/55 | 6/7 | source/lib/core/config/trace_period_config.hpp |
| 100.0% 11/11 | 1/3 | source/lib/core/containers/c_array.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/containers/operators.hpp |
| 100.0% 19/19 | 4/4 | source/lib/core/control/clocks/steady.cpp |
| 100.0% 2/2 | 2/2 | source/lib/core/control/clocks/steady.hpp |
| 100.0% 15/15 | 3/5 | source/lib/core/control/session.hpp |
| 100.0% 3/3 | 0/2 | source/lib/core/control/triggers/roctx.hpp |
| 100.0% 47/47 | 7/7 | source/lib/core/control/triggers/time_window.hpp |
| 100.0% 43/43 | 7/11 | source/lib/core/demangler.hpp |
| 100.0% 2/2 | 2/2 | source/lib/core/node_info.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/output_file_registry.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/category_registry.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/engine.hpp |
| 100.0% 7/7 | 0/1 | source/lib/core/perfetto/sinks/file_output.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/perfetto/sinks/per_pid_file_sink.hpp |
| 100.0% 2/2 | 0/1 | source/lib/core/perfetto/sinks/single_file_sink.hpp |
| 100.0% 2/2 | 0/1 | source/lib/core/perfetto/sinks/trace_sink.hpp |
| 100.0% 1/1 | 0/1 | source/lib/core/progress/bar.hpp |
| 100.0% 6/6 | 2/2 | source/lib/core/progress/tracker.cpp |
| 100.0% 1/1 | 0/1 | source/lib/core/progress/tracker.hpp |
| 100.0% 85/85 | 11/12 | source/lib/core/state.hpp |
| 100.0% 7/7 | 1/3 | source/lib/core/trace_cache/cache_manager.hpp |
| 100.0% 4/4 | 0/3 | source/lib/core/trace_cache/data_types.hpp |
| 100.0% 9/9 | 3/3 | source/lib/core/trace_cache/type_registry.hpp |
| 100.0% 24/24 | 4/5 | source/lib/core/trace_cache/unified_memory_processor.hpp |
| 100.0% 5/5 | 2/2 | source/lib/core/track_registry.cpp |
| 100.0% 4/4 | 0/2 | source/lib/core/track_registry.hpp |
| 100.0% 10/10 | 1/1 | source/lib/logger/logger.cpp |
| 100.0% 7/7 | 1/2 | source/lib/rocprof-sys/library/causal/components/backtrace.hpp |
| 100.0% 23/23 | 2/3 | source/lib/rocprof-sys/library/causal/components/progress_point.hpp |
| 100.0% 3/3 | 1/2 | source/lib/rocprof-sys/library/causal/experiment.hpp |
| 100.0% 4/4 | 1/1 | source/lib/rocprof-sys/library/causal/selected_entry.cpp |
| 100.0% 5/5 | 2/3 | source/lib/rocprof-sys/library/causal/selected_entry.hpp |
| 100.0% 1/1 | 1/1 | source/lib/rocprof-sys/library/components/backtrace.hpp |
| 100.0% 11/11 | 1/2 | source/lib/rocprof-sys/library/components/backtrace_metrics.hpp |
| 100.0% 4/4 | 0/2 | source/lib/rocprof-sys/library/components/backtrace_timestamp.hpp |
| 100.0% 1/1 | 1/1 | source/lib/rocprof-sys/library/components/callchain.hpp |
| 100.0% 8/8 | 2/2 | source/lib/rocprof-sys/library/components/ensure_storage.hpp |
| 100.0% 1/1 | 0/1 | source/lib/rocprof-sys/library/components/fork_gotcha.hpp |
| 100.0% 2/2 | 0/1 | source/lib/rocprof-sys/library/components/mpi_gotcha.hpp |
| 100.0% 533/533 | 12/12 | source/lib/rocprof-sys/library/components/mpip.hpp |
| 100.0% 5/5 | 0/1 | source/lib/rocprof-sys/library/components/pthread_create_gotcha.hpp |
| 100.0% 24/24 | 1/2 | source/lib/rocprof-sys/library/components/pthread_mutex_gotcha_policy.hpp |
| 100.0% 11/11 | 0/3 | source/lib/rocprof-sys/library/perf.hpp |
| 100.0% 14/14 | 0/1 | source/lib/rocprof-sys/library/pmc/collectors/common/collector_slice.hpp |
| 100.0% 66/66 | 5/5 | source/lib/rocprof-sys/library/pmc/collectors/cpu/cache_policy.hpp |
| 100.0% 3/3 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/cpu/types.hpp |
| 100.0% 9/9 | 0/2 | source/lib/rocprof-sys/library/pmc/collectors/gpu/types.hpp |
| 100.0% 20/20 | 4/4 | source/lib/rocprof-sys/library/pmc/collectors/nic/perfetto_policy.hpp |
| 100.0% 2/2 | 0/2 | source/lib/rocprof-sys/library/pmc/common/types.hpp |
| 100.0% 15/15 | 2/3 | source/lib/rocprof-sys/library/process_sampler.hpp |
| 100.0% 41/41 | 5/6 | source/lib/rocprof-sys/library/rocprofiler-sdk/buffered_domain.hpp |
| 100.0% 11/11 | 1/2 | source/lib/rocprof-sys/library/rocprofiler-sdk/callback_domain.hpp |
| 100.0% 27/27 | 3/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/domain_registry.hpp |
| 100.0% 33/33 | 3/4 | source/lib/rocprof-sys/library/rocprofiler-sdk/marker_writer.hpp |
| 100.0% 2/2 | 0/1 | source/lib/rocprof-sys/library/runtime.hpp |
| 100.0% 10/10 | 3/3 | source/lib/rocprof-sys/library/thread_data_growth.hpp |
| 100.0% 5/5 | 1/1 | source/lib/rocprof-sys/library/thread_deleter.hpp |
Distribution
| Range | Files |
|---|---|
| 0-20% | 49 |
| 20-50% | 25 |
| 50-80% | 66 |
| 80-100% | 199 |
Contributor
|
This pull request has been inactive for 25 days and will be marked as stale. If you would like to keep this PR open, please:
This PR will be automatically closed in 5 days if no further activity occurs. |
Contributor
|
This pull request has been automatically closed due to inactivity (30 days with no updates). If you'd like to continue working on this, feel free to reopen the PR or create a new one. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Extends the CPU-only host-ASAN audit of #11582 to
rocprofiler-systems, admitting therocprof-sys-unit-testsaggregate binary as a device-free payload.Companion to ROCm/TheRock#8154. Related: ROCm/TheRock#7202.
Why this component
rocprofiler-systemsis currently one of TheRock#8154's explicit deferrals, in the "lacks a safe packaged CPU seam" category. That is precisely the gap here:rocprof-sys-unit-testsis marked@pytest.mark.build_onlyintests/pytest/test_units.py.install()rule, so it exists only in a build tree.Observed in rockrel run 35179845680,
Test rocprofiler-systems (shard 1/1) (gfx110X-all), which is otherwise green at 527/527:1576 host-side test cases currently execute nowhere in CI. They need no GPU, so the CPU-only lane is the natural home for them rather than competing for sandbox GPU capacity.
Audit
Every object library in
UNIT_TEST_OBJECTSwas resolved to its explicit source list (not by directory walk, since several targets share a directory) and eachTEST/TEST_Fcase enumerated:lib-common-testsrocprofiler-sdk-components-unit-teststrace-cache-testslib-components-testsamd-smi-backend-testspmc-gpu-collector-testsbin-common-testsrocprofiler-sdk-backend-testslib-common-units-testsbuffered-domains-unit-testspmc-cpu-collector-teststracing-config-testspmc-nic-collector-testsprocfs-backend-testsperfetto-sinks-testslogger-testsprogress-testspacket-framing-testsperfetto-engine-testspmc-sdk-pmc-collector-testsparse-numeric-range-testsrank-passes-filter-testsstate-testscontrol-posix-clock-testspmc-amd-smi-provider-teststrace-period-config-testsdemangler-testsoutput-format-testscontrol-session-scope-teststrack-registry-testspmc-common-testscallback-domains-unit-testsemission-handshake-tls-contract-testscontrol-steady-clock-testsTotal 1576 unique cases, no duplicates across targets.
Device dependence. No test source opens
/dev/kfdor/dev/dri, and none calls into HIP, HSA, amd-smi or the rocprofiler-sdk runtime. Names that suggest otherwise were checked individually and are host-only:pmc-gpu-collector-testsandpmc-sdk-pmc-collector-testsdrivemock_driver/mock_driver_factory, never a real device.rocprofiler-sdk-components-unit-testsincludesrocprofiler-sdk/fwd.handcallback_tracing.hfor types only, and usesmock_marker_policy.amd-smi-backend-testsexercises the backend abstraction, notamdsmi_init.hip_runtimein the tree are string literals in JSON/config fixtures (test_json_config.cpp:107,test_tracing_config.cpp:508).The binary also already avoids the device-initialising path by construction:
source/tests/CMakeLists.txtdeliberately refuses to linkrocprofiler-systems-object-library, and enforces that with aFATAL_ERROR.Exclusions. Two parametrized suites are excluded, recorded in the manifest under
parametrized_requires_runtime_expansion:parse_memory_op_test.lookup(trace-cache-tests)rccl_type_size_test.returns_correct_size(rocprofiler-sdk-components-unit-tests)TEST_Pinstantiated names cannot be derived from source, so admitting them would mean guessing at the inventory. They can be added once a run enumerates them.Changes
ROCPROFSYS_INSTALL_HOST_ASAN_TESTSoption, defaultOFF, which hard-fails unlessROCPROFSYS_INSTALL_TESTINGis also set.rocprof-sys-unit-testsandhost_asan_tests.jsontoshare/rocprofiler-systems/tests/host-asan, mirroring howrocprof-sys-capchkis already packaged.-shared-libasanand setsINSTALL_RPATHto the runtime directory.The
-shared-libasanpart is load-bearing for the admission model. This project's sanitizer support applies a bare-fsanitize=address, which for an executable links the runtime statically and leaves noDT_NEEDEDentry — so a consumer has nothing to verify and could be fooled by an inheritedLD_PRELOAD. Requesting shared linkage explicitly makes the dependency checkable.The runtime directory is resolved by asking the compiler, trying both
libclang_rt.asan.so(per-target runtime layout) andlibclang_rt.asan-<arch>.so(legacy layout), since TheRock#8077 changed which one is present. This matches the fallback added in TheRock#8268.Nothing changes unless the new option is enabled; the default build and the existing GPU lanes are untouched.
Validation status
Not yet built or executed — the counts above are derived statically from source and have not been confirmed by a run. They should be treated as the proposed inventory, not proven output. Specifically still to confirm:
--gtest_list_tests.DT_NEEDEDon the shared ASAN runtime./dev/kfdand/dev/dri.Point 4 is worth flagging: because these tests have never run in CI, this is the first ASAN exposure they will get, so genuine findings are plausible.
gersemiand the repo pre-commit hooks pass.Companion work needed in TheRock
Not included here. TheRock#8154 would need a
rocprofiler-systemsentry in its host-ASAN phase map plus a runner that reads this manifest, in the shape of the existingtest_aqlprofile_host_asan.py.Draft until validated.