ARCHER logo ARCHER banner

The ARCHER Service is now closed and has been superseded by ARCHER2.

  • ARCHER homepage
  • About ARCHER
    • About ARCHER
    • News & Events
    • Calendar
    • Blog Articles
    • Hardware
    • Software
    • Service Policies
    • Service Reports
    • Partners
    • People
    • Media Gallery
  • Get Access
    • Getting Access
    • TA Form and Notes
    • kAU Calculator
    • Cost of Access
  • User Support
    • User Support
    • Helpdesk
    • Frequently Asked Questions
    • ARCHER App
  • Documentation
    • User Guides & Documentation
    • Essential Skills
    • Quick Start Guide
    • ARCHER User Guide
    • ARCHER Best Practice Guide
    • Scientific Software Packages
    • UK Research Data Facility Guide
    • Knights Landing Guide
    • Data Management Guide
    • SAFE User Guide
    • ARCHER Troubleshooting Guide
    • ARCHER White Papers
    • Screencast Videos
  • Service Status
    • Detailed Service Status
    • Maintenance
  • Training
    • Upcoming Courses
    • Online Training
    • Driving Test
    • Course Registration
    • Course Descriptions
    • Virtual Tutorials and Webinars
    • Locations
    • Training personnel
    • Past Course Materials Repository
    • Feedback
  • Community
    • ARCHER Community
    • ARCHER Benchmarks
    • ARCHER KNL Performance Reports
    • Cray CoE for ARCHER
    • Embedded CSE
    • ARCHER Champions
    • ARCHER Scientific Consortia
    • HPC Scientific Advisory Committee
    • ARCHER for Early Career Researchers
  • Industry
    • Information for Industry
  • Outreach
    • Outreach (on EPCC Website)

You are here:

  • ARCHER
  • Upcoming Courses
  • Online Training
  • Driving Test
  • Course Registration
  • Course Descriptions
  • Virtual Tutorials and Webinars
  • Locations
  • Training personnel
  • Past Course Materials Repository
  • Feedback

Contact Us

support@archer.ac.uk

Twitter Feed

Tweets by @ARCHER_HPC

ISO 9001 Certified

ISO 27001 Certified

GPU Programming

GPUs have evolved from a fixed pipeline graphics processing hardware into powerful programmable co-processing units capable of performing general purpose computing (sometimes referred to as GPGPU or General Purpose Computing on GPUs). In comparison with traditional CPU systems a GPU is capable of far higher (theoretical) peak performance within a smaller power window and as such many of the Top 500 supercomputers use GPU architectures.

This course will introduce the background of GPU hardware and common methods for programming GPUs. It will also introduce optimisation of GPU programs.

This course is free to all academics.

Intended learning outcomes

On completion of this course students should be able to:

  • Understand the GPU hardware.
  • Understand and use common methods for programming GPUs.
  • Optimise GPU applications.
  • Use GPU programming directives.
  • Use GPU libraries.

Pre-requisites

Students should be familiar with C, C++ or Fortran

Timetable

Details are subject to change, but start, end and break times will stay the same.

Day 1

  • 09.30 LECTURE: Introduction.
  • 09.45 LECTURE: GPU Architecture.
  • 10.15 LECTURE: Programming GPUs with CUDA.
  • 11.00 PRACTICAL: Your first CUDA code.
  • 12.15 BREAK: Lunch
  • 13.15 LECTURE: GPU Optimisation.
  • 13.45 PRACTICAL: Optimising a CUDA Application.
  • 16.30 Close.

Day 2

  • 09.30 LECTURE: Programming GPUs with OpenCL.
  • 10.00 LECTURE: Programming GPUs with Directives.
  • 10.45 LECTURE: GPU Libraries.
  • 11.15 PRACTICAL: Choice of practical.
    • OpenCL
    • Direcives
    • GPU Libraries
  • 12.15 BREAK: Lunch.
  • 13.15 Choice of practical (cont.).
  • 16.30 Close.

Registration

Please use the registration page to register for ARCHER courses.

Questions?

If you have any questions please contact the ARCHER Helpdesk.

Copyright © Design and Content 2013-2019 EPCC. All rights reserved.

EPSRC NERC EPCC