Return to site

Mac Os X For Intel Processor

broken image


Shop for mac os x at Best Buy. Find low everyday prices and buy online for delivery or in-store pick-up. Processor Model. Intel Core i3 Intel Core i3. Mac OS X Tiger (version 10.4) is the fifth major release of Mac OS X, Apple's desktop and server operating system for Mac computers. Tiger was released to the public on April 29, 2005 for US$129.95 as the successor to Mac OS X 10.3 Panther.Some of the new features included a fast searching system called Spotlight, a new version of the Safari web browser, Dashboard, a new 'Unified' theme,. Using the Intel® Power Gadget API on Mac OS X. Intel® Power Gadget for Mac. is a GUI application that provides real-time data.

Download

Development Team

  • Windows*: Joe Olivas, Timo Kleimola, Mark Price, Timothy McKay
  • MacOS*: Patrick Konsor

Previous Contributors

  • Windows*: Seung-Woo Kim, Karthik Krishnan, Vardhan Dugar, Joseph Jin-Sung Lee, Jun De Vega

Introduction

Intel® Power Gadget is a software-based power usage monitoring tool enabled for Intel® Core™ processors (from 2nd Generation up to 10th Generation Intel® Core™ processors). Intel® Atom™ processors are not supported. It is supported on Windows* and macOS* and includes an application, driver, and libraries to monitor and estimate real-time processor package power information in watts using the energy counters in the processor. With this release, we are providing functionality to evaluate power information on various platforms including notebooks, desktops and servers. Windows 7* and 32-bit versions of the Intel® Power Gadget for Windows* has ceased development from 3.0.7. Starting with version 3.5 and going forward, only the 64-bit version and Windows 8* will be supported.

Background

Traditional methods to estimate power/energy usage of the processor has always been a cumbersome task that included special purpose tools or instrumentation on the platform along with third party equipment. The motivation for the tool was to assist end-users, ISV's, OEM's, developers, and others interested in a more precise estimation of power from a software level without any H/W instrumentation.

New Features

In version 3.0 there are additional features that include estimation of power on multi-socket systems as well as externally callable APIs to extract power information within sections of code. The multi-socket support essentially evaluates the Energy MSR on a per-socket basis and provides an estimate of power draw per socket. The API layer is a set of libraries and dlls that can be called and offers the flexibility to build the tool within code sections of an application. Latest release also includes support for Windows 10*.

Brief Description (Windows*)

Intel® Power Gadget 3.5 consists of the following components. Set of driver and libraries which access and post process the processor energy counter to calculate the power usage in Watts, temperate in Celsius and frequency in GHz (default install directory will be ~Program FilesIntelPower Gadget 3.5). A command line version of the tool (PowerLog3.0.exe) is also included

System Requirements (Windows*)

  • Windows 8*
  • Windows 10*
  • Windows Server 2008, Windows Server 2012
  • Microsoft .NET* Framework 4
  • Microsoft Visual C++ 2017 Redistributable package
  • 2nd Generation Intel® Core™ Processor or later, older processors not supported
    • Single socket
    • Multi-socket

System Requirements (MacOS*)

  • macOS* 10.11 or later
  • 2nd Generation Intel® Core™ processor or later

Known Limitations / Issues

  • Graphs will not appear if your processor does not have the appropriate hardware counters
  • Discrete graphics cards are not supported and GPU graphs will not appear unless Intel graphics is in use
  • Windows 7* supported builds are below in the Archive section

Installation / Setup (Windows*)

  1. Run the msi package as an administrator. Accept the UAC, if one appears
  2. Follow the installer prompt instructions to complete installation
    1. .Net Framework 4 (will automatically be downloaded from Microsoft* site if not yet installed in your system) needs Internet connection
    2. Microsoft* Visual C++ 2017 Redistributable Package (will automatically get installed if not yet installed)

Installation / Setup (macOS*)

  1. Double click the downloaded DMG (Intel Power Gadget.dmg)
  2. Double click the package (Install Intel Power Gadget.pkg)
  3. Follow the installer prompt instructions to complete installation

