Spezialkommando, c't 17/2013 S. 172 
Intrinsics: RDTSCP, CLFLUSH, MFENCE 

Beispielprogramm timing.cpp 
mit Projektmappe fr Visual Studio 2012.


Timing.cpp ist ein Beispiel fr das Abstoppen mit __rdtscp() und __cpuid(), Lschen von Cacheinhalten mit _mm_clflush() 
und Leeren von Buffern mit  _mm_mfence();  

Es alloziert dazu per NUMA-API fr jeden Knoten eine Page von 4k und greift per SSE2 lesend von der aufgewhlten cpu aus (Eingabe: -c cpu, standardmig cpu 0) 
darauf zu. Um Einflsse vom Betriebssystem zu minimieren, luft die Messung mit Realtime-Prioritt. Noch genauer kann man 
die Messungen durchfhren, wenn man den Messkern von Hardware-Interrupts freistellt, etwa mit Microsofts Interrupt-Affinity Policy Configuration Tool. 

Viel Spa      

as
 
  