[an error occurred while processing this directive]
[an error occurred while processing this directive]Modern computer systems contain parallelism in both hardware and software. This unit covers parallelism in both general purpose and application specific computer architectures and the programming paradigms that allow parallelism to be exploited in software. This unit examines both shared memory and message passing paradigms in both hardware and software; concurrency, multithreading and synchronicity; parallel, clustered and distributed supercomputing models and languages. Students will program in these paradigms.
2 hrs lectures/wk, 2 hrs laboratories/wk
Students will be expected to spend about 12 hours per week during semester on this unit as follows:
In addition a consultation session with the lecturer is scheduled for Wednesdays 5-6PM in (H7.84, Caulfield)
Scheduling of lectures, lab/tutorial sessions and consultation times are subject to change.
While it is strongly recommended you attend lectures and lab/tutorials, lecture and other supplementary teaching material will be made available on-line and Dr. Pose can be contacted by phone and e-mail for assistance. The assignments and tutorial lab exercises can all be done at home if you have suitable facilities, but by attending lab/tutorials on campus you may get assistance from Dr. Pose and learn through discussion with fellow students. Lectures will be recorded but sometimes the recording technology doesn't work properly and not everything presented in lectures (such as things on overhead projectors or whiteboards) will appear on recordings.
CSE4333
Recommended knowledge: operating systems, including synchronisation and interprocess communication mechanisms; advanced computer architecture, including pipelining techniques.
Dr. Ronald Pose [Ronald.Pose@monash.edu] (home phone: 9527 1331):
Consultation hours: Wednesdays 5-6PM, Room 784, H Block, Caulfield. (or by arrangement via e-mail/telephone)
Dr Ronald Pose [Ronald.Pose@monash.edu] (home phone: 9527 1331)
Consultation hours: Wednesdays 5-6PM, Room 784, H Block, Caulfield. (or by arrangement via e-mail/phone)
Week | Activities | Assessment |
---|---|---|
0 | Unit Introduction on web (no lecture). Register for lab sessions. Prepare a summary of your educational background and knowledge and experience of parallel/distributed computing. Also provide some idea of why you enrolled in FIT5174, what you expect to learn, and how it fits in with the other units in your masters degree. Note that the schedule of topics and activities may change depending on the educational backgrounds and experience of enrolled students. | No formal assessment or activities are undertaken in week 0 |
1 | In the lecture there will be an introduction to Parallel and Distributed systems. The logistics of how we are organizing lecture and lab/tutorial sessions will be explained and an outline of the topics to be covered over the semester will be given. There will also be an explanation of the unit assessment methodology and suggestions of how to approach this unit. In the lab/tutorial sessions in this first week, Dr. Pose will meet with each student individually and go over their background and expectations that should have been prepared (see week 0). We will also learn how to set up the virtual machines most students will be using for their lab programming work, either in the Monash labs or at home. | Assessable lab/tutorial work is spread over exercises that have been allocated 2 weeks. In this first week we will be mostly getting to know one another and learning how to use the software environment of virtual machines running linux which will be used for the programming exercises to come. |
2 | In order to create a distributed system one needs to have physical communication links or networking between the various computers as well as suitable software interprocess communication mechanisms. In the lecture we will look at Interprocess Communication (IPC) and Remote Procedure Calls (RPC) as suitable building blocks. | In weeks 2 and 3 the first assessable laboratory/tutorial work will take place. This will take the form of simple programming exercises allowing students to learn the C programming language if they don't already know it, and in particular to learn how to use programming libraries providing parallel programming primitives. |
3 | The lecture will examine the message-passing paradigm and the Message Passage Library (MPI) | The first assessable laboratory/tutorial work is due. |
4 | The lecture will examine Synchronisation, MUTEX and other locking mechanisms, deadlocks and other synchronisation problems. | In weeks 4 and 5 the second assessable laboratory/tutorial work will take place. This will take the form of a parallel, multi-process system constructed using MPI. |
5 | The lecture will look at various distributed computing application areas and algorithms, and how they map onto various kinds of distributed systems. | The second assessable laboratory/tutorial work is due. |
6 | The lecture will consider difficulties involved in the use and design of distributed systems. These include security, reliability, robustness, fault tolerance, and maintenance. | Assignment 1 due Wednesday 4 September 2013, 6PM. The assignment specification and topics will be posted on the unit web site. The assignment will take the form of a written research report on an aspect of distributed computing. ___________________________________________________________________________________ In weeks 6 and 7 the third assessable laboratory/tutorial work will take place. This will take the form of a parallel, multi-process system constructed using the shared-memory paradigm. |
7 | In this lecture we will study parallel computer architectures beginning with instruction level parallelism and super-scalar processing. | The third assessable laboratory/tutorial work is due. |
8 | The lecture will examine different categories of parallel computer architectures including Flynn's classification of SIMD, MIMD. We will look at Vector and Array architectures. | In weeks 8 and 9 the fourth assessable laboratory/tutorial work will take place. This will take the form of an exploration of the interaction between programmed algorithms and the underlying parallel or distributed computer architecture. |
9 | This lecture will examine data-parallel architectures, data-flow machines, and other parallel architectures. | The fourth assessable laboratory/tutorial work is due. |
10 | In the next two lectures we will bring together distributed and parallel computer architectures into complete systems and examine how everything fits together. This week we will concentrate on a massively-parallel distributed general-purpose computer system that Dr. Pose and colleagues designed and built. | In weeks 10 and 11 the fifth assessable laboratory/tutorial work will take place. This will take the form of an exploration of the overheads in running parallel and distributed systems. |
11 | Following on from the last lecture we will examine a scalable parallel special-purpose computer system and associated parallel algorithms to implement a low-latency virtual reality display system, designed and implemented by Dr. Pose and his PhD student. | The fifth assessable laboratory/tutorial work is due. |
12 | Class Test (during the lecture) | Class Test in lecture Week 12, 23 October 2013, 6PM. __________________________________ The final laboratory/tutorial sessions will be used to catch up with any unfinished work and especially to deal with any difficulties with Assignment 2. |
SWOT VAC | No formal assessment is undertaken in SWOT VAC. _____________________________________________________________________________ Assignment 2 due Monday 4 November 2013, 12Noon. The assignment specification and topics will be posted on the unit web site. The assignment will take the form of a written research report on an aspect of parallel computing architectures. | |
Examination period | LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/ academic/education/assessment/ assessment-in-coursework-policy.html |
*Unit Schedule details will be maintained and communicated to you via your learning system.
In-semester assessment: 100%
Assessment Task | Value | Due Date |
---|---|---|
Assignment 1 - Distributed Systems | 25% | Wednesday 4 September 2013, 6PM |
Assignment 2 - Parallel Architectures | 25% | Monday 4 November 2013, 12 Noon |
Class Test | 25% | Week 12 lecture (Wednesday 23 October 2013, 6PM) |
The assessed laboratory/tutorial work. | 25% | The 5 submissions of lab work are due in weeks 3, 5, 7, 9 and 11 |
Faculty Policy - Unit Assessment Hurdles (http://www.infotech.monash.edu.au/resources/staff/edgov/policies/assessment-examinations/unit-assessment-hurdles.html)
Academic Integrity - Please see the Demystifying Citing and Referencing tutorial at http://lib.monash.edu/tutorials/citing/
Individual assessment. Marks will be allocated, roughly equally, against the areas listed in the assignment specification. Further marks will be allocated for the quality of the writing, how clearly and thoroughly the ideas are explained, and the number, quality and appropriateness of the references.
Individual assessment. Marks will be allocated, roughly equally, against the areas listed in the assignment specification. Further marks will be allocated for the quality of the writing, how clearly and thoroughly the ideas are explained, and the number, quality and appropriateness of the references.
Individual assessment. Correct answers to questions.
The laboratory work is individually assessed based both on correctness and on the quality of the solutions and on the quality of documentation.
The following are some books that may be of interest. There is no single text book covering the content of FIT5174 at a suitable level. Sufficient material will be provided on the unit web site to cater for FIT5174 students. If students have interests in specific areas of parallel or distributed computing they should contact the lecturer for advice on suitable references.
G.R. Andrews: Foundations of Multithreaded, Parallel and Distributed Programming, Addison-Wesley, 2000.
J. Magee and J. Kramer: Concurrency: State models & Java Programming; John-Wiley & Sons, 2006.
I.T. Foster: Designing and Building Parallel Programs, Addison-Wesley, 1995.
M. Maekawa, A.E. Oldehoeft, R.R. Oldehoeft: Operating Systems Advanced Concepts, Benjamin/Cummings, 1987.
Advanced Computer Architectures: A Design Space Approach, Sima, Fountain and Kacsuk , Addison Wesley Publishers.
Further resources will be made available via the unit web site.
Monash Library Unit Reading List
http://readinglists.lib.monash.edu/index.html
Submission must be made by the due date otherwise penalties will be enforced.
You must negotiate any extensions formally with your campus unit leader via the in-semester special consideration process: http://www.monash.edu.au/exams/special-consideration.html
Resubmission of assignments after the due date will not be allowed, however assignments handed-in early for feedback may be resubmitted by the due date.
Formatting and referencing information will provided on the unit website.
It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz). Please note that it is your responsibility to retain copies of your assessments.
If Electronic Submission has been approved for your unit, please submit your work via the learning system for this unit, which you can access via links in the my.monash portal.
Please check with your lecturer before purchasing any Required Resources. Limited copies of prescribed texts are available for you to borrow in the library, and prescribed software is available in student labs.
VMPlayer (Freeware) or VMWare Workstation (VMWare Fusion for Mac users) software. This is available in University computer labs, but access to a personal computer with this software installed is highly recommended.
Monash has educational policies, procedures and guidelines, which are designed to ensure that staff and students are aware of the University’s academic standards, and to provide advice on how they might uphold them. You can find Monash’s Education Policies at: www.policy.monash.edu.au/policy-bank/academic/education/index.html
Key educational policies include:
The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at http://www.monash.edu.au/students. For Sunway see http://www.monash.edu.my/Student-services, and for South Africa see http://www.monash.ac.za/current/.
The Monash University Library provides a range of services, resources and programs that enable you to save time and be more effective in your learning and research. Go to www.lib.monash.edu.au or the library tab in my.monash portal for more information. At Sunway, visit the Library and Learning Commons at http://www.lib.monash.edu.my/. At South Africa visit http://www.lib.monash.ac.za/.
For more information on Monash’s educational strategy, see:
www.monash.edu.au/about/monash-directions and on student evaluations, see: www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html
Based on previous feedback the number of assignments has been reduced from three to two, and supervised and assessed lab/tutorial sessions have been included to allow more personal guidance of students and more focused practical experience of parallel/distributed programming.
Online MonQuest Evaluations and Online Unit Evaluations will continue to be requested, and encouraged, to be done by as many students as possible as usual in Semester 2, 2013.
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp
Reading material including research papers, programming manuals and system specifications, will be distributed electronically as part of the background reading material for FIT5174.
A web site for this unit should be consulted regularly. It will contain lecture material as well as other material such as software and links to relevant web sites.
http://www.csse.monash.edu.au/~rdp/FIT5174
Moodle will also be used as appropriate.
Feel free to e-mail the lecturer, Dr. Ronald Pose, with any queries. Please include "FIT5174" in the subject line to ensure prompt responses. Dr. Pose's e-mail address is:
Ronald.Pose@monash.edu