Commit Graph

20 Commits

Author SHA1 Message Date
Maisam Arif 28fbf0d74f Create symbolic links instead of hard links
This unbreaks having sources on one mount point and builds at another.

Signed-off-by: Marius Brehler <marius.brehler@amd.com>
Change-Id: I68363112382a95baaa867cad91e09bdec2b30d90


[ROCm/amdsmi commit: bd3579a1ac]
2025-09-26 12:17:06 -05:00
Galantsev, Dmitrii c6c01ee675 CMAKE - Format with cmake-format
Change-Id: I5b86b7b83e3d151c3d6e1c216ecb28f1313d538a
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 42c77a5912]
2025-05-06 17:09:53 -05:00
Galantsev, Dmitrii 3c32ef6c39 CMAKE - Clean-up cmake changes introduced in a9b8b6d369b390af0c00bbffab2b4fe1748b8bad
Change-Id: Ida0e9475a926a2495e36b0d9bc2468c48aee0e77
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: fe98b8bd63]
2025-05-05 15:43:12 -05:00
Poag, Charis fb3d7b9fb9 [SWDEV-528647/SWDEV-528450] Reduce API load times and libdrm/libdrm_amdgpu dynamic loading (#333)
Changes:
- Removed libdrm/libdrm_amdgpu dependencies
- Added/updated new internal libdrm/libdrm_amdgpu/xf86drm APIs
  to allow our APIs to reference before dynamic loading
  the libdrm/libdrm_amdgpu libraries:
  1. amdgpu_drm.h to what's seen in mainline
  2. Added xf86drm.h to whats seen in mainline
- Modified internal DRM capabilities:
  1. Require each API to independently connect to libdrm/libdrm_amdgpu
     + validate API handles reponses accordingly
  2. Initialization of AMD SMI no longer has as strong of a tie to
     libdrm
- Updated internal implementations of several APIs which have
connections to libdrm/libdrm_amdgpu or APIs which have conflicts
with open libdrm/libdrm_amdgpu connections:
  1. amdsmi_init()
  2. amdsmi_get_gpu_vram_usage()
  3. amdsmi_get_gpu_asic_info()
  4. amdsmi_get_gpu_vram_info()
  5. amdsmi_get_gpu_vbios_info()
  6. amdsmi_get_gpu_driver_info()
  7. amdsmi_get_gpu_virtualization_mode()
  8. amdsmi_set_gpu_memory_partition()
  9. amdsmi_set_gpu_memory_partition_mode()
- Cleaned up effected tests/APIs

Change-Id: I96e2cf1b06b0cfee1b01a5e991ccc6116c4245a8

[ROCm/amdsmi commit: b5a43b7744]
2025-05-02 21:58:53 -05:00
Justin Williams 966d0d996f [SWDEV-492047] Removed setup.cfg.in
Signed-off-by: Justin Williams <Justin.Williams@amd.com>
Change-Id: I97b14d05b17fefbb87368824f57bc4ab690f1bf0


[ROCm/amdsmi commit: d3d6157854]
2024-11-13 12:45:09 -05:00
Justin Williams fcb033f780 [SWDEV-482058 / SWDEV-482971] Added setup.py install
Signed-off-by: Justin Williams <Justin.Williams@amd.com>
Change-Id: Ibad07d34dfb455043ce307fe036289f1d5c20a9a


[ROCm/amdsmi commit: 2e5b164c43]
2024-10-18 16:59:13 -04:00
Galantsev, Dmitrii 43a2e42521 Remove python-clang dependency
python3-clang was only used to generate the python wrapper
We now use it only within the docker image for the generator

Change-Id: Id574f109b959d72f0734b0df4c26b3bbab3238fd
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: fa4e488111]
2024-09-04 15:33:28 -05:00
Maisam Arif 3c0b4b46c0 Added __version__ attr to Python Library
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: Ibbd90eaa60cc8b9dd0387d7fac8aef06a3a43375


[ROCm/amdsmi commit: 55cfcf11d6]
2024-02-28 16:27:33 -05:00
Galantsev, Dmitrii 009da920b7 Remove absolute link to libamd_smi.so
Also modify README to include:
  export PATH="$PATH:/opt/rocm/bin"

Change-Id: Ib4513d61fd3e6b23cc789491c11d83e6a6de947a
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 874d8edb3d]
2023-11-02 14:31:58 -05:00
Maisam Arif 0a90c7cfc8 SWDEV-429037 - Automatically install amdsmi python lib with package
Signed-off-by: Maisam Arif <maisarif@amd.com>
Change-Id: I9c8c1335982ebd61a29da6f66c635f0a97d95f6e


