GPU 프로그래밍
CPU 메모리를 핀 고정(페이지 락)한 뒤 GPU로 전송하면 빨라지는 이유로 올바른 것은?
- AOS가 해당 페이지를 옮기거나 내보내지 않으므로 GPU가 DMA로 직접 읽고 쓸 수 있어 중간 복사가 필요 없고 비동기 전송도 가능하기 때문
- B핀 고정하면 데이터가 압축되기 때문
- C핀 고정하면 PCI Express의 세대가 올라가기 때문
정답과 해설 보기
정답: A. OS가 해당 페이지를 옮기거나 내보내지 않으므로 GPU가 DMA로 직접 읽고 쓸 수 있어 중간 복사가 필요 없고 비동기 전송도 가능하기 때문
일반 메모리는 OS가 언제든 다른 물리 페이지로 옮기거나 스토리지로 내보낼 수 있으므로, GPU의 DMA가 그대로 읽고 쓰는 것은 위험합니다. 그래서 보통은 일단 핀 고정한 임시 영역에 복사한 뒤 전송합니다. 처음부터 핀 고정한 메모리를 사용하면 이 불필요한 복사가 사라지고, CPU 처리와 겹쳐서 비동기로 전송할 수도 있습니다.