3 ms·
As far as I know, HLE is not implemented on AMD processors. However, part of the fix for JCC (https://www.intel.com/content/dam/support/us/en/documents/process
by my123 7y ago
As far as I know, HLE is not implemented on AMD processors.
However, part of the fix for JCC (https://www.intel.com/content/dam/support/us/en/documents/processors/mitigations-jump-conditional-code-erratum.pdf https://www.intel.com/content/dam/support/us/en/documents/pr... ) to recover the performance loss will make other CPUs slower if separate executables aren't used for unaffected CPUs... which they won't.
> The MCU prevents jump instructions from being cached in the Decoded ICache when the jump instructions cross a 32-byte boundary or when they end on a 32-byte boundary. In this context, Jump Instructionsinclude all jumptypes: conditional jump (Jcc), macro-fusedop-Jcc(where opis one ofcmp, test, add, sub, and, inc, ordec), direct unconditional jump, indirect jump, direct/indirect call, and return
The workaround to lower perf loss of having jumps uncached when they are on a 32-byte boundary involves adding quite some nops... (or padding with meaningless prefixes)
- saagarjha 7y agoLooks like the impact is pretty bad in certain cases: https://twitter.com/damageboy/status/1194751035136450560 https://twitter.com/damageboy/status/1194751035136450560