Repository navigation
[hip-tests] Add level_default all remove cmd options - #11937
amilanov-amd merged 9 commits into
Conversation
✅ All Policy Checks Passed
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
2f6f017 to
3ff094e
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Critical parser compatibility and standalone build/linking issues, plus a stress-level configuration issue, remain unresolved.
Review effort: Lite
Findings: 5
Open (5)
Scalar level values now cause a TypeError during generation · New Standalone builds fail without parameter implementation and generated header · New Unconditional parameter call breaks documented standalone builds · New Out-of-line parameter dependency breaks standalone test binaries · New Standalone builds fail due to missing parameter dependency · New
What changed in this PR
Migrates HIP test workload controls from CLI options to YAML-defined level parameters, adding reusable default, stress, and all-level presets.
Changes:
- Updates atomic, threadfence, cooperative-group, math, and performance tests.
- Adds level-specific parameter APIs and configuration generation.
- Replaces legacy level references and removes migrated CLI options.
| File | Summary |
|---|---|
projects/hip-tests/catch/unit/threadfence/__threadfence.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/threadfence/__threadfence_system.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/threadfence/__threadfence_block.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/math/math_common.hh |
Uses level-based math parameters. |
projects/hip-tests/catch/unit/cooperativeGrps/thread_block.cc |
Uses configured iterations. |
projects/hip-tests/catch/unit/cooperativeGrps/thread_block_tile.cc |
Uses configured iterations. |
projects/hip-tests/catch/unit/cooperativeGrps/cooperative_groups_common.hh |
Removes obsolete CLI dependency. |
projects/hip-tests/catch/unit/cooperativeGrps/coalesced_group.cc |
Uses configured iterations. |
projects/hip-tests/catch/unit/cooperativeGrps/coalesced_group_tiled_partition.cc |
Uses configured iterations. |
projects/hip-tests/catch/unit/atomics/unsafeAtomicMin.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/unsafeAtomicMax.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/unsafeAtomicAdd.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/safeAtomicMin.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/safeAtomicMax.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/safeAtomicAdd.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/min_max_common.hh |
Updates parameter dependency. |
projects/hip-tests/catch/unit/atomics/bitwise_common.hh |
Updates parameter dependency. |
projects/hip-tests/catch/unit/atomics/atomicXor.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicSub.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicOr.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicMin.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicMax.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicInc.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicExch.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicExch_common.hh |
Updates parameter dependency. |
projects/hip-tests/catch/unit/atomics/atomicDec.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicCAS.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicAnd.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/atomicAdd.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/arithmetic_common.hh |
Updates parameter dependency. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_xor.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_or.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_min.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_max.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_and.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_fetch_add.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_exchange.cc |
Uses level-based iterations. |
projects/hip-tests/catch/unit/atomics/__hip_atomic_compare_exchange_strong.cc |
Uses level-based iterations. |
projects/hip-tests/catch/performance/scenarios/memory/hipPerfBufferCopySpeedP2P.cc |
Uses configured iterations. |
projects/hip-tests/catch/performance/scenarios/memory/hipPerfBufferCopySpeedAll2All.cc |
Removes obsolete CLI dependency. |
projects/hip-tests/catch/performance/scenarios/memory/hipPerfBufferCopyInterGpuPerformance.cc |
Removes obsolete CLI dependency. |
projects/hip-tests/catch/include/warp_common.hh |
Removes obsolete CLI dependency. |
projects/hip-tests/catch/include/performance_common.hh |
Uses configured iterations and warmups. |
projects/hip-tests/catch/include/hip_test_params.hh |
Adds level parameter APIs. |
projects/hip-tests/catch/include/cmd_options.hh |
Removes migrated workload options. |
projects/hip-tests/catch/hipTestMain/main.cc |
Removes migrated CLI arguments. |
projects/hip-tests/catch/hipTestMain/hip_test_params.cc |
Implements parameter accessors. |
projects/hip-tests/catch/config/parse_config.py |
Supports composite levels and parameters. |
projects/hip-tests/catch/config/configs/unit/warp.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/vulkan_interop.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/vector_types.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/threadfence.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/syncthreads.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/synchronization.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/surface.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/streamperthread.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/sanityTests.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/rtc.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/printf.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/p2p.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/occupancy.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/multiThread.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/library.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/launchBounds.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/kernel.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/hrr.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/hip_specific.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/gl_interop.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/gcc.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/g++.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/executionctx.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/executionControl.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/event.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/errorHandling.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/env.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/dynamicLoading.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/device_memory.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/context.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/complex.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/compiler.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/cluster.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/clock.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/channelDescriptor.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/callback.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/c_compilation.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/unit/assertion.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/TypeQualifiers.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/stress.yaml |
Applies default and stress levels. |
projects/hip-tests/catch/config/configs/multiproc.yaml |
Uses updated level presets. |
projects/hip-tests/catch/config/configs/definitions.yaml |
Defines levels and parameters. |
projects/hip-tests/catch/config/configs/ABM.yaml |
Uses updated level presets. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
1519352 to
87f2c79
Compare
|
@mangupta please re-review |
|
🤖 AI-assisted pre-review (for @mangupta) Re-reviewed the updated head ( |
87f2c79 to
da03ba3
Compare
|
🤖 AI-assisted pre-review (for @mangupta) Re-reviewed the updated head ( |
da03ba3 to
3de7178
Compare
|
🤖 AI-assisted pre-review (for @mangupta) Re-reviewed the updated head ( |
3de7178 to
0300e07
Compare
|
🤖 AI-assisted pre-review (for @mangupta) Re-reviewed the updated head ( |
TheRock Submodule Bump ActivityNewest first
|
## Motivation There is a need to define test levels without any constraints/implicit level defining. This patch allows cases to define any level. Added level_default, level_all and level_stress to define most common level combinations. Some of the cli arguments can be/should be defined as test parameters, so that their values can be implicitly used without specifically defining them. This patch removes such arguments and defines them as test parameters. ## Technical Details Expanded the yaml configurations. Replaced level_2 cases with level_default. Removed cli arguments and defined them as test parameters. ## Issue Tracking JIRA ID: AIRUNTIME-645 ## Test Plan Ensure build passes. All tests pass ## Test Result Local build passed, local tests pass ## Submission Checklist - [x] Look over the contributing guidelines at https://github.com/ROCm/rocm-systems/blob/develop/CONTRIBUTING.md.

Motivation
There is a need to define test levels without any constraints/implicit level defining. This patch allows cases to define any level. Added level_default, level_all and level_stress to define most common level combinations. Some of the cli arguments can be/should be defined as test parameters, so that their values can be implicitly used without specifically defining them. This patch removes such arguments and defines them as test parameters.
Technical Details
Expanded the yaml configurations. Replaced level_2 cases with level_default. Removed cli arguments and defined them as test parameters.
Issue Tracking
JIRA ID: AIRUNTIME-645
Test Plan
Ensure build passes. All tests pass
Test Result
Local build passed, local tests pass
Submission Checklist