Uppsala universitet
Department of Information Technology

Jarmo Rantakokko

Programming of parallel computers

Literature

Schedule

Laborations

Assignments

Examination

News

Uppsala University
Department of Information Technology
Scientific Computing
Programming of Parallel Computers
2009-03-10

Programming of Parallel Computers
Spring 2009

( http://www.it.uu.se/edu/course/homepage/algpar1/vt09/ )

Teachers
Jarmo Rantakokko
Room 2435, Tel: 018 - 471 2977,
E-mail:

Magnus Gustafsson
Room 2250, Tel: 018 - 471 2589,
Email: magnus.gustafsson@it.uu.se

Course start
The course will start March 19, at 13.15 in room 2247.

Aims of the course
Today, most computers are parallel computers. A common laptop has often a dual-core processor and a stationary PC can contain two quad-core processors. Morover, it is easy to connect several PCs to a cluster, a powerful parallel computer. At the same time it is more difficult for the programmer to exploit the full capacity of the computer. To use a multi-core computer to its full potential the users are forced to explicitly parallelize their codes over the multiple cores.
The aims of the course are to give basic knowledge in parallel computers, algorithms and programming. To give knowledge in fundamental numerical algorithms and software for different parallel computers. To give skills in programming of parallel computers, ranging from dual-core laptops to large clusters of PCs.

Multi-Core PlayStation 3 Dual-Core Laptop 2 Processor Quad-Core PC
PC-Cluster
Parallel Computers: (Left up) PS3 9-Cores, (Mid up) Dual-Core Laptop, (Right up) 2x Quad-Core PC, (Down) 280-Core PC-Cluster

Course content
Classification of parallel computers. Different forms of memory organisation and program control. Different forms of parallelism. Programming models; programming in a local name space using MPI and in global name space using OpenMP. Data partitioning and load balancing algorithms. Measurements of performance; speedup, efficiency, flops. Parallelization of fundamental algorithms, e.g., in linear algebra and sorting

Computers
In the assignments and laborations UPPMAX parallel computers are used. See UPPMAX computer systems for computer specifications and user guides.

Examination
The examination is two programming assignments and then there is a choice of doing a written exam or doing an extra programming assignment. Moreover, there are three computer labs.