Get your CPU core and cluster power draw in Watts. Supports Apple Silicon and Intel.

Overview

macos-cpupower

Get your CPU core and cluster power draw in Watts.

Apple Silicon Intel Releases License License

What It Does and How It Works

This project is designed to get the power draw of your Macs CPU cores and clusters. Each architecture supported by this project uses its own special technique to fetch this data.

On Apple Silicon

CPU core and cluster power draw metrics are measured by fetching two samples of the CPUs energy counter values (which are hidden away in IOReport), and subtracting those values from each other in order to get our data, formatted in milliWatts (which is then converted to Watts).

On Intel

CPU package power draw metrics are pulled from the SMC. Due to the identical frequency behaviors of non-idle cores in Intel Processors prior to Icelake, individual core power draw is estimated by dividing the package power draw metric by the number of physical CPU cores.

Usage

Preparation

Download the precompiled binary from the releases, cd into your Downloads folder, and run the following commands to fix the binary permissions:

chmod 755 ./macos-cpupower
xattr -cr ./macos-cpupower

Now you can simply run ./macos-cpupower.

Examples

Here is an example running ./macos-cpupower on an M1 Mac Mini during a Geekbench run:

Average Power Draw
------------------------
ECPU_CLUSTER.......... : 0.656 Watts ( 2.5 Watts: 26.24% )
PCPU_CLUSTER.......... : 10.616 Watts ( 28.4 Watts: 37.38% )

E-Core Power Draw
------------------------
ECPU_CORE_0........... : 0.135 Watts ( 0.6 Watts: 21.60% )
ECPU_CORE_1........... : 0.130 Watts ( 0.6 Watts: 20.80% )
ECPU_CORE_2........... : 0.124 Watts ( 0.6 Watts: 19.84% )
ECPU_CORE_3........... : 0.118 Watts ( 0.6 Watts: 18.88% )

P-Core Power Draw
------------------------
PCPU_CORE_0........... : 4.632 Watts ( 7.1 Watts: 65.24% )
PCPU_CORE_1........... : 1.520 Watts ( 7.1 Watts: 21.41% )
PCPU_CORE_2........... : 1.336 Watts ( 7.1 Watts: 18.82% )
PCPU_CORE_3........... : 0.916 Watts ( 7.1 Watts: 12.90% )

Here is an example running ./macos-cpupower on an 13" MacBook Pro with an dual-core i7-4578U:

CPU Power Draw
------------------------
CPU_PACKAGE........... : 13.754 Watts ( 28 Watts: 49.12% )
CPU_INDIVIDUAL_CORE... : 6.877 Watts ( 14 Watts: 49.12% )

Options

The following command-line options are supported:

  -h | --help            show this message
  -v | --version         print version number
  -r | --remove-cache    remove the cache storing CPU data

  -l | --loop-rate 
   
       loop output (0=infinite) [default: disabled]
  -i | --sample-rate 
    
      set sampling rate (may affect accuracy) [default: 0.8s]
  -s | --select-core 
     
       selected specific CPU core [default: disabled]

  -c | --cores           print power information for CPU cores    (ARM64)
  -C | --clusters        print power information for CPU clusters (ARM64)
  -e | --e-cluster       print power information for ECPU types   (ARM64)
  -p | --p-cluster       print power information for PCPU types   (ARM64)

     
    
   

Bugs and Issues

Known Problems

  • Support for M1 Pro/Max currently unofficial (if anyone has a machine with this silicon, let me know how it works for you)

If any other bugs or issues are identified, please let me know in the issues section.

Support ❤️

If you would like to support me, you can donate to my Cash App.

You might also like...
iCloud Drive is Apple's essential connection between all your devices, Mac, iPhone, iPad, even your Windows PC.
iCloud Drive is Apple's essential connection between all your devices, Mac, iPhone, iPad, even your Windows PC.

iCloud Drive is Apple's essential connection between all your devices, Mac, iPhone, iPad, even your Windows PC.While the cost of storage seems expensive in comparison to other online storage services, its advantage is that it works natively across all your devices.

Basic Todo list application built using the new SwiftUI framework and Core Data
Basic Todo list application built using the new SwiftUI framework and Core Data

Dub Dub Do - A sample TODO List Application in SwiftUI Updated for Xcode 11.5 This is a basic app that lets you create a list of todos, mark them as i

A directory demo app written with SwiftUI, Core Data, and Alamofire
A directory demo app written with SwiftUI, Core Data, and Alamofire

Directory-SwiftUI A directory demo app written with SwiftUI, Core Data, and Alamofire Getting Started Clone (or fork) this repo: git clone git@github.

