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
- Phoenix
- Mendocino
- Genoa
- StormPeak
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