diff --git a/projects/amdsmi/CHANGELOG.md b/projects/amdsmi/CHANGELOG.md index 1379b3ccd5..e0222b27c7 100644 --- a/projects/amdsmi/CHANGELOG.md +++ b/projects/amdsmi/CHANGELOG.md @@ -568,6 +568,10 @@ GPU: 0 ### Removals +- **Removed `amd-smi reset --compute-partition` and `... --memory-partition` and associated APIs**. + - This change is part of the partition redesign. Reset functionality will be reintroduced in a later update. + - associated APIs include `amdsmi_reset_gpu_compute_partition()` and `amdsmi_reset_gpu_memory_partition()` + - **Removed usage of _validate_positive in Parser and replaced with _positive_int and _not_negative_int as appropriate**. - This will allow 0 to be a valid input for several options in setting CPUs where appropriate (for example, as a mode or NBIOID) @@ -649,6 +653,33 @@ GPU POWER GPU_TEMP MEM_TEMP VRAM_USED VRAM_TOTAL - **Python API for `amdsmi_get_energy_count()` will deprecate the `power` field in ROCm 6.4 and use `energy_accumulator` field instead**. +- **New memory and compute partition APIs incoming for ROCm 6.4**. + - These APIs will be updated to fully populate the CLI and allowing compute (accelerator) partitions to be set by profile ID. + - One API will be provided, to reset both memory and compute (accelerator). + - There are dependencies regarding available compute partitions when in other memory modes. + - Driver will be providing these default modes + - Memory partition resets (for BM) require driver reloads - this will allow us to notify users before taking this action, then change to the default compute partition modes. + - The following APIs will remain: + +```C +amdsmi_status_t +amdsmi_set_gpu_compute_partition(amdsmi_processor_handle processor_handle, + amdsmi_compute_partition_type_t compute_partition); +amdsmi_status_t +amdsmi_get_gpu_compute_partition(amdsmi_processor_handle processor_handle, + char *compute_partition, uint32_t len); +amdsmi_status_t +amdsmi_get_gpu_memory_partition(amdsmi_processor_handle processor_handle, + + char *memory_partition, uint32_t len); +amdsmi_status_t +amdsmi_set_gpu_memory_partition(amdsmi_processor_handle processor_handle, + amdsmi_memory_partition_type_t memory_partition); +``` + +- **amd-smi set --compute-partition "SPX/DPX/CPX..." will no longer be supported for ROCm 6.4**. + - This is due to aligning with Host setups and providing more robust partition information through the APIs outlined above. Furthermore, new APIs which will be available on both BM/Host can set by profile ID. (functionality coming soon!) + - **Added preliminary `amd-smi partition` command**. - The new partition command can be used to display GPU information, including memory and accelerator partition information. - The command will be at full functionality once additional partition information from `amdsmi_get_gpu_accelerator_partition_profile()` has been implemented. diff --git a/projects/amdsmi/amdsmi_cli/amdsmi_commands.py b/projects/amdsmi/amdsmi_cli/amdsmi_commands.py index 348503548e..53f777f56d 100644 --- a/projects/amdsmi/amdsmi_cli/amdsmi_commands.py +++ b/projects/amdsmi/amdsmi_cli/amdsmi_commands.py @@ -4210,7 +4210,7 @@ class AMDSMICommands(): def reset(self, args, multiple_devices=False, gpu=None, gpureset=None, clocks=None, fans=None, profile=None, xgmierr=None, perf_determinism=None, - compute_partition=None, memory_partition=None, power_cap=None, clean_local_data=None): + power_cap=None, clean_local_data=None): """Issue reset commands to target gpu(s) Args: @@ -4223,8 +4223,6 @@ class AMDSMICommands(): profile (bool, optional): Value override for args.profile. Defaults to None. xgmierr (bool, optional): Value override for args.xgmierr. Defaults to None. perf_determinism (bool, optional): Value override for args.perf_determinism. Defaults to None. - compute_partition (bool, optional): Value override for args.compute_partition. Defaults to None. - memory_partition (bool, optional): Value override for args.memory_partition. Defaults to None. power_cap (bool, optional): Value override for args.power_cap. Defaults to None. clean_local_data (bool, optional): Value override for args.run_cleaner_shader. Defaults to None. @@ -4250,10 +4248,6 @@ class AMDSMICommands(): args.xgmierr = xgmierr if perf_determinism: args.perf_determinism = perf_determinism - if compute_partition: - args.compute_partition = compute_partition - if memory_partition: - args.memory_partition = memory_partition if power_cap: args.power_cap = power_cap if clean_local_data: @@ -4355,67 +4349,48 @@ class AMDSMICommands(): reset_profile_results['power_profile'] = "N/A" logging.debug("Failed to reset power profile on gpu %s | %s", gpu_id, e.get_error_info()) - try: - level_auto = amdsmi_interface.AmdSmiDevPerfLevel.AUTO - amdsmi_interface.amdsmi_set_gpu_perf_level(args.gpu, level_auto) - reset_profile_results['performance_level'] = 'Successfully reset Performance Level' - except amdsmi_exception.AmdSmiLibraryException as e: - if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: - raise PermissionError('Command requires elevation') from e - reset_profile_results['performance_level'] = "N/A" - logging.debug("Failed to reset perf level on gpu %s | %s", gpu_id, e.get_error_info()) - self.logger.store_output(args.gpu, 'reset_profile', reset_profile_results) - if args.xgmierr: - try: - amdsmi_interface.amdsmi_reset_gpu_xgmi_error(args.gpu) - result = 'Successfully reset XGMI Error count' - except amdsmi_exception.AmdSmiLibraryException as e: - if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: - raise PermissionError('Command requires elevation') from e - result = "N/A" - logging.debug("Failed to reset xgmi error count on gpu %s | %s", gpu_id, e.get_error_info()) - self.logger.store_output(args.gpu, 'reset_xgmi_err', result) - if args.perf_determinism: - try: - level_auto = amdsmi_interface.AmdSmiDevPerfLevel.AUTO - amdsmi_interface.amdsmi_set_gpu_perf_level(args.gpu, level_auto) - result = 'Successfully disabled performance determinism' - except amdsmi_exception.AmdSmiLibraryException as e: - if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: - raise PermissionError('Command requires elevation') from e - result = "N/A" - logging.debug("Failed to set perf level on gpu %s | %s", gpu_id, e.get_error_info()) - self.logger.store_output(args.gpu, 'reset_perf_determinism', result) - if args.compute_partition: - try: - amdsmi_interface.amdsmi_reset_gpu_compute_partition(args.gpu) - result = 'Successfully reset compute partition' - except amdsmi_exception.AmdSmiLibraryException as e: - if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: - raise PermissionError('Command requires elevation') from e - result = "N/A" - logging.debug("Failed to reset compute partition on gpu %s | %s", gpu_id, e.get_error_info()) - self.logger.store_output(args.gpu, 'reset_compute_partition', result) - if args.memory_partition: - try: - amdsmi_interface.amdsmi_reset_gpu_memory_partition(args.gpu) - result = 'Successfully reset memory partition' - except amdsmi_exception.AmdSmiLibraryException as e: - if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: - raise PermissionError('Command requires elevation') from e - result = "N/A" - logging.debug("Failed to reset memory partition on gpu %s | %s", gpu_id, e.get_error_info()) - self.logger.store_output(args.gpu, 'reset_memory_partition', result) - if args.power_cap: - try: - power_cap_info = amdsmi_interface.amdsmi_get_power_cap_info(args.gpu) - logging.debug(f"Power cap info for gpu {gpu_id} | {power_cap_info}") - default_power_cap_in_w = power_cap_info["default_power_cap"] - default_power_cap_in_w = self.helpers.convert_SI_unit(default_power_cap_in_w, AMDSMIHelpers.SI_Unit.MICRO) - current_power_cap_in_w = power_cap_info["power_cap"] - current_power_cap_in_w = self.helpers.convert_SI_unit(current_power_cap_in_w, AMDSMIHelpers.SI_Unit.MICRO) - except amdsmi_exception.AmdSmiLibraryException as e: - raise ValueError(f"Unable to get power cap info from {gpu_id}") from e + try: + level_auto = amdsmi_interface.AmdSmiDevPerfLevel.AUTO + amdsmi_interface.amdsmi_set_gpu_perf_level(args.gpu, level_auto) + reset_profile_results['performance_level'] = 'Successfully reset Performance Level' + except amdsmi_exception.AmdSmiLibraryException as e: + if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: + raise PermissionError('Command requires elevation') from e + reset_profile_results['performance_level'] = "N/A" + logging.debug("Failed to reset perf level on gpu %s | %s", gpu_id, e.get_error_info()) + + self.logger.store_output(args.gpu, 'reset_profile', reset_profile_results) + if args.xgmierr: + try: + amdsmi_interface.amdsmi_reset_gpu_xgmi_error(args.gpu) + result = 'Successfully reset XGMI Error count' + except amdsmi_exception.AmdSmiLibraryException as e: + if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: + raise PermissionError('Command requires elevation') from e + result = "N/A" + logging.debug("Failed to reset xgmi error count on gpu %s | %s", gpu_id, e.get_error_info()) + self.logger.store_output(args.gpu, 'reset_xgmi_err', result) + if args.perf_determinism: + try: + level_auto = amdsmi_interface.AmdSmiDevPerfLevel.AUTO + amdsmi_interface.amdsmi_set_gpu_perf_level(args.gpu, level_auto) + result = 'Successfully disabled performance determinism' + except amdsmi_exception.AmdSmiLibraryException as e: + if e.get_error_code() == amdsmi_interface.amdsmi_wrapper.AMDSMI_STATUS_NO_PERM: + raise PermissionError('Command requires elevation') from e + result = "N/A" + logging.debug("Failed to set perf level on gpu %s | %s", gpu_id, e.get_error_info()) + self.logger.store_output(args.gpu, 'reset_perf_determinism', result) + if args.power_cap: + try: + power_cap_info = amdsmi_interface.amdsmi_get_power_cap_info(args.gpu) + logging.debug(f"Power cap info for gpu {gpu_id} | {power_cap_info}") + default_power_cap_in_w = power_cap_info["default_power_cap"] + default_power_cap_in_w = self.helpers.convert_SI_unit(default_power_cap_in_w, AMDSMIHelpers.SI_Unit.MICRO) + current_power_cap_in_w = power_cap_info["power_cap"] + current_power_cap_in_w = self.helpers.convert_SI_unit(current_power_cap_in_w, AMDSMIHelpers.SI_Unit.MICRO) + except amdsmi_exception.AmdSmiLibraryException as e: + raise ValueError(f"Unable to get power cap info from {gpu_id}") from e if current_power_cap_in_w == default_power_cap_in_w: self.logger.store_output(args.gpu, 'powercap', f"Power cap is already set to {default_power_cap_in_w}") diff --git a/projects/amdsmi/amdsmi_cli/amdsmi_parser.py b/projects/amdsmi/amdsmi_cli/amdsmi_parser.py index 830cf7239f..4a069b4ca1 100644 --- a/projects/amdsmi/amdsmi_cli/amdsmi_parser.py +++ b/projects/amdsmi/amdsmi_cli/amdsmi_parser.py @@ -1128,8 +1128,6 @@ class AMDSMIParser(argparse.ArgumentParser): reset_profile_help = "Reset power profile back to default" reset_xgmierr_help = "Reset XGMI error counts" reset_perf_det_help = "Disable performance determinism" - reset_compute_help = "Reset compute partitions on the specified GPU" - reset_memory_help = "Reset memory partitions on the specified GPU" reset_power_cap_help = "Reset power capacity limit to max capable" reset_gpu_clean_local_data_help = "Clean up local data in LDS/GPRs on a per partition basis" @@ -1152,8 +1150,6 @@ class AMDSMIParser(argparse.ArgumentParser): reset_parser.add_argument('-p', '--profile', action='store_true', required=False, help=reset_profile_help) reset_parser.add_argument('-x', '--xgmierr', action='store_true', required=False, help=reset_xgmierr_help) reset_parser.add_argument('-d', '--perf-determinism', action='store_true', required=False, help=reset_perf_det_help) - reset_parser.add_argument('-C', '--compute-partition', action='store_true', required=False, help=reset_compute_help) - reset_parser.add_argument('-M', '--memory-partition', action='store_true', required=False, help=reset_memory_help) reset_parser.add_argument('-o', '--power-cap', action='store_true', required=False, help=reset_power_cap_help) # Add Baremetal and Virtual OS reset arguments diff --git a/projects/amdsmi/docs/how-to/using-amdsmi-for-python.md b/projects/amdsmi/docs/how-to/using-amdsmi-for-python.md index 26deb2109f..997a37bbb4 100644 --- a/projects/amdsmi/docs/how-to/using-amdsmi-for-python.md +++ b/projects/amdsmi/docs/how-to/using-amdsmi-for-python.md @@ -3703,35 +3703,6 @@ except AmdSmiException as e: print(e) ``` -### amdsmi_reset_gpu_compute_partition - -Description: Reset the compute partitioning on the given GPU - -Input parameters: - -* `processor_handle` the device handle - -Output: String of the partition type - -Exceptions that can be thrown by `amdsmi_reset_gpu_compute_partition` function: - -* `AmdSmiLibraryException` -* `AmdSmiRetryException` -* `AmdSmiParameterException` - -Example: - -```python -try: - devices = amdsmi_get_processor_handles() - if len(devices) == 0: - print("No GPUs on machine") - else: - for device in devices: - amdsmi_reset_gpu_compute_partition(device) -except AmdSmiException as e: - print(e) -``` ### amdsmi_get_gpu_memory_partition @@ -3796,36 +3767,6 @@ except AmdSmiException as e: print(e) ``` -### amdsmi_reset_gpu_memory_partition - -Description: Reset the memory partitioning on the given GPU - -Input parameters: - -* `processor_handle` the device handle - -Output: String of the partition type - -Exceptions that can be thrown by `amdsmi_reset_gpu_memory_partition` function: - -* `AmdSmiLibraryException` -* `AmdSmiRetryException` -* `AmdSmiParameterException` - -Example: - -```python -try: - devices = amdsmi_get_processor_handles() - if len(devices) == 0: - print("No GPUs on machine") - else: - for device in devices: - amdsmi_reset_gpu_memory_partition(device) -except AmdSmiException as e: - print(e) -``` - ### amdsmi_get_xgmi_info Description: Returns XGMI information for the GPU. diff --git a/projects/amdsmi/include/amd_smi/amdsmi.h b/projects/amdsmi/include/amd_smi/amdsmi.h index bf629275fd..9aad19603b 100644 --- a/projects/amdsmi/include/amd_smi/amdsmi.h +++ b/projects/amdsmi/include/amd_smi/amdsmi.h @@ -4578,25 +4578,6 @@ amdsmi_status_t amdsmi_set_gpu_compute_partition(amdsmi_processor_handle processor_handle, amdsmi_compute_partition_type_t compute_partition); -/** - * @brief Reverts a selected device's compute partition setting back to its - * boot state. - * - * @platform{gpu_bm_linux} - * - * @details Given a processor handle @p processor_handle, this function will attempt to - * revert its compute partition setting back to its boot state. - * - * @param[in] processor_handle Device which to query - * - * @retval ::AMDSMI_STATUS_SUCCESS call was successful - * @retval ::AMDSMI_STATUS_PERMISSION function requires root access - * @retval ::AMDSMI_STATUS_NOT_SUPPORTED installed software or hardware does not - * support this function - * - */ -amdsmi_status_t amdsmi_reset_gpu_compute_partition(amdsmi_processor_handle processor_handle); - /** @} */ // end of compute_partition /*****************************************************************************/ @@ -4667,27 +4648,6 @@ amdsmi_status_t amdsmi_set_gpu_memory_partition(amdsmi_processor_handle processor_handle, amdsmi_memory_partition_type_t memory_partition); -/** - * @brief Reverts a selected device's memory partition setting back to its - * boot state. - * - * @platform{gpu_bm_linux} - * - * @details Given a processor handle @p processor_handle, this function will attempt to - * revert its current memory partition setting back to its boot state. - * - * @param[in] processor_handle Device which to query - * - * @retval ::AMDSMI_STATUS_SUCCESS call was successful - * @retval ::AMDSMI_STATUS_PERMISSION function requires root access - * @retval ::AMDSMI_STATUS_NOT_SUPPORTED installed software or hardware does not - * support this function - * @retval ::AMDSMI_STATUS_AMDGPU_RESTART_ERR could not successfully restart - * the amdgpu driver - * - */ -amdsmi_status_t amdsmi_reset_gpu_memory_partition(amdsmi_processor_handle processor_handle); - /** @} */ // end of memory_partition /*****************************************************************************/ diff --git a/projects/amdsmi/py-interface/README.md b/projects/amdsmi/py-interface/README.md index 922462ab4f..41fe962bab 100644 --- a/projects/amdsmi/py-interface/README.md +++ b/projects/amdsmi/py-interface/README.md @@ -3704,36 +3704,6 @@ except AmdSmiException as e: print(e) ``` -### amdsmi_reset_gpu_compute_partition - -Description: Reset the compute partitioning on the given GPU - -Input parameters: - -* `processor_handle` the device handle - -Output: String of the partition type - -Exceptions that can be thrown by `amdsmi_reset_gpu_compute_partition` function: - -* `AmdSmiLibraryException` -* `AmdSmiRetryException` -* `AmdSmiParameterException` - -Example: - -```python -try: - devices = amdsmi_get_processor_handles() - if len(devices) == 0: - print("No GPUs on machine") - else: - for device in devices: - amdsmi_reset_gpu_compute_partition(device) -except AmdSmiException as e: - print(e) -``` - ### amdsmi_get_gpu_memory_partition Description: Get the memory partition from the given GPU @@ -3797,35 +3767,6 @@ except AmdSmiException as e: print(e) ``` -### amdsmi_reset_gpu_memory_partition - -Description: Reset the memory partitioning on the given GPU - -Input parameters: - -* `processor_handle` the device handle - -Output: String of the partition type - -Exceptions that can be thrown by `amdsmi_reset_gpu_memory_partition` function: - -* `AmdSmiLibraryException` -* `AmdSmiRetryException` -* `AmdSmiParameterException` - -Example: - -```python -try: - devices = amdsmi_get_processor_handles() - if len(devices) == 0: - print("No GPUs on machine") - else: - for device in devices: - amdsmi_reset_gpu_memory_partition(device) -except AmdSmiException as e: - print(e) -``` ### amdsmi_get_gpu_accelerator_partition_profile diff --git a/projects/amdsmi/py-interface/__init__.py b/projects/amdsmi/py-interface/__init__.py index ca2b4754fe..6697c11c7b 100644 --- a/projects/amdsmi/py-interface/__init__.py +++ b/projects/amdsmi/py-interface/__init__.py @@ -222,10 +222,8 @@ from .amdsmi_interface import amdsmi_get_link_topology_nearest # # Partition Functions from .amdsmi_interface import amdsmi_get_gpu_compute_partition from .amdsmi_interface import amdsmi_set_gpu_compute_partition -from .amdsmi_interface import amdsmi_reset_gpu_compute_partition from .amdsmi_interface import amdsmi_get_gpu_memory_partition from .amdsmi_interface import amdsmi_set_gpu_memory_partition -from .amdsmi_interface import amdsmi_reset_gpu_memory_partition from .amdsmi_interface import amdsmi_get_gpu_accelerator_partition_profile # # Individual GPU Metrics Functions diff --git a/projects/amdsmi/py-interface/amdsmi_interface.py b/projects/amdsmi/py-interface/amdsmi_interface.py index fa96a01819..04fed27bdf 100644 --- a/projects/amdsmi/py-interface/amdsmi_interface.py +++ b/projects/amdsmi/py-interface/amdsmi_interface.py @@ -2691,15 +2691,6 @@ def amdsmi_set_gpu_compute_partition(processor_handle: amdsmi_wrapper.amdsmi_pro ) -def amdsmi_reset_gpu_compute_partition(processor_handle: amdsmi_wrapper.amdsmi_processor_handle): - if not isinstance(processor_handle, amdsmi_wrapper.amdsmi_processor_handle): - raise AmdSmiParameterException( - processor_handle, amdsmi_wrapper.amdsmi_processor_handle - ) - - _check_res(amdsmi_wrapper.amdsmi_reset_gpu_compute_partition(processor_handle)) - - def amdsmi_get_gpu_memory_partition(processor_handle: amdsmi_wrapper.amdsmi_processor_handle): if not isinstance(processor_handle, amdsmi_wrapper.amdsmi_processor_handle): raise AmdSmiParameterException( @@ -2737,15 +2728,6 @@ def amdsmi_set_gpu_memory_partition(processor_handle: amdsmi_wrapper.amdsmi_proc ) -def amdsmi_reset_gpu_memory_partition(processor_handle: amdsmi_wrapper.amdsmi_processor_handle): - if not isinstance(processor_handle, amdsmi_wrapper.amdsmi_processor_handle): - raise AmdSmiParameterException( - processor_handle, amdsmi_wrapper.amdsmi_processor_handle - ) - - _check_res(amdsmi_wrapper.amdsmi_reset_gpu_memory_partition(processor_handle)) - - def amdsmi_get_gpu_accelerator_partition_profile( processor_handle: amdsmi_wrapper.amdsmi_processor_handle ) -> Dict[str, Any]: diff --git a/projects/amdsmi/py-interface/amdsmi_wrapper.py b/projects/amdsmi/py-interface/amdsmi_wrapper.py index e52e147fc1..5839849ec6 100644 --- a/projects/amdsmi/py-interface/amdsmi_wrapper.py +++ b/projects/amdsmi/py-interface/amdsmi_wrapper.py @@ -2349,18 +2349,12 @@ amdsmi_get_gpu_compute_partition.argtypes = [amdsmi_processor_handle, ctypes.POI amdsmi_set_gpu_compute_partition = _libraries['libamd_smi.so'].amdsmi_set_gpu_compute_partition amdsmi_set_gpu_compute_partition.restype = amdsmi_status_t amdsmi_set_gpu_compute_partition.argtypes = [amdsmi_processor_handle, amdsmi_compute_partition_type_t] -amdsmi_reset_gpu_compute_partition = _libraries['libamd_smi.so'].amdsmi_reset_gpu_compute_partition -amdsmi_reset_gpu_compute_partition.restype = amdsmi_status_t -amdsmi_reset_gpu_compute_partition.argtypes = [amdsmi_processor_handle] amdsmi_get_gpu_memory_partition = _libraries['libamd_smi.so'].amdsmi_get_gpu_memory_partition amdsmi_get_gpu_memory_partition.restype = amdsmi_status_t amdsmi_get_gpu_memory_partition.argtypes = [amdsmi_processor_handle, ctypes.POINTER(ctypes.c_char), uint32_t] amdsmi_set_gpu_memory_partition = _libraries['libamd_smi.so'].amdsmi_set_gpu_memory_partition amdsmi_set_gpu_memory_partition.restype = amdsmi_status_t amdsmi_set_gpu_memory_partition.argtypes = [amdsmi_processor_handle, amdsmi_memory_partition_type_t] -amdsmi_reset_gpu_memory_partition = _libraries['libamd_smi.so'].amdsmi_reset_gpu_memory_partition -amdsmi_reset_gpu_memory_partition.restype = amdsmi_status_t -amdsmi_reset_gpu_memory_partition.argtypes = [amdsmi_processor_handle] amdsmi_get_gpu_accelerator_partition_profile = _libraries['libamd_smi.so'].amdsmi_get_gpu_accelerator_partition_profile amdsmi_get_gpu_accelerator_partition_profile.restype = amdsmi_status_t amdsmi_get_gpu_accelerator_partition_profile.argtypes = [amdsmi_processor_handle, ctypes.POINTER(struct_amdsmi_accelerator_partition_profile_t), ctypes.POINTER(ctypes.c_uint32)] @@ -2899,10 +2893,9 @@ __all__ = \ 'amdsmi_process_info_t', 'amdsmi_processor_handle', 'amdsmi_range_t', 'amdsmi_ras_err_state_t', 'amdsmi_ras_feature_t', 'amdsmi_reg_type_t', 'amdsmi_reset_gpu', - 'amdsmi_reset_gpu_compute_partition', 'amdsmi_reset_gpu_fan', - 'amdsmi_reset_gpu_memory_partition', - 'amdsmi_reset_gpu_xgmi_error', 'amdsmi_retired_page_record_t', - 'amdsmi_set_clk_freq', 'amdsmi_set_cpu_core_boostlimit', + 'amdsmi_reset_gpu_fan', 'amdsmi_reset_gpu_xgmi_error', + 'amdsmi_retired_page_record_t', 'amdsmi_set_clk_freq', + 'amdsmi_set_cpu_core_boostlimit', 'amdsmi_set_cpu_df_pstate_range', 'amdsmi_set_cpu_gmi3_link_width_range', 'amdsmi_set_cpu_pcie_link_rate', @@ -2970,5 +2963,6 @@ __all__ = \ 'struct_cache_', 'struct_engine_usage_', 'struct_fw_info_list_', 'struct_memory_usage_', 'struct_nps_flags_', 'struct_pcie_metric_', 'struct_pcie_static_', - 'struct_amdsmi_bdf_t','uint32_t', 'uint64_t', 'uint8_t', + 'struct_amdsmi_bdf_t', 'uint32_t', 'uint64_t', 'uint8_t', 'union_amdsmi_bdf_t', 'union_amdsmi_nps_caps_t'] + diff --git a/projects/amdsmi/src/amd_smi/amd_smi.cc b/projects/amdsmi/src/amd_smi/amd_smi.cc index be2b34361f..60f0ae0d2f 100644 --- a/projects/amdsmi/src/amd_smi/amd_smi.cc +++ b/projects/amdsmi/src/amd_smi/amd_smi.cc @@ -1431,12 +1431,6 @@ amdsmi_set_gpu_compute_partition(amdsmi_processor_handle processor_handle, static_cast(compute_partition)); } -amdsmi_status_t -amdsmi_reset_gpu_compute_partition(amdsmi_processor_handle processor_handle) { - AMDSMI_CHECK_INIT(); - return rsmi_wrapper(rsmi_dev_compute_partition_reset, processor_handle); -} - // Memory Partition functions amdsmi_status_t amdsmi_get_gpu_memory_partition(amdsmi_processor_handle processor_handle, @@ -1454,12 +1448,6 @@ amdsmi_set_gpu_memory_partition(amdsmi_processor_handle processor_handle, static_cast(memory_partition)); } -amdsmi_status_t -amdsmi_reset_gpu_memory_partition(amdsmi_processor_handle processor_handle) { - AMDSMI_CHECK_INIT(); - return rsmi_wrapper(rsmi_dev_memory_partition_reset, processor_handle); -} - amdsmi_status_t amdsmi_get_gpu_accelerator_partition_profile(amdsmi_processor_handle processor_handle, amdsmi_accelerator_partition_profile_t *profile,