skip to navigation skip to content
- Select training provider - (University Information Services - Digital Literacy Skills)
Tue 22 Apr - Wed 23 Apr 2014
14:15 - 17:00

Venue: New Museums Site, Cockcroft Lecture Theatre

Provided by: University Information Services - Digital Literacy Skills


Booking

Bookings cannot be made on this event (Event is completed).


Other dates:

No more events



Register interest
Register your interest - if you would be interested in additional dates being scheduled.


Booking / availability

Parallel Programming: Options and Design
Prerequisites

Tue 22 Apr - Wed 23 Apr 2014

Description

This course is part of the Scientific Computing series.

This is a detailed overview of using parallelism for achieving more computation in the same amount of elapsed time, covering both "shared memory" and "distributed memory" designs. It will concentrate on principles rather than details, to help attendees make the right decision and proceed in the right direction. It is aimed at users with significant programming experience who need more computation power than can be delivered by a single thread of execution on a single CPU core, including those who already program in parallel. The course is also designed for system administrators who need to support parallel codes, by describing the range of practical options, and their strengths, weaknesses, configuration issues and other important issues.

Prerequisites
  • Significant programming experience with production code, OR a moderate amount of both programming and system administration experience. Participants should have attended "Building Applications out of Several Programs", and need to use more advanced facilities.
  • Attendees are expected to know how arrays are used in science, though only at a basic level; for more information see here..
Sessions

Number of sessions: 2

# Date Time Venue Trainer
1 Tue 22 Apr 2014   14:15 - 17:00 14:15 - 17:00 New Museums Site, Cockcroft Lecture Theatre map Nicholas Maclaren
2 Wed 23 Apr 2014   14:15 - 17:00 14:15 - 17:00 New Museums Site, Cockcroft Lecture Theatre map Nicholas Maclaren
Topics covered
  • Reasons for needing parallelism and basic design
  • Thread pools, client-server, CPU farms etc.
  • HPC parallelism - vector, SPMD and message passing
  • SIMD, MIMD, SPMD, NUMA and other terminology
  • MPI, PVM, message passing and data distribution
  • Shared memory, POSIX/Microsoft threads, OpenMP,
  • SHMEM, BSP, Coarray Fortran and UPC
  • Synchronisation, atomicity and scheduling
Format

A presentation, followed by questions and discussions.

Notes
  • The principles are equally applicable to Microsoft Windows and most other systems, but the course will be in terms of Unix. Attendees should know enough Unix to understand its concepts and terminology.
  • More information may be found in http://www-uxsup.csx.cam.ac.uk/courses/Parallel
Duration

Two half day sessions

Themes

Booking / availability