THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2008/2009
- ARCHIVE for reference only
THIS PAGE IS OUT OF DATE

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
Home : College of Science and Engineering : School of Physics and Astronomy (Schedule Q) : Postgraduate (School of Physics and Astronomy)

Tools and Techniques for HPC Programming (P02768)

? Credit Points : 10  ? SCQF Level : 11  ? Acronym : PHY-P-P02768

The course will be an introduction to the fundamental tools and techniques required to produce high quality scientific and technical programs in a Unix environment. The material will be applicable to C, Java and Fortran so the course can be done in any of these languages.

One important component of the course will be to teach an appreciation of the strengths and weaknesses of each language, for example, how arrays are dealt with, modular programming, OO vs procedural etc.

On completion of the MSc, all students should know at least two of these languages: this course will therefore also be an opportunity to practise the language they are least familiar with. The course will cover the the following topics:

? core Unix tools (tar, scp, editors etc)
? OS and compiler fundamentals
? version control with CVS (for a single-developer project)
? compiling multi-file programs with make and ant
? scientific codes as experiments: running and taking data
? language comparison (eg how arrays are dealt with, modular programming, OO vs procedural)
? measuring performance
? good programming practice and basic software design
? use of scientific libraries
? testing and debugging

These concepts will be illustrated by students working on the development of a practical programming example. Lectures will be followed by tutored practical sessions illustrating the key concepts.

Entry Requirements

? Pre-requisites : Only postgraduates or final year MPhys students with suitable computational background, subject to space restrictions and agreement with relevant Programme Coordinator.

Subject Areas

Delivery Information

? Normal year taken : Postgraduate

? Delivery Period : Semester 1 (Blocks 1-2)

? Contact Teaching Time : 3 hour(s) per week for 10 weeks

First Class Information

Date Start End Room Area Additional Information
26/09/2008 09:15 13:00 Training Room 3305, JCMB

All of the following classes

Type Day Start End Area
Lecture Friday 09:00 13:00 KB

Summary of Intended Learning Outcomes

On completion of this course students should be able to:
- Develop code in a Univx environment and understand the stages involved;
- Write programs using a modular approach with multiple files and calls to external libraries;
- Use appropriate tools to build multi-file programs;
- Use CVS to manage their source code from a single repository;
- Write codes using a defensive style of programming to minimise bugs;
- Test and debug programs using a systematic and methodical approach;
- Describe the relative strengths and weaknesses of C, Java and Fortran;
- Quantify the performance of their own codes;
- Collect "experimental" data from simulation codes.

Assessment Information

100% Group-based Coursework

Contact and Further Information

The Course Secretary should be the first point of contact for all enquiries.

Course Secretary

Miss Leanne O'Donnell
Tel : (0131 6)51 7067
Email : l.o'donnell@ed.ac.uk

Course Organiser

Dr Judy Hardy
Tel : (0131 6)50 6716
Email : j.hardy@epcc.ed.ac.uk

School Website : http://www.ph.ed.ac.uk/

College Website : http://www.scieng.ed.ac.uk/

Navigation
Help & Information
Home
Introduction
Glossary
Search
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Prospectuses
Important Information
Timetab
 
copyright 2008 The University of Edinburgh