On recent macOS versions, after installation users need to explicitly allow the Power Gadget driver to load:

  1. Open System Preferences, and click on 'Security and Privacy'
  2. Click the lock at the bottom of the page to unlock changes
  3. Click 'Allow' to allow system software from Intel Corporation:
  4. Restart your computer to apply the changes

On macOS Catalina (10.15), users may need to perform additional steps to enable the Power Gadget driver to automatically load (this is due to a bug in macOS).

  1. Open the Terminal application
  2. Enter the following command, and press Enter (requires a password to complete):
  3. Restart your computer to apply the changes

Usages (Windows*)

Common use of Intel® Power Gadget is to monitor energy usage of the processor

  • Provides processor power (Watts), temperature (Celsius) and frequency (MHz) in real-time via graph displayed in the GUI
  • Let you log the power and frequency measurements and save it in a csv format.
  • Double click on the desktop shortcut and the GUI will launch
  • Drag to move the GUI.
  • Right click the GUI and a pop-up menu will show up allowing you to choose options or close the application. Options have the following parameters. Click 'Start Log' button in the GUI to start logging. Press the same button 'Stop Log' to stop logging. While it's logging, red label 'REC' will blink in the power chart area.
  • You can choose to add time-stamp to the log file name or not.
  • You can choose the log file name.
  • You can choose to resize the GUI from 100% to 300% by dragging the slider and testing the new size with the 'Apply Size' button and accept the changes by pressing 'Ok'.
  • Screen Update Resolution lets you change how often the GUI is updated at runtime. This may range from 50 ms to 1000 ms. (Default set to 1000 ms)
  • Log Sampling Resolution lets you change the logging sampling resolution ranging from 1 ms to 1000 ms. (Default set to 100 ms)
  • In a multi-socket system, you can choose which package information to display in the GUI. The log will record all package information in a csv file.
  • Click 'Start Log' button in the GUI to start logging. Press the same button 'Stop Log' to stop logging. While it's logging, red label 'REC' will blink in the power chart area

Using Intel® Power Gadget 3.0 in a script

In order to start and stop the logging in a script, first launch the GUI as usual.

  • At the beginning of the script, call 'IntelPowerGadget.exe -start' and it will trigger the logging in the GUI.
  • At the end of the script, call 'IntelPowerGadget.exe -stop' and it will stop the logging.
Mac processors comparison

The parameters for the log are based on the options set in the GUI.

Mac Processor List

PowerLog3.0

PowerLog3.0.exe is the command line version of Intel® Power Gadget in logging power usage

Usage:

  • Log power data to logfile for a period of time:
  • Start a command a log power data to logfile until the command finish:

Logfile data

Logfile will include the elapsed timed, package power limit, processor frequency, GT frequency, processor temperature, average and cumulative power of the processor

  • Processor Energy (Total energy of the processor) = IA Energy + GT Energy (if applicable) + Others (not measured)
  • IA Energy (Energy of the CPU/processor cores)
  • GT Energy (Energy of the processor graphics) – If applicable , some processors for desktops and servers don't have it or may have use discrete graphics
Mac os x for intel processors

Only works on 2nd Generation Intel® Core™ processor family or newer. Atom processors not yet supported.

Use only 32-bit installer for 32-bit OS and 64-bit installer for 64-bit OS

Application may hang after running for a long period of time (just close and restart application)

Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.

This document contains information on products in the design phase of development.

All products, platforms, dates, and figures specified are preliminary based on current expectations, and are subject to change without notice. All dates specified are target dates, are provided for planning purposes only and are subject to change.

This document contains information on products in the design phase of development. Do not finalize a design with this information. Revised information will be published when the product is available. Verify with your local sales office that you have the latest datasheet before finalizing a design.

Code names featured are used internally within Intel to identify products that are in development and not yet publicly announced for release. Customers, licensees and other third parties are not authorized by Intel to use code names in advertising, promotion or marketing of any product or services and any such use of Intel's internal code names is at the sole risk of the user.

Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and other countries.