[ROCm/amdsmi commit: c2e12feb6a]
2023-11-02 15:15:27 -04:00
Galantsev, Dmitrii 33bfb69a7d CMake - Configure __version__ for python scripts
Change-Id: I646dc27b5dc93e8dde38ff09ae9c826dfc7faaa7
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 336ef57ed8]
2023-10-25 18:03:18 -05:00
Galantsev, Dmitrii 9ef6a3b974 CMAKE - Generate ESMI wrapper
The wrapper is only generated if ENABLE_ESMI_LIB option is set.
./update_wrapper.sh will check the option if cmake was ran first.

Change-Id: I6267cdba8c6ecdff58ced75a2aa59afae964446c
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 8568af65ff]
2023-10-16 16:49:00 -05:00
Galantsev, Dmitrii f7cb43462e Add wrapper generator
Change-Id: I34a191acfefbef2e40d0242eb121ba9af55cb9de
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: c94036de21]
2023-10-12 22:12:56 -04:00
Galantsev, Dmitrii 82a44740fe CMAKE - Fix --break-system-packages
Change-Id: I4a46859124018b6574d2b53e6ef9e72482784f39
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: ac8bde5978]
2023-09-25 02:03:27 -05:00
Galantsev, Dmitrii 5ac201fe42 Update amdsmi_wrapper.py and name fields
When updating the wrapper I ran into an issue with anonymous structs.
Generated wrapper would contain a string split into multiple lines,
which is invalid python.

e.g.
    'struct_struct anonymous
    (struct.... amdsmi.h:355)'

After naming the structs - the issue is gone. BDF union now has to be
addressed with .fields

e.g.
    OLD: bdf.function_number
    NEW: bdf.fields.function_number

Change-Id: Ib3c640c088ad0cc67893d636827356902051f17f
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 03cfdeefd5]
2023-08-30 16:30:03 -05:00
AravindanC 49ac5ae1e1 SWDEV-351540 - ASAN packaging for amd-smi added amdsmi_cli and py-interface under dev comp
Change-Id: Ifa7a2e5e280f2d0ef8868c63cd4ba94ca75a3468


[ROCm/amdsmi commit: 35b9c40c7d]
2023-03-30 08:10:17 -07:00
Galantsev, Dmitrii 9aa803cfc0 CLI: Make compatible with python3.6
Wrapper generation is still only compatible with python3.7 and above

Change-Id: I33cdc3925cd3fab80c9ce5f4540e1a981a5cc1f0
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: adceb8033d]
2023-03-21 17:09:55 -05:00
Galantsev, Dmitrii a94331f293 CMake: Replace .whl with libexec install
Generating .whl has proved to be difficult with AMD CI.
Switch to directly installing python projects instead.

Change-Id: I8a4c2fe22fc872865bba7da3a3386513efd5269a
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 87b9faf926]
2023-03-20 21:24:39 -05:00
Maisam Arif 24c96943d4 AMDSMI CLI Initial Packaging
- Added CMake packaging to the amdsmi_cli folder
- Updated Headings in the README.md to follow markdown standard
- Updated Compatibility to be based on the built package name in bin
- Added misc error handling and import corrections
- Updated py-interface amdsmi_exception imports to work by relative path
- Cleaned up py-interface cmake & generator code for finding libamd_smi.so
- Changed line endings in tools/generator.py file to unix

Change-Id: I91858ff3dd0cb57ed9b8cd61a0ada27b6af9c51c
Signed-off-by: Maisam Arif <Maisam.Arif@amd.com>


[ROCm/amdsmi commit: 235c8db949]
2023-03-20 10:50:21 -05:00
Galantsev, Dmitrii 446f1d1c15 Improve python wrapper generation
- Add "BUILD_PACKAGE" option that is OFF by default (CI issues)

- Optionally package wrapper if python3.7 or above is present (hack for CI)
- Optionally build wrapper if clang is present (hack for CI)
- Improve dependency resolution for wrapper
- Use python venv
- Use pyproject.toml instead of setup.py
- Use CMake install path to search for libamd_smi.so
- Move python-specific CMakeLists into py-interface
- Search for libamd_smi.so more aggressively

Change-Id: Ie7dad676b0d4a5f58ad2b887db7fecf5b1297e3b
Signed-off-by: Galantsev, Dmitrii <dmitrii.galantsev@amd.com>


[ROCm/amdsmi commit: 74479187d0]
2023-03-16 09:13:56 -05:00