Sprache Englisch.
Course Description:
SIMD High-Performance Computing in C
Modern CPUs provide vector units which simultaneously apply the same operation to all elements of a vector of floating-point or integer numbers; this type of processing is referred to as SIMD (single instruction, multiple data). Today, the full computing power of a single CPU core can only be harnessed by exploiting these vector instructions. Modern C compilers already provide some support for vector data types and for auto-vectorization of code. Alternatively, vector instructions can efficiently be accessed through vector intrinsics provided by the C compiler. Intrinsics are typically mapped directly onto machine instructions but free the programmer from the hassles of assembly programming. This lecture focuses on Intel vector extensions (SSE, AVX) and how they can be incorporated into C code through vector intrinsics. The lecture should enable you to write your own SIMD code in C for Intel CPUs. Proficiency in C programming and a basic understanding of assembly programming is required.
Frequency | Weekday | Time | Format / Place | Period |
---|
Module | Course | Requirements | |
---|---|---|---|
39-Inf-MIKE Modularisierter individueller Kompetenz-Erwerb (MiKE) | - | Ungraded examination | Student information |
39-M-Inf-MIKE Modularisierter individueller Kompetenz-Erwerb (MiKE) | - | Ungraded examination | Student information |
The binding module descriptions contain further information, including specifications on the "types of assignments" students need to complete. In cases where a module description mentions more than one kind of assignment, the respective member of the teaching staff will decide which task(s) they assign the students.
Erwerb von 1 LP