Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

COSC3500 -High-Performance Computing

1. General Course Information

1.1 Course Details

Course Code: COSC3500

Course Title: High-Performance  Computing

Coordinating Unit: School of Electrical Engineering and Computer Science

Semester: Semester 2, 2023

Mode: In Person

Level: Undergraduate

Location: St Lucia

Number of Units: 2

Contact Hours Per Week: LEC 2 Hours/ Week TUT 2 Hours/Week

Pre-Requisites: COSC2500 or CSSE2002 or CSSE2310 or PHYS3071

Incompatible : COSC7502

Course Description: This course teaches the methods and technology of high-performance computing. Primarily a project- based course, students select a scientific model they are interested in parallelising and then apply some or all of the

techniques of vectorisation (SIMD,AVX), threading (MIMD, openMP), GPU programming (CUDA), and/or cluster computing (MPI) to accelerate their computation.

Assumed Background:

Experience programming in C/C++, or at least a similar compiled language such as Java or C#. Some experience with Linux would also be advantageous, but not strictly necessary.

1.2 Course Introduction

This course is part of the computational science program in the Bachelor of Science at UQ and is also accessible to   interested students in other programs (e.g. Bachelor of Engineering, Bachelor of Information Technology, Bachelor of

Computer  Science).  It  is  primarily  concerned with the  practical  application  of  high-performance  computing technology to     solve  significant  problems  across  all fields  of science.  Minimal  background  knowledge  is  assumed from  core  mathematics and computing courses, to maximize accessibility for students across the range of degree programs.

Course Changes in Response to Previous Student Feedback

All assessment items were modified. Assignment 1 and 2 modified significantly and combined into a single assessment item. Milestone 1 and 2 changed from a report to a video presentation.

1.3 Course Staff

Course Coordinator: Dr Joel Carpenter

