Get CPU info with pure Python 2 & 3
Project description
Py-cpuinfo gets CPU info with pure Python. Py-cpuinfo should work without any extra programs or libraries, beyond what your OS provides. It does not require any compilation(C/C++, assembly, et cetera) to use. Works on Linux, OS X, Windows, BSD, Solaris, Cygwin, and Haiku.
These approaches are used for getting info:
Windows Registry
/proc/cpuinfo
sysctl
dmesg
isainfo and kstat
Querying x86 CPUID register
Run as a script
$ python cpuinfo/cpuinfo.py Vendor ID: GenuineIntel Brand: Intel(R) Core(TM) i5-4440 CPU @ 3.10GHz Hz Advertised: 3.1000 GHz Hz Actual: 3.0794 GHz Hz Advertised Raw: (3100000000, 0) Hz Actual Raw: (3079444000, 0) Arch: X86_64 Bits: 64 Count: 4 Raw Arch String: x86_64 L2 Cache Size: 6144 KB L2 Cache Line Size: 0 L2 Cache Associativity: 0 Stepping: 3 Model: 60 Family: 6 Processor Type: 0 Extended Model: 0 Extended Family: 0 Flags: apic, clflush, cmov, constant_tsc, cx8, de, fpu, fxsr, ht, lahf_lm, lm, mca, mce, mmx, msr, mtrr, nopl, nx, pae, pat, pge, pni, pse, pse36, rdtscp, rep_good, sep, sse, sse2, ssse3, syscall, tsc, vme
Run as a library
from cpuinfo import cpuinfo # from installed with pip
#import cpuinfo # from path
# Have the library pick the best method for getting your CPU info
info = cpuinfo.get_cpu_info()
# Or use /proc/cpuinfo
#info = cpuinfo.get_cpu_info_from_proc_cpuinfo()
# Or use the Windows registry
#info = cpuinfo.get_cpu_info_from_registry()
# Or use sysctl
#info = cpuinfo.get_cpu_info_from_sysctl()
# Or use CPU CPUID register
#info = cpuinfo.get_cpu_info_from_cpuid()
# Print some CPU values
print('Vendor ID: {0}'.format(info['vendor_id']))
print('Brand: {0}'.format(info['brand']))
print('Hz Advertised: {0}'.format(info['hz_advertised']))
print('Hz Actual: {0}'.format(info['hz_actual']))
print('Hz Advertised Raw: {0}'.format(info['hz_advertised_raw']))
print('Hz Actual Raw: {0}'.format(info['hz_actual_raw']))
print('Arch: {0}'.format(info['arch']))
print('Bits: {0}'.format(info['bits']))
print('Count: {0}'.format(info['count']))
print('Flags: {0}'.format(', '.join(info['flags'])))
Bugs and Corrections
Please report a Bug if you suspect any of this information is wrong.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
py-cpuinfo-0.1.2.zip
(16.3 kB
view details)
py-cpuinfo-0.1.2.tar.gz
(13.3 kB
view details)
File details
Details for the file py-cpuinfo-0.1.2.zip.
File metadata
- Download URL: py-cpuinfo-0.1.2.zip
- Upload date:
- Size: 16.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f91b1c76d873be78270656ec8917602e93dcddc4e80a87b8234cd7387c58b07
|
|
| MD5 |
478b68e90490adb69c34705e37dd7020
|
|
| BLAKE2b-256 |
2843fd3982a6509a69afb11daa58a015296b97f49a36eebf33caea887d295807
|
File details
Details for the file py-cpuinfo-0.1.2.tar.gz.
File metadata
- Download URL: py-cpuinfo-0.1.2.tar.gz
- Upload date:
- Size: 13.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31dd962bb705aafd7d07072ddfc8fdb2b9e17dc47fd8ec96e1a4d0ef5a0ef3cc
|
|
| MD5 |
e0c7eef9209eb5b2c928341652deda19
|
|
| BLAKE2b-256 |
7023c046afd0f5c8a585e49a7a209ab7da1b61cd04a4908b0513fb9f54e2f99f
|