News

Loading Events

« All Events

  • This event has passed.

Optimisation Techniques @ A*STAR

December 5 @ 9:00 am - 5:00 pm

Optimisation Techniques I (9:00 – 12:00)

Overview:
This workshop provides a high-level overview of the important concepts to consider when attempting to improve the performance of compute-intensive applications. It will provide information on the underlying hardware, the system software and provide advice on available techniques for performance optimisation. The concepts will be demonstrated with hands-on examples.

Agenda:
1. Introduction
a. Strategies and motivations for performance optimisation
b. Performance characteristics of common application types
2. Concepts related to parallelism and application scaling
a. Vectorization, Threading, Message Passing
b. Strong scaling and weak scaling
3. Hardware overview
a. CPU and memory hierarchy
b. GPGPU
4. Compilers & Libraries
a. Available compilers and performance libraries
b. Common compiler options
5. Introduction to parallel filesystems
a. Overview of GPFS and Lustre
b. Relative performance characteristics
6. Tuning of MPI applications

Prerequisites:
1. A valid user account on NSCC system, ASPIRE1
2. Laptop for use in hands-on sessions
3. Familiarity with topics covered by Introductory Class (connecting to system, editing files in Linux and submitting jobs)

Expected outcome:
After this course a user should have a basic understanding of the factors which limit the performance of compute-intensive applications and knowledge of the techniques which can be used to improve that performance.

 

Optimisation Techniques II (13:00 – 17:00)

Overview:
This workshop provides an in-depth analysis of the factors which affect the performance of compute-intensive applications. The concepts will be demonstrated with hands-on examples.

Agenda:
1. Introduction and brief summary of topics from Optimisation Techniques Part I
2. Further information on the hardware architecture
a. Sockets, Cores, Caches and NUMA
b. InfiniBand network
3. Arithmetic intensity and the roofline model
4. Process and thread affinity
5. Advanced compiler options
a. Requirements for vectorizable loops
b. Architecture-specific optimisation
c. Precision and reproducibility
d. Options for correctness checking and debugging
6. MPI Optimisation
a. Gathering communication statistics
b. Improving MPI communication

Prerequisites:
1. A valid user account on NSCC system, ASPIRE1
2. Laptop for use in hands-on sessions
3. Familiarity with topics covered by Introductory Class (connecting to system, editing files in Linux and submitting jobs)
4. Familiarity with topics covered by Optimisation Techniques I

Expected outcome:
After this course a user should have a good understanding of the factors which limit the performance of compute-intensive applications and knowledge of the techniques which can be used to improve that performance.

To register: https://nscc.typeform.com/to/o4yGk1

Details

Date:
December 5
Time:
9:00 am - 5:00 pm
Website:
https://nscc.typeform.com/to/o4yGk1

Venue

Charles Babbage Room (NSCC)
1 Fusionopolis Way, Level 17, Connexis South,
Singapore, Singapore 138632 Singapore
© NATIONAL SUPERCOMPUTING CENTRE (NSCC) SINGAPORE 2018