*Other names and brands may be claimed as the property of others.

Copyright © 2019, Intel Corporation. All rights reserved.

Intel® Power Gadget also provides a C/C++ Application Programming Interface (API) for accessing this power and frequency data in your program; the API is supported on Windows and Mac OS X. For more information on the API's, see:

For Mac Using the Intel® Power Gadget API on Mac OS X

For Windows Using the Intel® Power Gadget API on Windows

End User License Agreement included in Windows* download

Notices

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.

UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR.

Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked 'reserved' or 'undefined.' Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.

The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.

Using the Intel® Power Gadget API on Mac OS X*

Intel® Power Gadget for Mac* is a GUI application that provides real-time data on processor frequency and estimated processor power, and can log frequency, power, energy, and temperature data over time. Intel® Power Gadget also provides a C Application Programming Interface (API) for accessing this power and frequency data in your program. Intel® Power Gadget is also available for Windows* and Linux*. Intel® Power Gadget and the API are only supported on 2nd generation and later Intel® Core processors, because previous processors do not support the necessary power Model Specific Registers (MSRs).

Intro to the Intel® Power Gadget API

The Intel® Power Gadget API is a framework (IntelPowerGadget .framework) that provides a C interface for reading current estimated processor power, current processor frequency, base frequency, thermal design power (TDP), current temperature, maximum temperature, timestamps, and elapsed time. It also provides logging functionality.

What You Need

Processor

To use the API you'll need the Intel® Power Gadget for Mac* driver and framework. These are included in the Intel® Power Gadget installer, or as a standalone API installer. The driver is installed to /System/Library/Extensions/EnergyDriver.kext, and the framework is installed to /Library/Frameworks/IntelPowerGadget.framework.

To link with the Intel® Power Gadget API you simply need to include
–framework IntelPowerGadget in your link command.

Using the Intel® Power Gadget API

To begin you must initialize the library by calling IntelEnergyLibInitialize.

The most common use of the Intel® Power Gadget API is to read samples with ReadSample. The API supports sampling of specific Model Specific Registers (MSRs). Meta data on the sampled MSRs can be queried with GetNumMsrs, GetMsrName, and GetMsrFunc. GetNumMsrs returns the number of sampled MSRs; MSRs are given an ID from 0 to n-1, where n is the number returned by GetNumMsrs. The MSR ID is used to get data for a specific MSR with functions GetPowerData, GetMsrName, and GetMsrFunc.

Calling GetPowerData for each sampled MSR will provide you with the relevant data from that MSR. An MSR's function (from GetMsrFunc) determines the amount and meaning of data returned from GetPowerData. MSRs with function 0 (frequency) return 1 result, which represents the frequency in megahertz. MSRs with function 1 (power) return 3 results, which represent the average power in watts, cumulative energy in Joules, and cumulative energy in milliwatt-hours. MSRs with function 2 (temperature) return 1 result, which represents the temperature in degrees Celsius. The Intel® Power Gadget API currently supports sampling with the following MSRs: processor frequency, estimated processor power, and package temperature. The currently supported MSR functions are: frequency (0), power (1), temperature (2).

ReadSample also reads the system time and Time Stamp Counter (TSC) at the time the sample is read. These values are available via GetSysTime and GetRDTSC; the time interval between samples is available (in seconds) via GetTimeInterval. Note that you must call ReadSample prior to calling GetPowerData, GetRDTSC, and GetTimeInterval, and that you must call ReadSample twice before calling GetTimeInterval and before getting power data (as opposed to frequency or temperature data) from GetPowerData, as they are computed using the difference between two samples.

The Intel® Power Gadget API also supports reading generic MSRs with ReadMSR, which returns the raw data from the MSR. However, note that specifying an invalid MSR address can crash your system and could potentially corrupt it. There is no method to determine if an MSR address is valid. The API supports reading common individual MSRs without having to specify the MSR address or read an entire sample; the supported functions are: GetIAFrequency, GetMaxTemperature, GetTemperature, and GetTDP.

