Need help with SMCAMDProcessor?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

trulyspinach
635 Stars 45 Forks BSD 3-Clause "New" or "Revised" License 121 Commits 21 Opened issues

Description

Power management, monitoring and VirtualSMC plugin for AMD processors

Services available

!
?

Need anything else?

Contributors list

# 151,971
Unity
unity3d
Swift
C
64 commits
# 305,641
C++
C
hackint...
tempera...
8 commits
# 96,839
Objecti...
python-...
seo-opt...
macOS
6 commits
# 393,258
C++
C
hackint...
tempera...
4 commits
# 298,117
passwor...
Heroku
Shell
swift-n...
3 commits
# 524,912
C++
C
hackint...
tempera...
1 commit
# 199,284
hugo
vue2
plex
netflix
1 commit
# 495,920
Shell
C++
C
hackint...
1 commit

SMCAMDProcessor

Github release Github release

XNU kernel extension for power management and monitoring of AMD processors. Also comes with a plugin for VirtualSMC to export readings to other applications.

Please note that this release is at very initial stage of development, make sure you have a proper backup of your EFI folder and never run on any system that matters.

Installation

SMCAMDProcessor now comes in two separate binaries(kernel extensions): *

AMDRyzenCPUPowerManagement.kext
for all power management features. This kext is also required if you would like to use AMD Power Gadget. *
SMCAMDProcessor.kext
to publish readings to VirtualSMC, which enables macOS applications like iStat to display sensor data. This kext depends on
AMDRyzenCPUPowerManagement.kext
to collect sensor data, thus must be loaded after.
  1. Download the kext(s) and application from Release page
  2. Add
    AMDRyzenCPUPowerManagement.kext
    to kext folder of your bootloader.
  3. Edit your bootloader's config file to make sure the kext is enabled.
  4. If you're using VirtualSMC you can also load
    SMCAMDProcessor.kext
    to publish sensor data.
  5. Bootloaders like
    OpenCore
    will link each kext in the order they present in config file, so make sure
    AMDRyzenCPUPowerManagement.kext
    comes before
    SMCAMDProcessor.kext
    as it serves as a dependency.

Features

  • CPU power management for AMD 17h processors.
  • Supports for reading of temperature, energy and frequency data on AMD 17h Processors.
  • Manual switching of processor speed.
  • PState editing.

AMD Power Gadget

Editing PState

Since the release 0.3.1, you can now edit your CPU PState using AMD Power Tool.

To access PState editor: 1. Open AMD Power Tool 2. Go to 'Speed' tab 3. Click 'Advanced Options'

Fan Control

Due to the amount of request an experimental feature for reading and overriding fan speed is out!

You can access this menu from menu bar "Open -> SMC Fans" or the button in Power Tool. Currently only a limited amount of SMC controllers are supported.

Safety Notes

  • Incorrect PState setting can potentially cause permanent damage to your computer hardware.
  • For safety concern, this function was limited to root user only. You can either launch AMD Power Gadget with root user or use
    -amdpnopchk
    to disable this check.

Contribution

If you like this project, please consider supporting it via:

  • Give it a star!
  • Buy me a coffee(or a Zen 3 processsor 😝).

  • Opening up an issue if you encountered any problem or want to make suggestions.

  • or if you're a coding person, feel free to submit any pull request or just DM me on Discord.

Credits

  • aluveitie for various enhancements and fixes.
  • mauricelos for IT86XXE SMC chip driver.
  • necross2 for adding support to temperature sensor offset.
  • Shaneee for the beautiful icon.

Notes

  • I am still fairly new to macOS kernel development, this software project was initally a hobby project, and it still is, to get some reading on my newly built AMD hackintosh computer.

  • With that being said, please bear with some of the spaghetti and not-idiomatic codes. Any criticism is much welcomed :)

stats

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.