2010-10-25 12 views
8

Tutte le CPU Intel nell'ultimo decennio (almeno) includono un set di monitor delle prestazioni che contano una varietà di eventi. Le ultime CPU Intel, Core i3, i5 e i7 (ovvero Nehalem) forniscono un meccanismo per contare le istruzioni per clock (IPC)? Se sì, come vengono utilizzati?Le CPU Core i3/5/7 forniscono un meccanismo per misurare l'IPC?

Se ciò è possibile, probabilmente scriverò il codice per questo in Assembly, ma anche le chiamate di sistema Windows o Linux potrebbero risultare utili.

risposta

3

Sì, Vtune di Intel (linux e windows) può misurare l'IPC.

Se si desidera misurare da solo con contatori precisi per una parte del codice, è necessario utilizzare alcune API di prestazioni come PAPI o perfctr (entrambi per linux).

Essi utilizzano i contatori delle prestazioni hardware, descritte nei manuali di Intel http://www.intel.com/products/processor/manuals/

volume 3D, capitolo 30 & Appendice A. http://www.intel.com/Assets/PDF/manual/253669.pdf

Vtune utilizza il rapporto di "Istruzioni pensione" e "clockticks non-sonno" per calcolare l'IPC ("Cicli per istruzioni ritirate"). Per Core2 i contatori delle prestazioni utilizzati sono: "CPU_CLK_UNHALTED.CORE", "INST_RETIRED.ANY"

Questo contatori sono gli stessi per tutti i core CPU *: Appendice A1 di 3B Volume, page384:

Table A-1. Architectural Performance Events 

Event | Event Mask Mnemonic | Umask | Description 
num. 
3CH | UnHalted Core Cycles| 00H | Unhalted core cycles 
C0H | Instruction Retired | 00H | Instruction retired 
+0

e per ottenere alcune statistiche (non la misurazione precisa) è possibile utilizzare VTune in modalità di campionamento o Oprofile. – osgx

-3

IPC sta diventando privo di significato con il ritaglio corrente di comandi a istruzioni multiple per ora.

Da i7 documento propaganda:

Il chip vantava un nucleo più ampia esecuzione , permettendo al processore di completare fino a quattro istruzioni complete simultaneamente, insieme a migliorare una più pipeline efficiente a 14 stadi IPC (istruzioni per ciclo di clock) in rispetto al Pentium 4/D

Quei conta IPC tutto dipende dal tipo di codice che si sta eseguito.

+5

Ecco perché dovresti * MISURARLO *, invece di cercarlo nella scheda tecnica della CPU. –