Buy 2 Pack SAFFUN SNES Retro USB Controller Gamepad Joystick, USB PC Super Classic Controller Joypad Gamestick for Windows PC MAC Linux Raspberry Pi 3 Sega Genesis Higan: Gamepads & Standard Controllers - Amazon.com FREE DELIVERY possible on eligible purchases. 2) iNNEXT Retro SNES USB Controller Gamepad. This classic SNES gamepad from iNNEXT is a perfect controller for the Windows, Mac, and Raspberry Pi 3 users. It even works well with gaming emulators like NES, SNES9x, Higan, ZSNES, Sega Genesis, RetroArch, etc. Specifications and features of SNES USB Gamepad from iNNEXT are. Usb snes controller for mac. 2 Pack SAFFUN SNES Retro USB Controller Gamepad Joystick, USB PC Super Classic Controller Joypad Gamestick for Windows PC MAC Linux Raspberry Pi 3 Sega Genesis Higan 4.3 out of. I use usb.)-12MHz Crystal osscilator-2 3.6 volt zener diode-1.5K Resistor (anywhere from 1.3K to 1.7K should work)-2 68ohm resistor (anywhere from 60 to 75 should work)-USB male cable-SNES controller (first party works better. Wires colors match guide.)-Small wire. Super NES® Classic Edition. USB Controller for PC/ Mac® - Tomee. Featuring an eight-way directional pad and six digital buttons, the Tomee USB Controller lets you play classic arcade and puzzle games on your PC with ease. Its USB connectivity makes installation a snap on a PC or a Mac®.

The sample data from ReadSample can be logged to a file. Logging can be enabled at any time by calling StartLog, and subsequently disabled by calling StopLog. Note that the logged data isn't written until StopLog is called. Both StartLog and StopLog cause an internal call to ReadSample.

Sampling Considerations

The frequency at which you read samples may have an impact on the accuracy of data. The instantaneous processor frequency can change significantly from moment to moment. Frequency data may be more meaningful if you sample often and average the frequency samples over time. The processor power is calculated by taking the difference between two samples, thus a shorter interval between samples will result in more fine-grained power data. However, the frequency at which you read samples may also impact the performance of the system. Using a very short frequency (e.g. less than 20 milliseconds) may result in significant overhead, and may also increase the power consumption of the system, both of which may reduce the usefulness of the data. The Intel® Power Gadget application uses a default sampling frequency of 50 milliseconds, and updates the GUI with averaged frequency and power data every second.

Example

Download the Xcode project for this example application here.

API Reference

Mac Os X For Intel Processor

Initializes the library and connects to the driver.

Returns the number of CPU packages on the system.

Returns the number of supported MSRs for bulk reading and logging.

Returns in szName the name of the MSR specified by iMsr. Note that the Windows version uses wchar_t.

Returns in pFuncID the function of the MSR specified by iMsrCurrently supported functions are: 0 = frequency, 1 = power, 2 = temperature.

Reads the MSR specified by address on the package specified by iNode, and returns the value in value. Warning: Specifying an invalid MSR address can crash your system and could potentially corrupt it. There is no method to determine if an MSR address is valid.

Mac Processors Comparison

Reads the processor frequency MSR on the package specified by iNode, and returns the frequency in MHz in freqInMHz.

Reads the package power info MSR on the package specified by iNode, and returns the TDP in watts in TDP.

Reads the temperature target MSR on the package specified by iNode, and returns the maximum temperature in degrees Celsius in degreeC.

Reads the temperature MSR on the package specified by iNode, and returns the current temperature in degrees Celsius in degreeC.

Reads sample data from the driver for all the supported MSRs. Note that two calls to ReadSample are necessary to calculate power data, as power data is calculated using the difference between two samples.

Returns the system time as of the last call to ReadSample. The data returned in pSysTime is structured as follows:

pSysTime[63:32] = time in seconds

