Last updated:
0 purchases
PyCPUID 0.4
Introduction
PyCPUID reads the information available from the CPUID assembly instruction and
makes it available to any Python program.
It could be used to decide on some codepath based on whether the target computer
supports SSE2.
import pycpuid
if pycpuid.HAS_SSE2:
import foobar_sse2 as foobar
else:
import foobar
It is not the goal of PyCPUID to provide a full report of all CPUID information
available. It’s merely a way to get raw access to the machine instruction from
within Python. Some functions are provided for translation to something human
readable, but this is far from complete. Full details on how to interpret the
raw data can be found in the application notes of Intel and AMD.
Installation
Package requires pip for installation.
pip install PyCPUID
If you’re doing this on Windows you’ll need to make sure you have a C++ compiler
installed and properly configured.
Using PyCPUID
There’s not much to it, really. PyCPUID is just a bunch of module constants.
Just import the module and access the constants. The HAS_FOOBAR constants
are Boolean flags to indicate whether the feature is available. The function
features() returns a list of all the available features as strings. There
are some other functions like vendor() and brand_string() you can use to
identify the CPU.
import pycpuid
print "has SSE2:", pycpuid.HAS_SSE2
print "all availabe features:", pycpuid.features()
print "brand string:", pycpuid.brand_string()
Get the Code
https://github.com/FlightDataServices/PyCPUID
Changes
0.4
Mostly PEP8 compliant.
0.3
Should now compile on 32-bit and 64-bit platforms.
Updated packaging and now uses SetupFixer.
Added documentation based on the original text from Bram.
0.2
The feature abbreviations now resemble the ones in the Intel and AMD
documentation.
features() is now a function and returns a list of strings, instead of
being a comma separated string.
Added some functions like vendor() and brand_string() as handy
wrappers.
PyCPUID is now a combination of a pure python module pycpuid.py and an
extension _pycpuid.c. The extension module is only responsible for the
actual cpuid call. All the fancy wrapper bits are implemented in Python.
Added gcc support. Using __cpuid intrinsic on MSVC to support x64.
0.1
Initial release.
To Do
Hopefully, nothing.
Credits
PyCPUID was written by Bram de Greve <[email protected]> and is maintained
by Flight Data Services, Ltd <[email protected]>.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.