This project aims to provide a common functions for full SMU control on AMD Zen platform.
The library is used in ZenTimings and ZenStates projects.
The following AMD Zen-based codenames are supported
- SummitRidge
- Whitehaven
- Naples
- RavenRidge
- PinnacleRidge
- Colfax
- Picasso
- FireFlight
- Matisse
- CastlePeak
- Rome
- Dali
- Renoir
- VanGogh
- Vermeer
- Chagall
- Milan
- Cezanne
- Rembrandt
- Lucienne
- Raphael
- Phoenix
- Phoenix2
- Mendocino
- Genoa
- StormPeak
- DragonRange
- Mero
- HawkPoint
- StrixPoint
- GraniteRidge
- KrackanPoint
- StrixHalo
- Turin
- Bergamo
First, reference the DLL in your .NET project and import it.
using ZenStates.Core;Then initialize it. Cpu is the main module.
private readonly Cpu cpu = new Cpu();| field | type |
|---|---|
| cpuid | uint |
| family | Family |
| codeName | CodeName |
| cpuName | string |
| packageType | PackageType |
| baseModel | uint |
| extModel | uint |
| model | uint |
| ccds | uint |
| ccxs | uint |
| coresPerCcx | uint |
| cores | uint |
| logicalCores | uint |
| physicalCores | uint |
| threadsPerCore | uint |
| patchLevel | uint |
| coreDisableMap | uint |
| svi2 | SVI2 |
where svi2 exposes the following fields corresponding to the SVI2 power planes
| field | type |
|---|---|
| coreAddress | uint |
| socAddress | uint |
The module combines Cpu.info with additional information about the motherboard
ryzen_smu (gitlab)
ryzen_nb_smu (github)
zenpower (github)
Linux kernel (github)
AMD's public documentation
Open Hardware Monitor
with the help of patrickschur, leogx9r, PJVol, FlyGoat, sbski, 1usmus