컴퓨터구조
[컴퓨터구조] mfence (Memory Fence)
moonsk
2019. 5. 3. 23:11
mfence는 해당 명령어 이전에 위치한 모든 메모리 로드, 저장, 명령에 대해 직렬화 연산을 수행합니다.
프로세서는 out-of-order execution, Speculative execution과 같은 연산 고속화 기술에 의해 연산의 순서를 바꾸어 수행할 수 있는데, 이 때 mfence명령어를 통해 프로세서가 명령어의 순서를 지키도록 강제합니다.
요약하자면 x86, x86-64에서는 속도 향상을 위한 기술들 때문에 메모리 연산의 순서가 보장되지 않는데 이 순서를 보장하기 위한 명령어가 mfence입니다.
반응형