Salta al contingut

RDTSCP

Referència d'arquitecturaFeex

RDTSCP llegeix el comptador de segells de temps x86 i un valor identificador auxiliar del processador amb propietats d'ordenació definides. No és una instrucció completament serialitzadora ni un entorn d'avaluació comparativa automàtic.

El que cal saber

RDTSCP llegeix el comptador de segells de temps x86 i un valor identificador auxiliar del processador amb propietats d'ordenació definides. No és una instrucció completament serialitzadora ni un entorn d'avaluació comparativa automàtic.

Com funciona

RDTSCP retorna el comptador a EDX:EAX i el valor d'IA32_TSC_AUX a ECX. Les seves regles d'ordenació restringeixen algunes operacions anteriors, però les instruccions posteriors poden començar abans que es completi la lectura, i les escriptures anteriors tenen consideracions de visibilitat addicionals. La seqüència de barrera correcta depèn del que la mesura pretengui acotar.

On és útil

El codi de temporització de baix nivell pot utilitzar el valor auxiliar per ajudar a detectar un canvi de processador quan el SO el configura adequadament. Un banc de proves robust continua controlant la compilació, l'escalfament de la càrrega de treball, les interrupcions, la planificació, el calibratge del comptador i les operacions que s'estan ordenant.

Com comprovar el suport i l'habilitació

CPUID.80000001H:EDX bit 27 enumera RDTSCP. Verifiqueu la política del comptador al SO o hipervisor real i utilitzeu un mètode de temporització documentat amb les barreres necessàries. Preferiu el rellotge monotònic del SO per al temps transcorregut de l'aplicació.

Trieu un rellotge segons la qüestió: el temps transcorregut, el temps de CPU del fil i els cicles són mesures diferents. Les interfícies de rellotge del sistema operatiu incorporen la política de la plataforma que una mostra d'instrucció directa podria ometre.

El que la característica no estableix

El suport per a RDTSCP no estableix un comportament del TSC invariant o sincronitzat. La interpretació del valor auxiliar està definida pel SO. Restar dues mostres sense entendre l'ordenació pot mesurar un interval diferent del previst.

Compatibilitat i rendiment a la pràctica

Un banc de proves també necessita límits de compilador correctes, escalfament, dades representatives i una comprensió de la migració i la planificació. Repetir una mesura mal ordenada no fa que sigui precisa. Informeu de l'entorn i de la incertesa amb qualsevol resultat.

Una llista de verificació pràctica

  1. Enregistreu el model exacte de processador o de plataforma i les versions d'aplicació, SO i entorn d'execució implicades. Conserveu la redacció de l'error o del requisit real.
  2. Comproveu la referència del fabricant per a aquest model exacte, i després inspeccioneu la capacitat efectiva i l'estat habilitat en l'entorn on s'executa el programa.
  3. Compareu cada requisit del binari o dorsal seleccionat. Una característica amb un nom similar, un àlies o una etiqueta de tecnologia àmplia no és suficient.
  4. Confirmeu que l'aplicació ha seleccionat la implementació prevista. Utilitzeu els seus diagnòstics documentats i una alternativa compatible quan no es compleixin els requisits.
  5. Feu un únic canvi admès a la vegada i repetiu la mateixa càrrega de treball. Manteniu disponibles la configuració original i la via de recuperació.

Si la característica apareix a la llista però el programari no la pot utilitzar

Comenceu pel component exacte que falla. Una base de dades de maquinari descriu la capacitat registrada; el sistema operatiu o l'hipervisor poden exposar un entorn efectiu diferent. Un error d'instrucció il·legal també requereix investigar la instrucció defectuosa real i la compilació del binari, perquè una corrupció o una instrucció no admesa no relacionada poden produir un símptoma similar.

Instal·leu la versió d'aplicació, controlador o entorn d'execució admesa per a la plataforma exacta, i utilitzeu la compilació base o alternativa documentada pel fabricant si cal. Una actualització de programari no pot crear una instrucció que li manqui al processador. Els canvis de microprogramari i de polítiques de seguretat han de seguir el procediment del fabricant del sistema i un pla de recuperació en lloc d'una recepta genèrica d'optimització.

Fonts i abast d'aquesta explicació

Intel 64 and IA-32 Architectures Software Developer's Manual

Aquestes referències estableixen el comportament arquitectònic i els requisits de programari. No verifiquen de manera independent cada valor de característica en una pàgina de model de maquinari enllaçada. Per al suport de models, utilitzeu l'evidència del fabricant d'aquesta pàgina i comproveu la configuració efectiva del sistema. Aquest article no proporciona cap data de prova de referència, certificació o revisió independent.

Fonts i verificació

Propietat editorial: Feex. No s'ha registrat cap data de revisió independent. Com investiguem.

Ha estat útil aquest article?

Un sí o un no és suficient. Trieu un motiu si voleu, o afegiu una breu nota.

Ha estat útil aquest article?