pSysTime[31:0] = time in nanoseconds

Returns in pTSC the processors time stamp counter as of the last call to ReadSample. Note that this function does not execute the rdtsc instruction directly, but instead returns the TSC from when the last sample was read.

Returns in pOffset the time in seconds that has elapsed between the two most recent calls to ReadSample.

Returns in pBaseFrequency the advertised processor frequency for the package specified by iNode.

Returns the data collected by the most recent call to ReadSample. The returned data is for the data on the package specified by iNode, from the MSR specified by iMSR. The data is returned in pResult, and the number of double results returned in pResult is returned in nResult. Frequency MSRs (function 0) return 1 result, which represents the frequency in megahertz. Power MSRs (function 1) return 3 results, which represent the average power in watts, cumulative energy in Joules, and cumulative energy in milliwatt-hours. Temperature MSRs (function 2) return 1 result, which represents the temperature in degrees Celsius.

Apple Intel Processors

Processor

The parameters for the log are based on the options set in the GUI.

Mac Processor List

PowerLog3.0

PowerLog3.0.exe is the command line version of Intel® Power Gadget in logging power usage

Usage:

  • Log power data to logfile for a period of time:
  • Start a command a log power data to logfile until the command finish:

Logfile data

Logfile will include the elapsed timed, package power limit, processor frequency, GT frequency, processor temperature, average and cumulative power of the processor

  • Processor Energy (Total energy of the processor) = IA Energy + GT Energy (if applicable) + Others (not measured)
  • IA Energy (Energy of the CPU/processor cores)
  • GT Energy (Energy of the processor graphics) – If applicable , some processors for desktops and servers don't have it or may have use discrete graphics

Only works on 2nd Generation Intel® Core™ processor family or newer. Atom processors not yet supported.

Use only 32-bit installer for 32-bit OS and 64-bit installer for 64-bit OS

Application may hang after running for a long period of time (just close and restart application)

Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.

This document contains information on products in the design phase of development.

All products, platforms, dates, and figures specified are preliminary based on current expectations, and are subject to change without notice. All dates specified are target dates, are provided for planning purposes only and are subject to change.

This document contains information on products in the design phase of development. Do not finalize a design with this information. Revised information will be published when the product is available. Verify with your local sales office that you have the latest datasheet before finalizing a design.

Code names featured are used internally within Intel to identify products that are in development and not yet publicly announced for release. Customers, licensees and other third parties are not authorized by Intel to use code names in advertising, promotion or marketing of any product or services and any such use of Intel's internal code names is at the sole risk of the user.

Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and other countries.

*Other names and brands may be claimed as the property of others.

Copyright © 2019, Intel Corporation. All rights reserved.

Intel® Power Gadget also provides a C/C++ Application Programming Interface (API) for accessing this power and frequency data in your program; the API is supported on Windows and Mac OS X. For more information on the API's, see:

For Mac Using the Intel® Power Gadget API on Mac OS X

For Windows Using the Intel® Power Gadget API on Windows

End User License Agreement included in Windows* download

Notices

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.

UNLESS OTHERWISE AGREED IN WRITING BY INTEL, THE INTEL PRODUCTS ARE NOT DESIGNED NOR INTENDED FOR ANY APPLICATION IN WHICH THE FAILURE OF THE INTEL PRODUCT COULD CREATE A SITUATION WHERE PERSONAL INJURY OR DEATH MAY OCCUR.

Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked 'reserved' or 'undefined.' Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.

The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.

Using the Intel® Power Gadget API on Mac OS X*

Intel® Power Gadget for Mac* is a GUI application that provides real-time data on processor frequency and estimated processor power, and can log frequency, power, energy, and temperature data over time. Intel® Power Gadget also provides a C Application Programming Interface (API) for accessing this power and frequency data in your program. Intel® Power Gadget is also available for Windows* and Linux*. Intel® Power Gadget and the API are only supported on 2nd generation and later Intel® Core processors, because previous processors do not support the necessary power Model Specific Registers (MSRs).

