Note: This unit will only have online classes in 2022. All lectures and tutorials will be available online only.
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.
|Unit name||Multicore Architecture and Programming|
|College/School||College of Sciences and Engineering
School of Information and Communication Technology
|Discipline||Information & Communication Technology|
|Coordinator||Doctor Ian Lewis|
|Available as student elective?||Yes|
|Delivered By||University of Tasmania|
|Location||Study period||Attendance options||Available to|
|Hobart||Semester 2||On-Campus||Off-Campus||International International||Domestic Domestic|
- International students
- Domestic students
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.
|Study Period||Start date||Census date||WW date||End date|
* 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 (see withdrawal dates explained for more information).
Unit census dates currently displaying for 2022 are indicative and subject to change. Finalised census dates for 2022 will be available from the 1st October 2021.
- understand the concepts of high performance computer architecture and analyze the local and global impact of these technologies on individuals, organizations, and society
- design, implement, and evaluate techniques for the creation of efficient multicore CPU programs
- design, implement, and evaluate techniques for the creation of efficient GPU programs
- analyze a problem, identify and define the requirements, apply knowledge of high performace programming principles and technical skills to develop and evaluate strengths and weaknesses of potential solutions
- take initiative and work independently
- communicate effectively at a professional level
- use abstraction and computational, creative and critical thinking to problem solve
- continue lifelong learning
|Field of Education||Commencing Student Contribution 1||Grandfathered Student Contribution 1||Approved Pathway Course Student Contribution 2||Domestic Full Fee|
- Available as a Commonwealth Supported Place
- HECS-HELP is available on this unit, depending on your eligibility3
- FEE-HELP is available on this unit, depending on your eligibility4
1 Please refer here more information on student contribution amounts.
2 Information on eligibility and Approved Pathway courses can be found here
3 Please refer here for eligibility for HECS-HELP
4 Please refer here for eligibility for FEE-HELP
Please note: international students should refer to this page to get an indicative course cost.
PrerequisitesKIT205 OR KIT206 OR (KIT207 AND KIT208)
Lectures: 2 - 4 hours / week
|Assessment||Examination (40%)|Multicore CPU Programming Assignment (15%)|CPU Optimisation Programming Assignment (15%)|GPU Programming Assignment (15%)|In-Tutorial Assessment (15%)|
|Timetable||View the lecture timetable | View the full unit timetable|
|Links||Booktopia textbook finder|
The University reserves the right to amend or remove courses and unit availabilities, as appropriate.