Graphic and Multimedia Processors
GMU Acad. year 2020/2021 Winter semester 5 credits
Introduction, basic concepts. Graphic system architecture, CUDA. OpenCL. OpenGL. Computation optimization. Memory management. Unified memory. Graphic pipeline, paralelizatiom. Graphical systems SGI. Evolution of the NVIDIA GPU architecture GF7800 up to Ampere. MM systems, MMX, SSE, AVX. GPU for mobile systems. Game consoles. Approximate computation, energy aware computations. Texture mapping and compression.
Language of instruction
Subject specific learning outcomes and competences
Students will get knowledge of graphic systems architecture, hardware support for graphical and multimedia operations and programming them in OpenCL, OpenGL and CUDA environment.
To give the students the outline of the evolution of graphic and multimedia systems architecture, the hardware support and software implementation of graphical and multimedia operations, image processing and compression, and making use of OpenCL and OpenGL languages for image information processing, optimization of the computation. New CUDA tool for programming GPGPU. Approximate computation. MM systems, mobile systems, energy aware systems.
Why is the course taught
To give detailed information about the architecture of graphic systems and their programming.
- Computer Graphics (PGR)
- Lecture notes in e-format.
- Aamodt Tor M., Fung Wilson Wai Lun, Rogers Timothy G.: General-Purpose Graphics Processor Architectures, Morgan&Claypool Publishers, 2018
- NVIDIA Tesla V100 GPU Architecture, August 2017 NVIDIA Corporation
- NVIDIA Turing GPU Architecture, 2018 NVIDIA Corporation
- NVIDIA A100 Tensor Core GPU Architecture Ampere, 2020 NVIDIA Corporation
- ARM Mali GPU: OpenGL ES Application Guide, 2013 ARM, ARM DUI 0555C, ID102813
- Davies J.: The Bifrost GPU Architecture and the ARM Mali-G71 GPU, Hot Chips 28, Aug 2016
Syllabus of lectures
- Introduction, basic concepts. Graphic system architecture, OpenCL. CUDA. Vulcan. OpenGL-CL cooperation, shaders.
- Introduction to up-date GPU architectures, OpenCL library.
- Memory model, profiling.
- Mapping of algorithms onto GPU, optimization.
- Memory transfers, advanced optimization techniques.
- Graphical pipeline. Advanced raster graphic architecture. Graphical systems SGI.
- Graphic multiprocessors GF7800, 8800.
- GPGPU - Tesla T8, Fermi, Tesla P100, Pascal, Titan GTX 1080, Echelon, Turing, Ampere.
- Memory management, unified memory.
- Enargy aware GPU, a mobile 363 microW.
- Approximate computation.
- MM systems, MMX, SSE, AVX.
- MMP, VLIW, SoC, GPU for mobile systems.
- Game consoles. PS4, Xbox 360, One. AMD APU.
- Texture mapping and compression. Pixel interpolation.
Syllabus of computer exercises
- Introduction to OpenCL
- OpenCL memory model
- Cooperation between threads in OpenCL
- Parallelization using OpenGL
Syllabus - others, projects and individual work of students
Individual project assignment, 28 points.
Passing labs and finishing the project.
Passing labs and finishing the project. Substitution according to the decision of a teacher.
- Min. 8 points from the project.
- Min. 10 points from labs and the project.
Course inclusion in study plans
- Programme IT-MSC-2, field MBI, MBS, MIN, MIS, MMM, MSK, any year of study, Elective
- Programme IT-MSC-2, field MGM, any year of study, Compulsory-Elective group C
- Programme IT-MSC-2, field MPV, any year of study, Compulsory-Elective group G
- Programme MITAI, specialisation NADE, NBIO, NCPS, NEMB, NGRI, NHPC, NIDE, NISD, NISY, NMAL, NMAT, NNET, NSEC, NSEN, NSPE, NVER, NVIZ, any year of study, Elective