Intro to the Intel® Power Gadget API

The Intel® Power Gadget API is a framework (IntelPowerGadget .framework) that provides a C interface for reading current estimated processor power, current processor frequency, base frequency, thermal design power (TDP), current temperature, maximum temperature, timestamps, and elapsed time. It also provides logging functionality.

What You Need

To use the API you'll need the Intel® Power Gadget for Mac* driver and framework. These are included in the Intel® Power Gadget installer, or as a standalone API installer. The driver is installed to /System/Library/Extensions/EnergyDriver.kext, and the framework is installed to /Library/Frameworks/IntelPowerGadget.framework.

To link with the Intel® Power Gadget API you simply need to include
–framework IntelPowerGadget in your link command.

Using the Intel® Power Gadget API

To begin you must initialize the library by calling IntelEnergyLibInitialize.

The most common use of the Intel® Power Gadget API is to read samples with ReadSample. The API supports sampling of specific Model Specific Registers (MSRs). Meta data on the sampled MSRs can be queried with GetNumMsrs, GetMsrName, and GetMsrFunc. GetNumMsrs returns the number of sampled MSRs; MSRs are given an ID from 0 to n-1, where n is the number returned by GetNumMsrs. The MSR ID is used to get data for a specific MSR with functions GetPowerData, GetMsrName, and GetMsrFunc.

Calling GetPowerData for each sampled MSR will provide you with the relevant data from that MSR. An MSR's function (from GetMsrFunc) determines the amount and meaning of data returned from GetPowerData. MSRs with function 0 (frequency) return 1 result, which represents the frequency in megahertz. MSRs with function 1 (power) return 3 results, which represent the average power in watts, cumulative energy in Joules, and cumulative energy in milliwatt-hours. MSRs with function 2 (temperature) return 1 result, which represents the temperature in degrees Celsius. The Intel® Power Gadget API currently supports sampling with the following MSRs: processor frequency, estimated processor power, and package temperature. The currently supported MSR functions are: frequency (0), power (1), temperature (2).

ReadSample also reads the system time and Time Stamp Counter (TSC) at the time the sample is read. These values are available via GetSysTime and GetRDTSC; the time interval between samples is available (in seconds) via GetTimeInterval. Note that you must call ReadSample prior to calling GetPowerData, GetRDTSC, and GetTimeInterval, and that you must call ReadSample twice before calling GetTimeInterval and before getting power data (as opposed to frequency or temperature data) from GetPowerData, as they are computed using the difference between two samples.

The Intel® Power Gadget API also supports reading generic MSRs with ReadMSR, which returns the raw data from the MSR. However, note that specifying an invalid MSR address can crash your system and could potentially corrupt it. There is no method to determine if an MSR address is valid. The API supports reading common individual MSRs without having to specify the MSR address or read an entire sample; the supported functions are: GetIAFrequency, GetMaxTemperature, GetTemperature, and GetTDP.

Buy 2 Pack SAFFUN SNES Retro USB Controller Gamepad Joystick, USB PC Super Classic Controller Joypad Gamestick for Windows PC MAC Linux Raspberry Pi 3 Sega Genesis Higan: Gamepads & Standard Controllers - Amazon.com FREE DELIVERY possible on eligible purchases. 2) iNNEXT Retro SNES USB Controller Gamepad. This classic SNES gamepad from iNNEXT is a perfect controller for the Windows, Mac, and Raspberry Pi 3 users. It even works well with gaming emulators like NES, SNES9x, Higan, ZSNES, Sega Genesis, RetroArch, etc. Specifications and features of SNES USB Gamepad from iNNEXT are. Usb snes controller for mac. 2 Pack SAFFUN SNES Retro USB Controller Gamepad Joystick, USB PC Super Classic Controller Joypad Gamestick for Windows PC MAC Linux Raspberry Pi 3 Sega Genesis Higan 4.3 out of. I use usb.)-12MHz Crystal osscilator-2 3.6 volt zener diode-1.5K Resistor (anywhere from 1.3K to 1.7K should work)-2 68ohm resistor (anywhere from 60 to 75 should work)-USB male cable-SNES controller (first party works better. Wires colors match guide.)-Small wire. Super NES® Classic Edition. USB Controller for PC/ Mac® - Tomee. Featuring an eight-way directional pad and six digital buttons, the Tomee USB Controller lets you play classic arcade and puzzle games on your PC with ease. Its USB connectivity makes installation a snap on a PC or a Mac®.

