루프 스케줄링
Loop scheduling병렬 컴퓨팅에서 루프 스케줄링은 로드 밸런싱을 실현하고 최소한의 디스패치 오버헤드로 데이터 인접성을 유지하기 위해 n개의 프로세서 간에 병렬 가능한 루프의 적절한 반복을 할당하는 문제입니다.
일반적인 루프 스케줄링 방식은 다음과 같습니다.
- 정적 짝수 스케줄링: 루프 반복 공간을 n개의 청크로 균등하게 분할하여 각 청크를 프로세서에 할당합니다.
- 동적 스케줄링: 루프 반복 청크는 아이돌프로세서에 의해 런타임에 디스패치됩니다.청크기가 1회 반복일 경우 셀프 스케줄링이라고도 합니다.
- 안내 스케줄링: 동적 스케줄링과 비슷하지만 디스패치당 청크 사이즈는 사전 설정된 값에 도달할 때까지 계속 축소됩니다.
레퍼런스
- Thomas Rauber; Gudula Rünger (13 June 2013). Parallel Programming: for Multicore and Cluster Systems. Springer Science & Business Media. ISBN 978-3-642-37801-0.