NEW! E-SMI library beta 5.2.3 is now available
The EPYC™ System Management Interface In-band Library, is a C-library for Linux, which provides APIs for In-band user space software to monitor and control the CPU’s power, energy, performance, and other system management functionality.
Highlights of Major Release v5.2.3
- Added support for AMD Family 0x1A, Models 0x50-0x5F, C0h-C7h, and 90h-9Bh processors, including the required command-line interface (CLI) options.
- Introduced new Get options for enhanced system management and DIMM monitoring features, including:
- Scanning all available DIMMs and reporting:
- DIMM Power Consumption
- DIMM Thermal Values
- DIMM Temperature Range
- Scanning all available DIMMs and reporting:
- Added the following CLI commands:
- --showalldimmtemprange [SOCKET]
Displays the temperature range and refresh rate for all DIMMs on the specified socket. - --showalldimmthermal [SOCKET]
Displays thermal values for all DIMMs on the specified socket. - --showalldimmpower [SOCKET]
Displays power consumption for all DIMMs on the specified socket.
- --showalldimmtemprange [SOCKET]
- Added support for IOCTL-based metric table retrieval.
- Added support for retrieving Maximum DIMM Thermal metrics.
Highlights of major release v5.2.2
- This release supports below for AMD Family 0x1A and model 0x50-0x5F processors
- HSMP Protocol
- Support latest HSMP protocol version with ability to retrieve the current HSMP protocol version in hexadecimal format
- UBPS and UPP Power Management
- Configure Low Utilization (%), High Utilization (%), and PPT Limit (W) parameters
- Supported power modes
- BalancedCore Mode
- BalancedCoreMemory Mode
- PQoS Traffic Priority Management
- Read Operations:
- Discover PQoS priority capabilities for a specified socket
- Query PQoS priority settings for IO Bus
- Query PQoS priority settings for CCD
- Write Operations:
- Configure PQoS priority for IO Bus
- Configure PQoS priority for CCD
- Read Operations:
- PQoS Floating Bandwidth Management
- Read Operations:
- Discover PQoS Floating Bandwidth feature availability
- Query PQoS Floating Bandwidth for a specific CLOS/CCD on an NPS node
- Write Operations:
- Configure PQoS Bandwidth parameters
- Set PQoS Global Memory Bandwidth (GBps)
- Set PQoS Floating Memory Bandwidth (GBps)
- Read Operations:
- Development Tools
- pkg-config integration for e_smi library
- Supported commands:
- pkg-config --libs libe_smi64
- pkg-config --cflags libe_smi64
Highlights of major release v5.2.1
- This release introduces Set and Get operations for enhanced system management capabilities for AMD Family 0x1A and model 0x50-0x5F processors with the following CLI options.
- HSMP Metrics
- Get HSMP Metric Table version
- Retrieve metric data with multiple options:
- Console or CSV output formats
- Readable or raw data presentation
- One-time or continuous collection
- Delayed start capability
- Signal file-triggered collection
- DIMM Monitoring (per socket)
- View hottest DIMM temperature
- View highest DIMM power consumption
- View total DIMM power consumption
- SVI3 Voltage Regulator Monitoring
- Get VR controller temperatures with RAIL names in both Console or Logger formats by querying for hottest rail or individual rails
- Supports 5 rails: VDDCR_CPU0, VDDCR_CPU1, VDDCR_SOC, VDDIO, VDDIO_MEM_S3
- Get VR controller temperatures with RAIL names in both Console or Logger formats by querying for hottest rail or individual rails
Highlights of major release v5.2.0
- AMD Family 0x1A and model 0x50-0x5F processors are supported with the following CLI options
- The tool and library support Set and Get options for new system management features, including
- Get HSMP Enabled Commands
- Set and Get HSMP Floor Limit at Core level
- Get HSMP Effective Floor Limit at Core level
- Set MSR based Floor Limit at Core and Socket level
- Get Floor Limit and Effective Floor Limit for all Socket Cores using the “--showall” CLI option
- Set and Get DIMM SB Data for LID codes such as TS0, TS1, SPDHub in both Volatile and NVM Register space
- Set and Get Socket DIMM Power Sloshing
Highlights of major release v5.0.0
- AMD Family 0x1A and model 0x50-0x5F processors are supported in this release
- Support for new system management features in tool and library, such as
- Get APB status and Data Fabric pstate (if APB Disabled)
- Get xgmi link width
- Get df pstate range and xgmi pstate range for a given socket
- Get Temperature delta (Tdelta) for a given socket
- Get DIMM Sideband register data
- Get SVI3 VR Controller temperature
- Get and Set for PC6 and CC6 Control
- Get CCD power for a given core
- Furthermore, the following logging support has been enabled to enhance user experience, improve power management debugging capabilities, and boost automation capabilities for the Power Debug Team
- LoopWatch
- Logger (CSV format)
- JSON/CSV Format summary
Highlights of major release v4.0.0
- AMD Family 0x1A and model 0x00-0x1 processors are supported in this release
- Any of the hsmp/amd_energy/msr_safe/msr driver can be used to monitor energy
Highlights of major release v3.0.0
- AMD MI300 processors are supported in this release
- Library is modified to support platform-specific check in each message in an organized way
- Tool options are modified to show valid input values
Highlights of minor release v2.1
- Library is updated to align with changes in the processor spec
Highlights of major release v2.0
- Supports new HSMP protocol version 5 messages, defined for Family 19h Model 10h - SP5
- New APIs are added for platform features
- esmi_tool is updated with platform specific features
Highlights of minor release v1.5
- Supports ioctl-based implementation of hsmp driver with support for following new APIs
- Set XGMI link width for 2P-connected systems
- Set LCLK dpm level for NBIO id
- APB Disable and Enable messages
Highlights of minor release v1.2
- Support to compile E-SMI In-band library as static
- Support for new system management features in tool and library, such as
- Get SMU Firmware version
- Get PROCHOT status
- Get clocks
- CPU clock frequency limit
- Data Fabric Clock (fclk)
- DRAM Memory Clock (mclk)
- Provide maximum DDR bandwidth (theoretical) & DDR bandwidth utilization
- Add more options and improve the tool’s console output for readability
Highlights of minor release v1.1
- Support for creating RPM and DEB packages
- Auxiliary APIs to provide system topology
- An API to read all the Energy counters on the CPU at once
- Single command to create a doxygen-based PDF document
- Updated e_smi_tool supporting all the above information
- Cosmetic changes to the tool
Highlights of major release v1.0
- Power
- Current Power Consumed
- Power Limit
- Max Power Limit
- Performance
- Boostlimit
- Energy
- Energy Consumed
- e_smi_tool, user application supporting all the above information
Specifications
Supported Processors:
- AMD CPU Family 19h Models 0h-Fh (Milan), 10h-1Fh (Genoa), A0h-AFh (Genoa-Dense)
- AMD CPU Family 19h Models 30h-3Fh (Badami)
- AMD CPU Family 1Ah Models 0h-Fh (Turin), 10h-1Fh (Turin-Dense)
- AMD APU Family 19h Models 90h-9fh (MI300A)
- AMD CPU Family 1Ah Models 0x50-0x5F, C0h-C7h, and 90h-9Bh (Venice variants)
Operating Systems
AMD E-SMI In-band library is tested on the following distributions
- Ubuntu 18.04 and later
- SUSE SLES 15 and later
- RHEL 8.1 and later
Dependency
This new e-smi release works well with amd_hsmp driver version 2.4. Not all features will work with version < 2.4. Setting cpu rail iso frequency policy, df c-state enabling, xGMI pstate range setting, etc. will only work with the 2.4 version of the amd_hsmp driver.
Resources and Technical Support
Resources
- Documentation: E-SMI Manual
- Source Code
Support
Thank you for using AMD E-SMI In-band Library. Please use E-SMI In-band Support for bug reports, support and feature requests.
Known Issues
In creating a package if “make install” is used previously with “sudo”, you will need to create a package with sudo permission, “sudo make package”, otherwise permission denied error is popped.
Downloads
| File Name | Version | Size | Launch Date | OS | Bitness | Description |
|---|---|---|---|---|---|---|
| e-smi-tool-5.2.3.deb | 5.2.3 | 484K | 06/04/2026 | Ubuntu | 64-bit | e-smi deb release package. MD5 Checksum: 600d7b2d1c3fb8a82b6b7d8ae8e81e3b |
| e-smi-tool-5.2.3.rpm | 5.2.3 | 486K | 06/04/2026 | RHEL/SLES | 64-bit | e-smi rpm release package. MD5 Checksum: fad1f048e0e9a8d5fe4b57525fe24d64 |