KB_Soft Group - Software Vendor's Development Partner
Start page
Site map
Contacts
 

CPU Identifying Tool

 
   

Objectives

To obtain the most complete information on x86 processor that will be used to identify the processor, and measure its clock rate, as well.

 

Results

The present project resulted in CPU Identifying Tool getting the information about the x86 processor hardcoded into the CPU itself, as well as measuring its clock rate.

   

Technical peculiarities

The most reliable piece of information used to identify the processor is the one hardcoded into the silicon chip during the manufacturing. It can be obtained by means of the CPUID instruction. This instruction is accessible on some models of the 486 processors and later. That is the information the CPU Identifying Tool gets and grants to the external utility for interpretation (see CPU Identification Scenarios Interpreter). To measure the clock rate, the Timestamp Counter is used that is a processor built-in clock counter. The use of etalon calculations does not fit for this purpose, since it depends on the system performance as a whole and is very sensitive to operating system task switching. Using
  the Timestamp Counter and a high-accuracy timer makes it possible to measure the actual clock rate of a CPU even under the multitask operating system (it was necessary to provide the time measurement and TSC reading during just one quant of the processor time). This is the approach that was implemented. To avoid fluctuation noise during multiple clock rate measurements (it was a requirement, as it was supposed to use the data for Hardware changes tracking), the measurement result was adjusted according to the etalon clock rate table. The etalon rates for that table were obtained from the analysis of AMD and Intel companies' documentation, in which the CPUs of these vendors were described.