Veselin Georgiev
44c313126b
Added cpu_clock_by_ic() function to measure cpu clock using instruction counting. Still not translated to MSVC, and isn't tested on CPUs other than Core i7 (but there it works beatifully). Bumped version to 0.1.3.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@77 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2010-04-20 09:01:07 +00:00
Veselin Georgiev
af2c364e85
Ported to OSX
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@76 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-10-27 16:47:26 +00:00
Veselin Georgiev
519f984578
Added MPERF and APERF MSR incrementation speed calculation using a 10ms delay loop
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@75 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-10-05 01:08:36 +00:00
Veselin Georgiev
b0092bd84e
Added support for reading the max multiplier
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@74 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-10-02 09:14:45 +00:00
Veselin Georgiev
277eb73da7
Fixed a bug in Linux MSR readout. The address of the MSR is the msr_index, not msr_index*8
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@73 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-10-02 07:45:17 +00:00
Veselin Georgiev
4729960411
Basic Linux support, untested
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@72 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-10-01 20:55:01 +00:00
Veselin Georgiev
e4920d79b0
Added cpu_msrinfo() function and implemented a few test info entries
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@71 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-30 17:20:52 +00:00
Veselin Georgiev
0bd7a6d83f
The logic behind the big IFDEF at msrdriver.c was wrong. You could compile a 32-bit build and run it on 64-bit windows, and in this case you will still need the 64-bit driver. So the platform detection is made runtime, and the correct driver for the platform is extracted on demand.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@70 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-30 15:27:39 +00:00
Veselin Georgiev
e96082c67f
Added support for reading MSRs through dedicated driver on Win32
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@69 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-30 11:25:14 +00:00
Veselin Georgiev
432a585c78
Moved the checking for stdint to the corresponding header
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@68 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-26 23:51:11 +00:00
Veselin Georgiev
3578314b9b
Added support for Athlon II Propus
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@67 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-24 20:39:04 +00:00
Veselin Georgiev
b089617cca
Forgot to include ctype.h
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@66 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 03:47:14 +00:00
Veselin Georgiev
831962cb07
Fix for a few badly detected Yonahs. They read as Unknown Yonah. Added a test-case as well
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@65 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 03:44:19 +00:00
Veselin Georgiev
a8e1da64d3
Fixed a typo for Athlon X2 (Kuma) and added such an entry to the test stash
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@64 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 03:29:06 +00:00
Veselin Georgiev
7251690507
Fixed a regression. Core2 Quad (Q66xx series) incorrectly recognized as a Xeon
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@63 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 03:01:31 +00:00
Veselin Georgiev
69312e9741
Cleared problems with the Phenom/PhenomII line. Now PhenomIIs are recognized as such. Also, Sempron and Athlon II branded derivates of the Phenom line are properly recognized
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@62 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 01:28:33 +00:00
Veselin Georgiev
decdd2e001
Added detection for Xeon (Gainestown) and Conroe-L (Celeron). Dual-core Conroe-L's are renamed to Conroe-L (Allendale).
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@61 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-09-10 01:04:10 +00:00
Veselin Georgiev
103bb027c6
Support for Nehalem Xeons added
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@60 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-08-26 03:57:14 +00:00
Veselin Georgiev
8f1f12828d
Added project files for Visual Studio 2003 (VC 71), added an option to build libcpuid as a DLL.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@59 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-08-19 21:43:56 +00:00
Veselin Georgiev
c4861cdd35
Renamed VC project files so that project for versions lower than Visual C++ 2008 can be made.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@58 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-08-19 21:14:39 +00:00
Veselin Georgiev
59cf96984d
Fixed recognition of Core i7. It was required to obtain the extended CPU topology information from CPUID leaf 0xb, so 4 more ints are added to cpu_raw_data_t. This, in turn, breaks binary compatibility with version 0.1.0, so version is increased to 0.1.1 as well. The new CPUID serialization is backward- and forward-compatible with version 0.1.0, provided that the CPU doesn't have leaf 0xb. In some sense it might be viewed incompatible as well. Also added the guilty test case to the test stash
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@57 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-07-06 18:33:56 +00:00
Veselin Georgiev
35a9c794b2
Added a Makefile for x86 (commandline build). Using _vsnprintf when _MSC_VER is defined unconditionally, since the MSVC 2003 doesn't have vsnprintf.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@56 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-06-18 15:32:44 +00:00
Veselin Georgiev
f1e141b751
Again, exec_cpiud->exec_cpuid, this time in .c files. It's funny how a typo like this could exist this long :)
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@55 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-27 01:54:48 +00:00
Veselin Georgiev
677c04ee67
Added Makefile for Win64
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@54 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-27 01:43:13 +00:00
Veselin Georgiev
94ab2ea0f7
Ported to win64. Assembly bits are taken out to external .asm file. Passes tests on Windows 2003 Server x64
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@53 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-27 01:42:23 +00:00
Veselin Georgiev
77f55d2f82
fixed a typo - exec_cpiud -> exec_cpuid
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@52 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-27 01:40:08 +00:00
Veselin Georgiev
b20d0254de
Added the unit tests to the tarball distribution
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@51 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-13 18:33:28 +00:00
Veselin Georgiev
1fe4c2150d
Adding Visual studio project files; adding the 'make test' target
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@50 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-10 18:18:13 +00:00
Veselin Georgiev
690c4e431b
Fixed the detection on Mac Mini with Yonah/Core Duo CPU - was incorrectly recognized as Allendale
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@49 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-08 17:37:58 +00:00
Veselin Georgiev
1fe1729a1f
Added CPU clock OS detection routine for Mac OS X
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@48 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-08 16:38:39 +00:00
Veselin Georgiev
82c5d8f66a
cpuid_get_cpu_list and cpuid_free_cpu_list were not listed in libcpuid.sym, fixed
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@47 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2009-01-08 16:38:00 +00:00
Veselin Georgiev
9f61c6c8e9
Documented the cpu listing functions better, tidy up cpuid_tool help
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@46 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-29 16:11:52 +00:00
Veselin Georgiev
5ae4a8dd8e
Added known-cpu-list function. Rearranged Intel CPU list to be better chronologically ordered
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@45 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-27 15:46:03 +00:00
Veselin Georgiev
6164e2f5ad
Fixed a "possible trigraph" warning
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@44 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-15 20:06:00 +00:00
Veselin Georgiev
9b38de1383
Added cache sizes to Phenom code-names, added the newest Phenoms (family 0x10, model 0x4), added Mobile Pentium II Tonga
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@43 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-15 15:08:42 +00:00
Veselin Georgiev
aca3658e42
Small additions to consistency-checking code
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@42 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-15 14:54:39 +00:00
Veselin Georgiev
32425d7937
Adding correct recognition for Mobile Sempron 64s, added some additional sanity checking in check-consistency
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@41 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-15 14:11:46 +00:00
Veselin Georgiev
f986629b65
Reorganization of CPU databases, added correct recognition of most Core-based Xeons, fixed a few other misrecognitions
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@40 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-12 18:56:29 +00:00
Veselin Georgiev
e3d6f1b6ea
Fixed a lot of bugs in codename recognition of intel CPUs
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@39 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-10 16:50:43 +00:00
Veselin Georgiev
5a84778077
Added core codenames of most Athlon 64 and Athlon X2 CPUs
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@38 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-09 17:07:17 +00:00
Veselin Georgiev
8fa280cdbd
Ported to strict C
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@37 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-08 16:53:59 +00:00
Veselin Georgiev
a1395632fa
Fixed many bugreports. Correct recognition for some Core2 Xeons, some ConroeLs, Sempron Codenames, some A64 and A64X2 codenames.
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@36 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-08 16:52:01 +00:00
Veselin Georgiev
1070fc3f25
Added build-date field in serialized data
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@35 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-04 10:27:23 +00:00
Veselin Georgiev
da2eb29639
Fixed detection of Merom and other mobile Core2 arch
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@34 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-12-04 00:00:21 +00:00
Veselin Georgiev
f46fd2635e
Incorrect path in .pc file - fixed; Clarified documentation a bit
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@33 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-28 16:17:29 +00:00
Veselin Georgiev
abda939d02
Two more CPUs
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@32 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-21 19:54:18 +00:00
Veselin Georgiev
373fc03beb
Fixed a forgotten debugging option in cpu_clock()
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@31 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-21 19:07:55 +00:00
Veselin Georgiev
2fb7b0522b
cpuid_tool: Added --clock-os key to enable queries to cpu_clock_by_os()
...
rdtsc.c: Ported CPU clocking code to Win32, debugged Registry stuff
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@30 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-21 19:05:18 +00:00
Veselin Georgiev
9cf8005f3a
Removed C++ style comments; added CPU clock measuring code
...
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@29 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-21 18:48:11 +00:00
Veselin Georgiev
7774c94046
libcpuid: better support for Core 2 processors: Wolfdale, Penryn, Merom - more robust detection code
...
cpuid_tool: the --load flag didn't have any effect with queries; fixed
tests: added a trivial testing framework, added 7 tests
git-svn-id: https://svn.code.sf.net/p/libcpuid/code/HEAD/libcpuid@28 3b4be424-7ac5-41d7-8526-f4ddcb85d872
2008-11-21 16:45:46 +00:00