Courses & Units
Multicore Architecture and Programming KIT308
Introduction
This unit exposes students to historical approaches to increased processor efficiency, such as pipelining and superscalar design, before concentrating on a key concept of modern computer architectures: multicores. Both CPU and GPU architectures will be explored in this context and likely future hardware trends will be discussed. Students will learn the concepts and techniques for writing CPU multithreaded programs via the use of threading and synchronisation primitives as well as techniques for general-purpose GPU programming (GPGPU). A major focus of this unit is real world optimisation. Students will be exposed to data-oriented design approaches, revisit the concepts of Big-O efficiency and OO, and will get practical experience at profiling code. Additionally, students will learn lower-level programming techniques such as single-instruction multiple-data (SIMD) instructions, branch removal, and loop unrolling.
Summary
Unit name | Multicore Architecture and Programming |
---|---|
Unit code | KIT308 |
Credit points | 12.5 |
College/School | College of Sciences and Engineering School of Information and Communication Technology |
Discipline | Information & Communication Technology |
Coordinator | Doctor Ian Lewis |
Available as an elective? | Yes |
Delivered By | University of Tasmania |
Level | Advanced |
Availability
This unit is currently unavailable.
Note
Please check that your computer meets the minimum System Requirements if you are attending via Distance/Off-Campus.
Units are offered in attending mode unless otherwise indicated (that is attendance is required at the campus identified). A unit identified as offered by distance, that is there is no requirement for attendance, is identified with a nominal enrolment campus. A unit offered to both attending students and by distance from the same campus is identified as having both modes of study.
* The Final WW Date is the final date from which you can withdraw from the unit without academic penalty, however you will still incur a financial liability (refer to How do I withdraw from a unit? for more information).
Unit census dates currently displaying for 2024 are indicative and subject to change. Finalised census dates for 2024 will be available from the 1st October 2023. Note census date cutoff is 11.59pm AEST (AEDT during October to March).
Learning Outcomes
- Explain the concepts of high-performance computer architecture and the impact of concepts on expected performance
- Analyse a problem to define the requirements to target high-performance computer architecture
- Develop and evaluate techniques for the creation of efficient multicore CPU and GPU programs by applying high performance programming principles and technical skills
- Evaluate the performance and identify strengths and weaknesses of potential solutions targeting high-performance architecture
Fee Information
The 2024 Commonwealth Supported Place (CSP) rates are still being finalised by the Government and we will update the domestic fee information as soon as we have more details.
Requisites
Prerequisites
KIT205 OR KIT206 OR KIT207 OR KIT208Teaching
Teaching Pattern | Lectures: 2 hours / week (4 hours in week 1) |
---|---|
Assessment | CPU Optimisation Programming Assignment (15%)|GPU Programming Assignment (15%)|In-Tutorial Assessment (15%)|Multicore CPU Programming Assignment (15%)|Examination (40%) |
Timetable | View the lecture timetable | View the full unit timetable |
Textbooks
Required |
N/A |
---|---|
Recommended | N/A | Links | Booktopia textbook finder |
The University reserves the right to amend or remove courses and unit availabilities, as appropriate.