¿Cuál es la diferencia en lógica y rendimiento entre LOCK XCHG y MOV + MFENCE? [duplicar
Esta pregunta ya tiene una respuesta aquí:
¿Carga y almacena las únicas instrucciones que se reordenan? 2 respuestas ¿Cuál es una mejor barrera de escritura en x86: lock + addl o xchgl? 5 respuestas ¿Lock xchg tiene el mismo comportamiento que mfence? 1 respuesta ¿Cuál es la diferencia en lógica y rendimiento entre x86-instruccionesLOCK XCHG
yMOV+MFENCE
para hacer una tienda de consistencia secuencial.
(Ignoramos el resultado de carga de laXCHG
; los compiladores que no sean gcc lo usan para la tienda + efecto barrera de memoria).
Es cierto que, por coherencia secuencial, durante la ejecución de una operación atómica:LOCK XCHG
bloquea solo una línea de caché y viceversaMOV+MFENCE
bloquea todo el caché-L3 (LLC)?