Единственное, о чем я могу думать, это использовать подсказку по оптимизации PREFETCH. Итак, вместо:
mov eax, (DWORD PTR [esi])
Вы бы сделали:
prefetch [esi]
;
; give processor time to load cacheline...
;
mov eax, (DWORD PTR [esi])
По сути, я думаю, что вы пытаетесь сделать, это неправильно. Если вы работали в пользовательской однозадачной операционной системе, она могла бы работать, но в современных современных многозадачных системах просто невозможно управлять таким процессором.