Course details
Processor Architecture
ACH Acad. year 2017/2018 Winter semester 5 credits
The course covers architecture of universal as well as special-purpose processors. Instruction-level parallelism (ILP) is studied on scalar, superscalar and VLIW processors. Then the processors with thread-level parallelism (TLP) are discussed. Data parallelism is illustrated on SIMD streaming instructions and on graphical processors (SIMT). Parallelization of numerical calculations for GPU is also covered (CUDA). Techniques of low-power processors are also explained.
Guarantor
Language of instruction
Completion
Time span
- 39 hrs lectures
- 10 hrs pc labs
- 13 hrs projects
Assessment points
- 60 pts final exam (written part)
- 10 pts mid-term test (written part)
- 5 pts labs
- 25 pts projects
Department
Subject specific learning outcomes and competences
Overview of processor microarchitecture and its future trends, ability to compare processors and using suitable tools, simulate the influence of changes in their architecture. Get acquainted with processor performance measurement. The knowledge of architecture and hardware support of parallel computation on graphic processors can be directly applied for acceleration of intensive calculations.
Learning objectives
To familiarize students with architecture of the newest processors exploiting the instruction-level, thread-level and data-level parallelism. To clarify the role of a compiler and its cooperation with CPU. To be able to orientate oneself on the processor market, to evaluate and compare various CPUs. Next to familiarize with architecture of graphical processors and its use for acceleration of numerical calculations (GPGPU), and with low-power techniques in processors for mobile applications.
Prerequisite knowledge and skills
Von Neumann computer architecture, memory hierarchy, programming in assembly language, compiler's tasks and functions
Study literature
- aktuální PPT prezentace přednášek
- http://inst.eecs.berkeley.edu/~cs152/sp13/
- https://www.anandtech.com
- Agner Fog: Software optimization resources
- Intel Architecture Optimization Manual
- Nvidia CUDA SDK Manual
Fundamental literature
- Baer, J.L.: Microprocessor Architecture. Cambridge University Press, 2010, 367 s., ISBN 978-0-521-76992-1.
- Hennessy, J.L., Patterson, D.A.: Computer Architecture - A Quantitative Approach. 5. vydání, Morgan Kaufman Publishers, Inc., 2012, 1136 s., ISBN 1-55860-596-7.
- Kirk, D., and Hwu, W.: Programming Massively Parallel Processors: A Hands-on Approach, Elsevier, 2010, s. 256, ISBN: 978-0-12-381472-2
- Jeffers, J., and Reinders, J.: Intel Xeon Phi Coprocessor High Performance Programming, 2013, Morgan Kaufmann, p. 432), ISBN: 978-0-124-10414-3
Syllabus of lectures
- Scalar processors. Pipelined instruction processing and compiler asistance
- Superscalar CPU. Dynamic instruction scheduling, branch prediction.
- Advanced superscalar processing techniques: register renaming, data flow through memory hierarchy.
- Optimization of instruction and data fetching. Examples of superscalar CPUs.
- VLIW processors. SW pipelining, predication, binary translation.
- Multi-threaded processors.
- Performance measurement and evaluation (PAPI). Low power processors.
- Data parallelism. SIMD extensions, SWAR, and SIMT inside GPU.
- Architecture of graphics processing units.
- CUDA programming language, thread and memory model.
- Synchronisation and reduction on GPU, design and tuning of GPU codes.
- Stream processing, multi-GPU systems, GPU libraries.
- Architecture of many core systems (MIC, Xeon Phi) and their programming.
Syllabus of computer exercises
- Performance measurement for sequential codes.
- Vectorisation using OpenMP 4.0.
- CUDA: Memory transfers, simple kernels.
- CUDA: Shared memory.
- CUDA: Texture and constant memory, reduction operation.
Progress assessment
To get 20 out of 40 points for projects and midterm examination.
Controlled instruction
- Missed labs can be substituted in alternative dates (monday or friday)
- There will be a place for missed labs in the last week of the semester.
Course inclusion in study plans
- Programme IT-MGR-2, field MBI, MIN, MIS, MMM, any year of study, Elective
- Programme IT-MGR-2, field MBS, any year of study, Compulsory-Elective
- Programme IT-MGR-2, field MGM, 2nd year of study, Elective
- Programme IT-MGR-2, field MPV, 2nd year of study, Compulsory
- Programme IT-MGR-2, field MSK, 2nd year of study, Compulsory-Elective