멀티코어와 동기화
x86의 메모리 일관성 모델(TSO, Total Store Order)의 특징으로 올바른 것은?
- A읽기·쓰기의 모든 조합의 순서 변경을 허용하는 가장 약한 모델이다
- B순서 변경을 일절 허용하지 않는 순차 일관성 그 자체이다
- C쓰기 이후의 다른 주소에 대한 읽기가 그 쓰기보다 먼저 보이는 것만 허용하는, 비교적 강한 모델이다
정답과 해설 보기
정답: C. 쓰기 이후의 다른 주소에 대한 읽기가 그 쓰기보다 먼저 보이는 것만 허용하는, 비교적 강한 모델이다
TSO에서는 쓰기끼리의 순서, 읽기끼리의 순서, 읽기 이후 쓰기의 순서는 유지되고, 쓰기 이후의 다른 주소에 대한 읽기만 앞지를 수 있습니다. 이것은 스토어 버퍼의 존재를 그대로 나타낸 모델입니다. 대부분의 프로그램은 이 범위라면 직관대로 동작하므로, x86에서는 배리어가 필요한 경우가 비교적 적습니다.
- A. 그것은 ARM이나 RISC-V와 같은 약한 모델에 가까운 설명입니다.
- B. 쓰기와 읽기의 순서 변경은 일어납니다.
- C. 맞습니다. 스토어 버퍼에 의한 순서 변경만 보입니다.