AMD ืคืจืกืื ืื"ื ืืื ืชื ืืช ืืืืืื ืฉื ืืื ืืืืืืืช ืืืืคืืืืืืฆืื ืฉื PSF (Predictive Store Forwarding) ืืืืืฉืืช ืืืขืืืื ืืกืืจืช Zen 3. ืืืืงืจ ืืืฉืจ ืชืืืืจืืืช ืืช ืืฉืืืืช ืฉืืืช ืืืชืงืคื Spectre-STL (Spectre-v4), ืฉืืืืชื ืืืื 2018, ืืื ืืืืืืืช PSF, ืื ืืคืืขื, ืืจื ื ืืฆืื ืชืื ืืืช ืงืื ืืืกืืืืืช ืืืืืื ืืืชืงืคื ืืืกืื ื ืืืืืืช ืืืขืจืืช ืืื ืืฉืืขืืชืืช.
ืืื ื ืืืืจ ืฉืืชืงืคืช Spectre-v4 (Speculative Store Bypass) ืืืืกืกืช ืขื ืฉืืืืจ ื ืชืื ืื ืฉืืชืืืฉืื ืืืืืื ืืืขืื ืืืืจ ืืฉืืืช ืืชืืฆืื ืฉื ืืืฆืืข ืกืคืงืืืืืื ืฉื ืคืขืืืืช ืืขืช ืขืืืื ืคืขืืืืช ืืชืืื ืืงืจืืื ืืชืืืคืืช ืชืื ืฉืืืืฉ ืืืชืืืช ืขืงืืคื. ืืืฉืจ ืคืขืืืช ืงืจืืื ืืื ืืขืงืืืช ืคืขืืืช ืืชืืื (ืืืืืื, mov [rbx + rcx], 0x0; mov rax, [rdx + rsi]), ืืืชืื ืฉืืกืืช ืืชืืืช ืืงืจืืื ืืืจ ืืืืขื ืขืงื ืคืขืืืืช ืืืืืช ืฉืืชืืฆืขืืช (ืคืขืืืืช ืงืจืืื ืื ืืืืฆืข ืืชืืืจืืช ืืืืื ืืจืื ืืืชืจ ืื ืืชื ืืืฆืข ืงืจืืื ืืืืืืื) ืืืืขืื ืืืื ืืืฆืข ืืกืคืงืืืืืืืืช ืงืจืืื ืืคื ื ืืชืืื ืืืื ืืืืืช ืืืืฉืื ืืืกื ืืขืงืืฃ ืฉื ืืืชืืื.
ืชืืื ื ืื ืืืคืฉืจืช ืืืจืืช ืงืจืืื ืืืฉืช ืืขืจื ืืฉื ืืืชืืืช ืืืฉืื ืืืื ืฉืคืขืืืช ืืื ืืช ืขืืืื ืื ืืืฉืืื. ืื ืืฉ ืฉืืืืช ืืืืื, ืืคืขืืื ืืกืคืงืืืืืืืช ืืื ืืืฆืืืช ืชืืืืง, ืื ืขืงืืืช ืืืฆืืขื ืืืฉืืจื ืืืืืื ืืืขืื ืื ืืชื ืืืืืจ ืืืชื ืืืืช ืืืฉืืืืช ืืงืืืขืช ืชืืื ืืืืืื ืขื ืกืื ื ืืชืื ืฉืื ืืืื ืืืืฉื ืืื ืื ืชืื ืื ืืืืืกื ืื ืืื ืืืืืกื ืื ืืืืืื.
ื ืืกืฃ ืืืขืืื AMD Zen 3, PSF ืืืืขื ืืช STLF (Store-To-Load-Forwarding), ืืืืฆืข ืคืขืืืืช ืงืจืืื ืืืืคื ืกืคืงืืืืืื ืขื ืืื ืืืืื ืืงืฉืจ ืืื ืคืขืืืืช ืงืจืืื ืืืชืืื. ืืืฉืจ ืืฉืชืืฉืื ื-STLF ืืงืืืกื, ืืืขืื ืืืฆืข ืคืขืืืช "ืืขืื ื" ืขื ืื ืชืื ืื ืฉืืืขืืจื ืืฉืืจืืช ืืคืงืืืช ื"ืื ืืช" ืืงืืืืช, ืืืื ืืืืืช ืฉืืชืืฆืื ืชืืืชื ืืคืืขื ืืืืืจืื, ืืื ืืืืื ืฉืืืชืืืืช ืืื ื ืขืฉื ืฉืืืืฉ ื"ืืขืื ื" ืืืคืงืืืืช "ืื ืืช" ืชืืืืืช. ืืืคืืืืืืฆืืืช ื-PSF ืืืคืืช ืืช ืืืืงืช ืืืชืืืืช ืืกืคืงืืืืืืืช ืืืืฆืขืช ืคืขืืืช "ืืขืื ื" ืืคื ื ืฉืคืจืื ืืืชืืืืช ืืืฉืื ืื ืืืฆืข ืืขืืจ ืืื ืืืกืื/ืขืืืก ืฉืืชืืจื ืืชืืืช ืืืืืช. ืื ืืืืืื ื ืืฉื, ืืืฆื ืืืืืจ, ืื ืื ืชืื ืื ื ืฉืืจืื ืืืืืื.
ืืชืงืคื ืขื PSF ืืคืฉืจืืช ืจืง ืืืกืืจืช ืจืื ืืืช ืฉื ืืจืฉืืืช, ืืืกื ืจืง ืืช ืืืงืฉืจ ืฉื ืืชืืืื ืื ืืืื ืื ืืกืืช ืขื ืืื ืฉืืืืช ืืืืื ืืจืืื ืืชืืืช ืื ืื ืื ืื ื ืืจืื ืืื ืฉื ืืืืจื. ืืืงืจื ืื, ืฉืืืืช ืืจืื ืืื ืฉื ืชืืื ื ืืชืืืืืื ืขืืืืืช ืืืืืช ืืืฉืคืขืืช ืืืืขืื. ืืืชืงืคื ืืืืื ืืืื ืขื ืืขืจืืืช ืืืื ืืคืืคื ืื, ืืืื ืืช ืืืจืืืืืืืช ืืืืฆืืข ืงืื ื-JITs ืืืืฆืขืืช ืงืื ืฉื ืฆื ืฉืืืฉื ืืชืืืื ืืืื (ืืืชืงืคื ืขืืืื ืืืคืฉืจ ืืงืื ืื ืืืืื ืืืจืื ืืื ืืงืื ืืืฉื ืื ืชืื ื ืชืืืื ืืืจืื).
AMD ืกืืคืงื ืืกืคืจ ืฉืืืืช ืืืฉืืืช ืืืืืืช ืื ืกืืงืืืืืช ืฉื PSF, ืื ืืืชืืฉื ืืกืืืื ืืื ืื ืขืืืจ ืจืื ืืืืฉืืืื, ืืืืืฆื ืื ืืืคืืืืืืฆืื ืื ืื ืชืืฉืืช ืืืจืืจืช ืืืื. ืืื ืืืื ืืืืคื ืกืืงืืืื ืขื ืชืืืืืื ืืืืืืืื ืืช ืืื ืฉืืืฆืขืื ืงืื ืื ืืืืื, ืืืฆืข ืืืฉืืืช ืืช PSF ืขื ืืื ืืืืจืช ืกืืืืืช MSR "SSBD" ื-"PSFD", ืืืื ืขืืืจ ืฉืจืฉืืจืื ืืืืืื. ืืชืืงืื ืื ืืืื ื ืขืืืจ ืืืืช ืืื ืืงืก ืขื ืืืืขืช ืืคืฉืจืืืืช ืฉืืจืช ืืคืงืืื "psfd" ื- "nopsfd" ืืฉืืืืืช ืืืฆื ื-PSF ืืืคืขื ืืืืืื.
ืืงืืจ: OpenNet.ru