RDTSC și RDTSCP în x86_64: Măsurarea Ciclurilor Reale de Ceas ale CPU în Assembly (x86_64)

Sintaxă
rdtsc
rdtscp

Instrucțiunile RDTSC (Read Time-Stamp Counter) și RDTSCP citesc numărul exact de cicluri de ceas trecute de la pornirea procesorului, stocând valoarea pe 64 de biți în perechea EDX:EAX.

; Măsurarea duratei exacte a unei secțiuni de cod în cicluri de procesor:
global cronometru_start
cronometru_start:
    lfence                      ; Oprește reordonarea instrucțiunilor (Memory Fence)
    rdtsc                       ; Citește contorul în EDX:EAX
    shl rdx, 32
    or rax, rdx                 ; Combină în RAX pe 64 de biți
    ret

; Valoarea returnată poate fi comparată cu un al doilea apel după executarea algoritmului

Precizie nanosecundară: Este cel mai precis instrument de micro-benchmarking hardware disponibil pe arhitectura x86.

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: RDTSC și RDTSCP în x86_64: Măsurarea Ciclurilor Reale de Ceas ale CPU

Ai o nelămurire despre utilizarea comenzii RDTSC și RDTSCP în x86_64: Măsurarea Ciclurilor Reale de Ceas ale CPU sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.