The sample data from ReadSample can be logged to a file. Logging can be enabled at any time by calling StartLog, and subsequently disabled by calling StopLog. Note that the logged data isn't written until StopLog is called. Both StartLog and StopLog cause an internal call to ReadSample.

Sampling Considerations

The frequency at which you read samples may have an impact on the accuracy of data. The instantaneous processor frequency can change significantly from moment to moment. Frequency data may be more meaningful if you sample often and average the frequency samples over time. The processor power is calculated by taking the difference between two samples, thus a shorter interval between samples will result in more fine-grained power data. However, the frequency at which you read samples may also impact the performance of the system. Using a very short frequency (e.g. less than 20 milliseconds) may result in significant overhead, and may also increase the power consumption of the system, both of which may reduce the usefulness of the data. The Intel® Power Gadget application uses a default sampling frequency of 50 milliseconds, and updates the GUI with averaged frequency and power data every second.

Example

Download the Xcode project for this example application here.

API Reference

Initializes the library and connects to the driver.

Returns the number of CPU packages on the system.

Returns the number of supported MSRs for bulk reading and logging.

Returns in szName the name of the MSR specified by iMsr. Note that the Windows version uses wchar_t.

Returns in pFuncID the function of the MSR specified by iMsrCurrently supported functions are: 0 = frequency, 1 = power, 2 = temperature.

Reads the MSR specified by address on the package specified by iNode, and returns the value in value. Warning: Specifying an invalid MSR address can crash your system and could potentially corrupt it. There is no method to determine if an MSR address is valid.

Mac Processors Comparison

Reads the processor frequency MSR on the package specified by iNode, and returns the frequency in MHz in freqInMHz.

Reads the package power info MSR on the package specified by iNode, and returns the TDP in watts in TDP.

Reads the temperature target MSR on the package specified by iNode, and returns the maximum temperature in degrees Celsius in degreeC.

Reads the temperature MSR on the package specified by iNode, and returns the current temperature in degrees Celsius in degreeC.

Reads sample data from the driver for all the supported MSRs. Note that two calls to ReadSample are necessary to calculate power data, as power data is calculated using the difference between two samples.

Returns the system time as of the last call to ReadSample. The data returned in pSysTime is structured as follows:

pSysTime[63:32] = time in seconds

pSysTime[31:0] = time in nanoseconds

Returns in pTSC the processors time stamp counter as of the last call to ReadSample. Note that this function does not execute the rdtsc instruction directly, but instead returns the TSC from when the last sample was read.

Returns in pOffset the time in seconds that has elapsed between the two most recent calls to ReadSample.

Returns in pBaseFrequency the advertised processor frequency for the package specified by iNode.

Returns the data collected by the most recent call to ReadSample. The returned data is for the data on the package specified by iNode, from the MSR specified by iMSR. The data is returned in pResult, and the number of double results returned in pResult is returned in nResult. Frequency MSRs (function 0) return 1 result, which represents the frequency in megahertz. Power MSRs (function 1) return 3 results, which represent the average power in watts, cumulative energy in Joules, and cumulative energy in milliwatt-hours. Temperature MSRs (function 2) return 1 result, which represents the temperature in degrees Celsius.

Apple Intel Processors

Starts saving the data collected by ReadSample. When StopLog is called, this data will be written to the file specified by szFileName. Note that the Windows version uses wchar_t. StartLog will cause an initial call to ReadSample.

Stops saving data and writes all saved data to the file specified by the call to StartLog. StopLog will cause a final call to ReadSample.





broken image