A SwiftUI Application using MVVM, Core Data and Combine
A SwiftUI Application using MVVM, Core Data and Combine

SwiftUI | Breaking Bad App Application that shows the characters of Breaking Bad.

Visualize your dividend growth. DivRise tracks dividend prices of your stocks, gives you in-depth information about dividend paying stocks like the next dividend date and allows you to log your monthly dividend income.
Visualize your dividend growth. DivRise tracks dividend prices of your stocks, gives you in-depth information about dividend paying stocks like the next dividend date and allows you to log your monthly dividend income.

DivRise DivRise is an iOS app written in Pure SwiftUI that tracks dividend prices of your stocks, gives you in-depth information about dividend paying

Using Core Data With SwiftUI

Using Core Data With SwiftUI - An Introduction This sample code project is associated with the following guides at andrewcbancroft.com: Using Core Dat

Building Expense Tracker iOS App with Core Data & SwiftUI Completed Project
Building Expense Tracker iOS App with Core Data & SwiftUI Completed Project

Completed Project for Building Expense Tracker iOS App with Core Data & SwiftUI Follow the tutorial at alfianlosari.com Features Create, edit, and del

Simple ToDo app using SwiftUI & Core Data
Simple ToDo app using SwiftUI & Core Data

SwiftUI_ToDoApp Simple ToDo app using SwiftUI & Core Data ToDo with Empty State New Task Screen New Task Screen with data ToDo List All Task list with

Notes App using Core Data for persisting the data ✨
Notes App using Core Data for persisting the data ✨

Notes Notes app where we can save and manage our daily notes. App usage The app allow us to add new notes We can delete our existing notes We can edit

Releases(v1.0.0)
Owner
BitesPotatoBacks
Young tech enthusiast creating useful things for Apple Operating Systems
BitesPotatoBacks
Examples projects using SwiftUI released by WWDC2019. Include Layout, UI, Animations, Gestures, Draw and Data.

SwiftUI Examples About Examples projects using SwiftUI & Combine. Include Layout, UI, Animations, Gestures, Draw and Data. See projects files in Files

Ivan Vorobei 4.2k Jan 6, 2023
SwiftUI:Using Shape & Path to Draw Taiwan Meme Cat

SwiftUI:Using Shape & Path to Draw Taiwan Meme Cat Using SwiftUI's Shape & Path to draw sticker「Taiwan Meme Cat」from Instagram:@taiwanmemecat! SwiftUI

Ricky Chuang 1 Mar 5, 2022
Molt is a meditation/relaxation app that helps you get into the right headspace by shedding your stressful thoughts.

A relaxation app where you toss away your stressful thoughts (represented by sticky notes) and pause for a few minutes with a peaceful scene.

Ryan Lintott 4 Mar 30, 2022
Get location of user and show near cities and weather of the cities for next 6 days. (iOS)

technical-assignment-Weather-App This project written in Swift by Emre Kılınc You need to have Xcode installed. Please open weather_app.xcworkspace wi

Emre Kilinc 1 May 27, 2022
In this tutorial, you’ll write your very first Core Data application with SwiftUI in Xcode

TodoApp-IOS In this tutorial, you’ll write your very first Core Data application with SwiftUI in Xcode. You’ll see how easy it is to get started with

Noye Samuel 1 Dec 13, 2021
Get notified about available COVID-19 vaccination appointments in Berlin's vaccination centers

VaccinationMonitor If you live in Berlin you might know how difficult it is to find an appointment to get a COVID-19 vaccination. This app notifies yo

Christian Lobach 8 Jan 14, 2022
Get current weather from openWeather APIs.

JCSWeatherKit JCSWeatherKit is a simple weather library for iOS. It can fetch weather data from OpenWeatherMap. More data sources will be supported an

Asa. Ga 0 Oct 26, 2021
IOSWeather - An app that allows people to get weather forecast

iOSWeather iOSWeather is an app that allows people to get weather forecast. App

null 0 Jan 13, 2022
CVE-2022-22639: Get a Root Shell on macOS Monterey

Details See Blog: https://www.trendmicro.com/en_us/research/22/d/macos-suhelper-root-privilege-escalation-vulnerability-a-deep-di.html Exploitation of

Mickey 114 Nov 30, 2022
Nova Wallet iOS - Next get mobile app for Polkadot & Kusama ecosystem

Next gen application for Polkadot & Kusama ecosystem, transparent & community-oriented, focused on convenient UX/UI, fast performance & security.

Novasama Technologies 15 Dec 15, 2022