Campus: St  Lucia       Building: General Purpose South (Map)(http://www.uq,edu.au/maps/?id=71)             Room:  456

Lecturer : Dr Joel Carpenter

Email:[email protected]      ([email protected])

Campus: St  Lucia       Building: General Purpose South (Map)(http://www.uq,edu.au/maps/?id=71)

Lecturer: Dr Cullan Howlett

Email: [email protected] (mailto:[email protected])

Campus: St Lucia       Building: Physics Annexe (Map)(http://www.uq,edu.au/maps/?id=44)

Lecturer: Dr Stephen Sanderson

Email: [email protected] (mailto:[email protected])

Tutor: Mr Gayan Kulatilleke

Email: [email protected](mailto:[email protected])

Tutor: Mr Hugh McDougall

Email: h.mcdougall@uq,edu.au (mailto:[email protected])

Tutor: Mr Jesse Osborne

Email:[email protected] ([email protected])

1.4 Timetable

Timetables are available on the UQ Public Timetable.(https://my.uq.edu.au/public-timetable)

2. Aims, Objectives & Graduate Attributes

2.1 Course Aims

This course aims to enable students to gain knowledge and experience in the practical application of high-performance     computing technology to solving significant problems, with relevance across a variety of fields of science. While students will become familiar with the underlying architecture and workings of current high-performance computing systems, the   course is mainly concerned with techniques and knowledge surrounding the use of these systems in solving problems.

2.2 Learning Objectives

After successfully completing this course you should be able to:

1 Antigipate    the    key    attributes,    strengths    and    limitations    when    solving    scientific

problems     using     the     main     paradigms     of     contemporary     high-performance     computing.

2 Interpret     the     key.elements     of    techniques     for     computational     modelling     and,     simulation of    large-scale    scientific    systems,     including    their     main    strengths    and     limitations.

3 Relate, to all stages of solying a scientific problem using high performance, computing:

formulation,     implementation,     and     evaluation     of    the     techniques     and     technologies     used.

4 Create programs that efficiently implement solutions on shared memory and

distributed          systems.

5 Evaluate    performance    analysis    techniques    to    discover    and    resolve    inefficiencies    in computef       code.

2.3 Graduate Attributes

Successfully completing this course will contribute to the recognition of your attainment of the following UQ (Undergrad Pass) graduate attributes:

GRADUATE ATTRIBUTE

LEARNING

OBJECTIVES

A.IN-DEPTH KNOWLEDGE OF THE FIELD OF STUDY

A1.A comprehensive and well-founded knowledge in the field of study

1,2,3,4,5

A4.An understanding of how other disciplines relate to the field of study

1,3

A5.An international perspective on the field of study

N/A

B.EFFECTIVE COMMUNICATION

B1.The ability to collect, analyse and organise information and ideas and to convey those ideas clearly and fluently, in both written and spoken forms.

1,3

B2.The ability to interact effectively with others in order to work towards a common outcome

N/A

B3.The ablity to select and use the appropriate level, style and means of communication

1,3

GRADUATE ATTRIBUTE

LEARNING

OBJECTIVES

B4.The ability to engage effectively and appropriately with information and communication technologies.

1,3,4,5

C.INDEPENDENCE AND CREATIVITY

C1.The ability to work and learn independently

1,2,3,4,5

C3.The ability to generate ideas and adapt innovatively to changing environments.

2,3

C4.The ability to identify problems, create solutions, innovate and improve current practices

1,2,3,4,5

D.CRITICAL JUDGEMENT

D1.The ability to define and analyse problems.

1,2,3,4,5

D2. The ability to apply critical reasoning to issues through independent thought and informed judgement.

1,2,3,4,5

D3. The ability to evaluate opinions, make decisions and to reflect critically on the justifications for decisions.

1,2,3,5

E.ETHICAL AND SOCIAL UNDERSTANDING

E1.An understanding of social and civic responsibility.

N/A

E2.An appreciation of the philosophical and social contexts of a discipline.

1

E4.A knowledge and respect of ethics and ethical standards in relation to a major area of study.

N/A

E5.A knowledge of other cultures and times and an appreciation of cultural diversity.

N/A

3. Learning Resources

3.1 Required Resources

There is no set textbook for this course. Numerous resources will be used throughout the course and made available during class and/or via the course and library websites. This includes book chapters, scientific papers and web resources.

3.2 Recommended Resources

Introduction to High Performance Computing for Scientists and Engineers, Georg Hager and Gerhard Wellein (2010)

http://site.ebrary.com/lib/uqlib/docDetail.action?doclD=10430728 (http://site.ebrary.com/lib/uqlib/docDetail.action? docID=10430728)

High Performance Computing, an Open Textbook

https://open.umich.edu/find/open-educational-resources/information/high-performance-computing-open-textbook (https://open.umich.edu/find/open-educational-resources/information/high-performance-computing-open-textbook)

C Programming -A modern approach,2nd Ed, K. N. King (2008)

https://search.library.uq.edu.au/permalink/f/18av8c1/61UQ ALMA21111947800003131

(https://search.library.uq.edu.au/permalink/f/18av8c1/61UQ ALMA21111947800003131)

3.3 University Learning Resources

Access to required and recommended resources, plus past central exam papers, is available at the UQ Library website

(http://www.library.uq.edu.au/Ir/COSC3500 (http://www.library.uq.edu.au/Ir/COSC3500)).

The University offers a range of resources and services to support student learning. Details are available on the myUQ website (https://my.uq.edu.au/(https://student.my.uq.edu.au/) .)

3.4 School of Electrical Engineering and Computer Science Learning Resources

All School of EECS courses have Blackboard sites which can be found at https://learn.uq.edu.au (https://learn.uq.edu.au/).

4. Teaching & Learning Activities

4.1 Learning Activities

Recording of Lectures: Please be aware that teaching at UQ may be recorded for the benefit of student learning. If you would prefer not to be captured either by voice or image, please advise your course coordinator before class so

accommodations can be made. For further information see PPL 3.20.06 Recording of Teaching at UQ

(https://my.uq.edu.au/information-and-services/information-technology/software-and-web-apps/software-uq/zoom).