[SWDEV-518561] Separate Driver Reload from Memory Partition Sets (#582)
Description:
- Added a new API `amdsmi_gpu_driver_reload()` to reload the AMD GPU driver independently.
- Updated CLI (`sudo amd-smi reset -r`) and Python bindings to support driver reload functionality.
- Removed automatic driver reload from `amdsmi_set_gpu_memory_partition()` and `amdsmi_set_gpu_memory_partition_mode()`.
- Enhanced CLI and test cases to allow users to control when the driver reload occurs.
- Updated documentation and changelog to reflect the new driver reload process.
- Improved error handling and logging for driver reload operations.
- Added progress bar and user confirmation prompts for driver reload commands.
* Update build/test strategy to only allow one test execution at a time
* Modify API verbage + modify systemctl error output
- Systemctl is typically not enabled on docker.
- And is an edge case for gpu being active process/etc for display devices.
* Remove AMDSMI_STATUS_AMDGPU_RESTART_ERR from the return values
* Move driver reload to after we save original compute partitions
---------
Signed-off-by: Charis Poag <Charis.Poag@amd.com>
[ROCm/amdsmi commit: d24dc7ef89]
Tento commit je obsažen v:
+9
-7
@@ -23,12 +23,12 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 10
|
||||
max-parallel: 10 # This can be in parallel, since no tests are running (see comment about driver reloads)
|
||||
matrix:
|
||||
os: [Ubuntu20, Ubuntu22, Debian10]
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -137,11 +137,12 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 1 # Need to tests to run one-at-a-time to avoid conflicts with driver reloads
|
||||
matrix:
|
||||
os: [Ubuntu20, Ubuntu22, Debian10]
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -358,7 +359,7 @@ jobs:
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 10
|
||||
max-parallel: 10 # This can be in parallel, since no tests are running (see comment about driver reloads)
|
||||
matrix:
|
||||
os:
|
||||
- SLES
|
||||
@@ -369,7 +370,7 @@ jobs:
|
||||
- AlmaLinux8
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -554,12 +555,13 @@ jobs:
|
||||
|
||||
rpm-test:
|
||||
name: Tests
|
||||
needs: rpm-buildinstall
|
||||
needs: [rpm-buildinstall, debian-test] # debian-test is needed to complete before rpm-test starts (see comment about driver reloads)
|
||||
runs-on:
|
||||
- self-hosted
|
||||
- ${{ vars.RUNNER_TYPE }}
|
||||
continue-on-error: true
|
||||
strategy:
|
||||
max-parallel: 1 # Need to tests to run one-at-a-time to avoid conflicts with driver reloads
|
||||
matrix:
|
||||
os:
|
||||
- SLES
|
||||
@@ -570,7 +572,7 @@ jobs:
|
||||
- AlmaLinux8
|
||||
container:
|
||||
image: ${{ vars[format('{0}_DOCKER_IMAGE', matrix.os)] }}
|
||||
options: --privileged
|
||||
options: --privileged --cap-add=SYS_MODULE -v /lib/modules:/lib/modules
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
Odkázat v novém úkolu
Zablokovat Uživatele