멀티코어와 동기화
캐시 일관성(coherency)과 메모리 일관성 모델(consistency model)의 차이로 올바른 것은?
- A둘은 같은 의미이며 부르는 이름만 다르다
- B일관성(coherency)은 같은 주소의 값의 불일치를 없애는 약속이고, 일관성 모델은 서로 다른 주소의 동작이 어떤 순서로 보이는지에 대한 약속이다
- C일관성(coherency)은 소프트웨어만으로, 일관성 모델은 하드웨어만으로 실현한다
정답과 해설 보기
정답: B. 일관성(coherency)은 같은 주소의 값의 불일치를 없애는 약속이고, 일관성 모델은 서로 다른 주소의 동작이 어떤 순서로 보이는지에 대한 약속이다
캐시 일관성(coherency)은 하나의 주소에 대해, 모든 코어가 쓰기를 같은 순서로 보고 결국 최신 값을 읽을 수 있음을 보장합니다. 한편 메모리 일관성 모델은 코어 0이 x에 쓰고 나서 y에 썼을 때, 다른 코어에 x와 y의 쓰기가 어떤 순서로 보일 수 있는지를 규정합니다. 캐시 일관성이 유지되고 있어도 서로 다른 주소의 순서는 뒤바뀌어 보일 수 있으며, 거기에 배리어가 필요합니다.
- A. 다루는 문제가 다릅니다.
- B. 맞습니다. 둘이 갖추어져야 비로소 올바른 병렬 프로그램을 작성할 수 있습니다.
- C. 둘 다 하드웨어와 소프트웨어 양쪽에 관련됩니다.