Skip to main content

FDD3015 Introduction to Programming with GPGPU and Applications in Scientific Computing 7.5 credits

Course offerings are missing for current or upcoming semesters.
Headings with content from the Course syllabus FDD3015 (Spring 2012–) are denoted with an asterisk ( )

Content and learning outcomes

Course contents

Part 1: Introduction, Basic programming

  • introduction to CUDA and the device architecture of GPGPU
  • the programming of GPGPU devices
  • performance optimization and application examples.

Part 2: Scientific Programming

  • libraries for the development of parallel numeric algorithms
  • parallelization of numerical algorithms.

Assignments:

Part 1: One smaller and one larger programming project combined with questions to explain the used technology

Part 2: One programming project combined with questions to explain the used approach.

Intended learning outcomes

The overall goal of the course is to give basic knowledge of the theory, hardware, and software approaches to parallel computing with GPGPU. Especially, hardware and software challenges plus the interactions between them, as well as exposure to research challenges in this field will be emphasized.

The course consists of two parts. Part 1 (4,5 hp) provides the introduction to the field, a detailed look at the device architecture, the basic programming considerations plus the presentation of possibilities to do performance optimizations. Part 2 (3,0 hp) introduces the software tools for the development of numerical appllications and examples of algorithms from the field of scientific coomputing.

After the course you will be able to:

  • understand the properties of GPGPU devices
  • reason about the performance of programs running on it
  • assess the potential and limitations of using a GPGPU
  • write parallel programs for GPGPU.

Literature and preparations

Specific prerequisites

Programming experience in C.

Recommended prerequisites

No information inserted

Equipment

No information inserted

Literature

No information inserted

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

P, F

Examination

    Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

    The examiner may apply another examination format when re-examining individual students.

    Opportunity to complete the requirements via supplementary examination

    No information inserted

    Opportunity to raise an approved grade via renewed examination

    No information inserted

    Examiner

    Ethical approach

    • All members of a group are responsible for the group's work.
    • In any assessment, every student shall honestly disclose any help received and sources used.
    • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

    Further information

    Course room in Canvas

    Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

    Offered by

    Main field of study

    This course does not belong to any Main field of study.

    Education cycle

    Third cycle

    Add-on studies

    No information inserted

    Postgraduate course

    Postgraduate courses at EECS/Computational Science and Technology