목록General Purpose GPU (5)
Kim Seon Deok
*General - Purpose Graphics Processor Architecture의 chapter 3.4 RESEARCH DIRECTIONS ON BRANCH DIVERGENCE 를 읽고 정리한 내용입니다. 동일한 warp에 있는 thread들은 같은 control flow path를 따라 실행된다. 따라서 GPU는 thread를 SIMD 하드웨어에서 lockstep 방식으로 실행할 수 있다. 하지만 thread는 data dependent branch를 만났을 때 다른 target으로 diverge되는데, 이 때 이런 현상을 branch divergence라 한다. moder GPU는 이 branch divergence를 하나의 warp 안에서 handle할 수 있도록 하는 특별한 하드웨어인 ..
*General - Purpose Graphics Processor Architecture의 chapter 3.2 TWO - LOOP APPROXIMATION ~ 3.3 THREE-LOOP APPROXIMATION 를 읽고 정리한 내용입니다. 앞서 one loop approximation은 single scheduler를 다루었다. GPU에서 latency를 hiding하려면 현재 실행되고 있는 instruction이 끝나지 않은 상황에서 다음 instruction을 issue할 수 있어야 한다. 하지만 one loop approximation은 scheduling logic이 thread identifier와 다음 instruction address에만 access할 수 있기 때문에 latency hi..
*General - Purpose Graphics Processor Architecture의 chapter 3.1 ONE - LOOP APPROXIMATION 를 읽고 정리한 내용입니다. 위 figure는 GPU pipeline이다. pipeline은 SIMT front-end와 SIMT back-end로 나뉜다. single pipeline에는 3개의 scheduling loop가 포함되어 있고 register는 scheduling loop에 access한다. GPU의 organizing principle은 multiple threading이고 이는 세 가지 scheduling loop 위주로 구성된다. 따라서 approximation loop를 파악함으로써 scheduler loop의 세부 사항을 고..
*General - Purpose Graphics Processor Architecture의 chapter 2를 읽고 정리한 내용입니다. non-graphic computing목적으로 GPU가 program되는 방법에 대해 알아볼 것이다. 이는 GPU 연구에서 hardware/software interface를 변경할 때 필수적이다. 현대 GPU는 data-level parallelim을 활용하기 위해서 wide SIMD hardware를 사용한다. 이 SIMD 하드웨어를 직접적으로 프로그래머에게 노출하기 보다 CUDA와 OpenCL은 MIMD 프로그래밍의 특징을 갖고 있어서 프로그래머가 많은 scalar thread를 GPU에 launch하도록 한다. runtime 시 GPU hardware는 warp..
*General - Purpose Graphics Processor Architecture의 chapter 1를 읽고 정리한 내용입니다. 1.1 Landscape of computation accelerators - transistor 크기의 감소 - hardware architecture의 향상 - compiler technology와 algorithm의 향상 과 함께 computing system은 발전해왔다. Denarrd scailing의 법칙이 들어맞지 않게되면서 device의 크기가 점점 더 작아짐에 따라 clock frequency가 더 느려지게 되었다. 따라서 energy efficiency 향상이 computer architecture 연구에서의 주요한 motivation이 되었다. Ha..