2022년도 여름학기 GPU/DSP/CPU고성능구현과알고리즘및컴퓨터아키텍쳐 (EECE695V-01) 강의계획서

1. 수업정보

학수번호 EECE695V 분반 01 학점 4.00
이수구분 전공선택 강좌유형 온라인 병행강좌 선수과목
포스테키안 핵심역량
강의시간 월, 화, 수, 목, 금 / 09:00 ~ 17:00 / C5 강의실[105호] 성적취득 구분 G

2. 강의교수 정보

김철홍 이름 김철홍 학과(전공) 전자전기공학과
이메일 주소 chulhong@postech.ac.kr Homepage http://www.boa-lab.com/
연구실 BIO OPTICS AND ACOUSTIC LAB 전화 279-8805
Office Hours

3. 강의목표

For higher computing performance, new processors have heterogeneous architectures where multi-core CPU and high-density GPU are integrated together, e.g., Intel’s Haswell has both multi-core CPU and GPGPU. However, to achieve high performance using these processors, smart algorithms and their efficient implementations that matches to the underlying processor architecture are essential. Programming at this level is challenging. In this course, we will cover the fundamentals of high-performance programming, followed by the architecture and programming of CPU and GPGPU processors. Hands-on labs will be held for students to learn various programming techniques and experience the realization and joy of fast image/video processing algorithms on both CPU and GPGPU. The trade-offs between the ease of programming and achieved performance with these processors will be discussed.

Topics covered are
1. Introduction to high-performance programming: Instruction-level parallelism, data-level parallelism, cache architecture, data double buffering.
2. Intel’s multi-core CPU architecture and programming: Architectural features of SandyBridge/IvyBridge/Haswell, streaming multimedia instruction set (SSE4/AVX/AVX2), and multi-core programming using CILK
3. Nvidia GPGPU architecture and programming: Architectural features, parallelizing an algorithm for GPGPU architecture, memory optimizations, general purpose GPGPU programming languages: CUDA and OpenCL
4. Image/video computing algorithms and their optimization for both CPU and GPGPU architectures

4. 강의선수/수강필수사항

5. 성적평가

50% project and 50% assigned homework

6. 강의교재

도서명 저자명 출판사 출판년도 ISBN

7. 참고문헌 및 자료

8. 강의진도계획

The course will be held from June 24, 2018 (Tuesday) through July 13, 2018 (Friday). Classes will be held from 9:30 to 11:30 am and labs will be held in the afternoon. Some readings before class and between classes would be needed.

9. 수업운영

Lab work will require programming, and working knowledge with C language is preferred. The assignments will be given to develop programs for image/video processing on the CPU as well as GPGPU. Through the lab sessions, students will gain useful insights into how to optimally utilize various architectural features for high-performance programming via hands-on experience.

The assignments will cover image/video processing topics such as:
Simple image operations: Invert, add, transpose
DSP processing: FIR, 2D convolution
Medical imaging algorithm: Scan conversion, 3D Boxcar, Volume Gradient, Volume rendering, multiplanar reconstruction

10. 학습법 소개 및 기타사항

11. 장애학생에 대한 학습지원 사항

- 수강 관련: 문자 통역(청각), 교과목 보조(발달), 노트필기(전 유형) 등

- 시험 관련: 시험시간 연장(필요시 전 유형), 시험지 확대 복사(시각) 등

- 기타 추가 요청사항 발생 시 장애학생지원센터(279-2434)로 요청