0% found this document useful (0 votes)
45 views8 pages

Coc407 Syllabus

Uploaded by

jogoil502
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views8 pages

Coc407 Syllabus

Uploaded by

jogoil502
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

© Dr. Abdallah Mohamed.

Not to be copied, used, or revised without express written permission from the copyright owner

COSC 407-001: Introduction to Parallel Computing


2022W Term 1

Instructor Dr. Abdallah Mohamed


[email protected] (write the course number in the email subject, i.e. COSC407: subject)
Office hours
Mon, 13:00-14:00, 15:30-16:00 In-person, SCI-108
Thu, 10:00-11:00 In-person, SCI-108
or by appointment

Lectures Tue, Thu 11:00-12:30 Zoom (7562761523) or In-person (L305) (see schedule below)
Labs L01 Thu 14:00-16:00 SCI-234 TA: Congsong Zhang
L02 Mon 14:00-16:00 SCI-234 TA: Isha Shah
L03 Wed 16:00-18:00 SCI-234 TA: Congsong Zhang
L04 Mon 08:00-10:00 SCI-234 TA: Isha Shah
All TA’s can be contacted on Canvas.

Course Description
Academic Calendar Entry: Design and implementation of parallel programs including theoretical computer
models, parallel architectures (distributed, multicore, GPU), and standard parallel libraries. Credit will be
granted for only one of COSC 407 or COSC 507. [3-2-0]

More details: The course will provide 3rd and 4th year students with an introduction to parallel computing.
Upon completion of the course students will be able to understand parallel computing architectures and their
limitations, create and implement parallel programs using various standard libraries, explain the limitation of
the IEEE 754 floating point model, determine whether an undesirable output is due to floating point errors,
and write parallel code.
Prerequisites: 3rd year standing and either COSC 111 or APSC 177.
Students who lack the prerequisites should not be registered for this course and will receive a failing grade
if they remain in it. Any exceptions must be brought to the attention of the instructor immediately.

Course URL https://canvas.ubc.ca


https://people.ok.ubc.ca/abdalmoh/teaching/407

1
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Assessment
• Lecture Quizzes 10 % (clickers + canvas quizzes. full mark if you get 80% or more)
• Lab Assignments 20 %
• Two Midterm Exams 10 % - 30 % (75 minutes each, in-person during scheduled lecture time)
• Final Exam 40 % - 60 % (cumulative, in-person)
Midterms are used to improve your mark, not to penalize. There is 70% of the course grade for all exams. The exams
mark is calculated based on the best of the following options:

Option 1 Option 2 Option 3 Option 4


Midterm 1 15 % 15 % 5% 5%
Midterm 2 15 % 5% 15 % 5%
Final 40 % 50 % 50 % 60 %
Final grades will be based on the evaluations listed above and the final grade will be assigned according to the
standardized grading system outlined in the UBC Okanagan Calendar.

Passing criteria: to pass the course, a student must receive: (1) an overall course grade of at least 50%, and (2) a
combined grade of at least 50% on the exams (midterms and final). Failure to do so will result in a 45% grade, or the
resulting grade, whichever is the lowest. Students will not be able to receive a passing grade if they are not
registered to the required lab section.

Final grades will be based on the evaluations listed above, and the final grade will be assigned according to the
standardized grading system outlined in the UBC Okanagan Calendar.

Final Examinations: The examination period for this term will be announced at https://students.ok.ubc.ca/courses-
money-enrolment/exams. Students will be permitted to apply for out-of-time final examinations only if they are
representing the University, the province, or the country in a competition or performance; serving in the Canadian
military; observing a religious rite; working to support themselves or their family; or caring for a family
member. Unforeseen events include (but may not be limited to) the following: ill health or other personal challenges
that arise during a term and changes in the requirements of an ongoing job. An examination hardship is defined as
the occurrence of an examination candidate being faced with three (3) or more formal examinations scheduled
within a 27-hour (inclusive) period.

Further information on Academic Concession can be found under Policies and Regulation in the Okanagan Academic
Calendar: http://www.calendar.ubc.ca/okanagan/index.cfm?tree=3,48,0,0

Grading Practices: Faculties, departments, and schools reserve the right to scale grades in order to maintain equity
among sections and conformity to university, faculty, department, or school norms. Students should therefore note
that an unofficial grade given by an instructor might be changed by the faculty, department, or school. Grades are not
official until they appear on a student's academic record.
http://www.calendar.ubc.ca/okanagan/index.cfm?tree=3,41,90,1014

Grievances and Complaints: A student who has a complaint related to this course should follow this procedure: The
student should attempt to resolve the matter with the instructor first. Students may talk first to someone other than
the instructor if they do not feel, for whatever reason, that they can directly approach the instructor. If the complaint is
not resolved to the student's satisfaction, the student should e-mail the Associate Head of Subject Dr. Yves Lucet at
[email protected] or the Department Head Dr. John Braun at [email protected]

2
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Textbook and Reference Materials


• Course website and discussion forum on Canvas, Lecture Notes (available electronically).
• Recommended Textbooks:
▪ Pacheco, P. S. An introduction to Parallel Programming, 2nd Ed., Morgan Kaufmann., 2022 (1st Ed
is fine too)
▪ Kirk, D. B. & Hwu, W.-m. W. Programming Massively Parallel Processors: A Hands-on Approach,
3rd Ed., Morgan Kaufmann Publishers Inc., 2016 (earlier editions are ok)
▪ Sanders, J. & Kandrot, E. CUDA by Example: An Introduction to General-Purpose GPU
Programming, Addison-Wesley Professional, 2010, ISBN: 0131387685.
• More references:
▪ Rauber, T. & Rünger, G., Parallel Programming: for Multicore and Cluster Systems, Springer
Publishing Company Inc. , 2015, ISBN: 3642438067
▪ Cheng, J, Grossman, M, &McKercher, T, Professional CUDA C Programming, Wrox, 2014.
▪ Eijkhout, V., Intro to High-Performance Scientific Computing, 2015, ISBN: 9781257992546.

Required Equipment
• For the online portion of the course: all students must have access to computers with reliable internet +
microphone + webcam. Students are encouraged to check out this link:
https://keeplearning.ubc.ca/setting-up.
- As indicated above, we may be required to switch to fully online teaching. Therefore, make sure you
have access to (a computer + reliable internet + webcam + mic + quite room) as soon as possible.
• For class exercises: all students are expected to have an iClicker Cloud account (instructions here).

Expectations
It is my best day when all my students pass the course, receive good grades, and feel the course was useful. For
that to happen, help me by putting enough effort for the course. I expect that you will attend all classes and
participate in class discussions, read the lecture notes before the lecture, attend all labs, finish all your assignments
on time, and practice on the course materials. I also expect that you will spend (in average) at least 7 hours per week
in out-of-class relevant activities (homework, preparation, practicing).

3
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Course Format
Lectures: This course uses a blended form of learning. There are two lectures every week (see the course
schedule):
1) Regular, in-person lecture (Thursday and a few most Tuesdays)
- In-person lecture where I teach and discuss new material.
2) Flipped, online lecture (Most Tuesdays)
- Based on a pre-recorded video which you can watch at any time before the lecture.
- We will use the scheduled lecture time to go over the practice questions and do exercises related to
the lecture, discuss issues related to the lecture, and answer questions or doubts related to the
recording. I will not repeat the lecture during this time.
Lecture Quizzes: We will have MCQs questions in almost every lecture:
• For flipped lectures:
- Embedded questions in the videos; these questions do not count towards your grade.
- Same questions will be discussed during the lecture time and posted as Canvas quizzes that will be
counted towards your grade. You must finish this quiz before the posted deadline.
• For regular lectures:
- Questions displayed during the lecture, and they can only be answered using iClickers.
- Your iClicker responses will be counted towards your grade.
- Create an iClicker Cloud account using these Instructions: https://lthub.ubc.ca/guides/iclicker-cloud-
student-guide. You must link your iClicker account to Canvas.
- You can submit your responses using web interface (must sign-in to your iClicker account) or phone
app (search for iClicker Reef on our play/app store). Whether you use the web interface or phone app,
you must “join” class on the clickers system after the class starts.
Labs
• Labs will be offered in-person as indicated on page 1 of this syllabus.
• A student must be registered in one lab for his/her assignments to be accepted.
Exams
• Platform: Exams will be held in-person: Midterms in the same classroom used for the lectures, during the
scheduled lecture times. Location for final exam will be announced later.
• Format: The examinations in this course are all closed-book, so you are NOT permitted to access any of
the course materials, including your notes, during the exam. You are also NOT to communicate with
anyone about the exam during the scheduled write time or after the examination – you are to work
independently. Communication with other students (written, text, verbal, etc.) is not permitted and will
constitute Academic Misconduct.

4
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Tentative Course Schedule and Required Readings


The course schedule contains the most up-to-date information and important dates for main events such as assignme
nts due dates and tests. These dates and topics are subject to change. Any change will be announced to students. The
due dates of each assignment is one or two weeks after the lab (as indicated below) at 11:59 pm. All assignments sh
ould be done on INDIVIDUAL basis (NO GROUP WORK).

Regular
Flipped
W L Date Topics Labs

L1 Tue 6/9 Introduction to the course x No lab in the first week


1
L2 Thu 8/9 Intro to C (basics, arrays, functions) x
L3 Tue 13 / 9 Intro to C (pointers, struct, directives) x A1: Intro to C, due Friday, Sep 23
2 L4 Thu 15 / 9 Basic Concepts of Parallelism
x
OpenMP (A): Intro
L5 Tue 20 / 9 OpenMP (B, C): Mutual Exclusion, Reduction, Sync x A2: C-pointers, OpenMP(A), due Fri, Sep 30
3
L6 Thu 22 / 9 OpenMP (D): Work Sharing 1 x
L7 Tue 27 / 9 OpenMP (E): Work Sharing 2 x A3: OpenMP (B,C,D), due Fri, Oct 7
4
L8 Thu 29 / 9 OpenMP (F,G): Example Applications, Misc. x
L9 Tue 4 / 10 Speed/Efficiency x A4: OpenMP (E,F), due Fri, Oct 14
5 L10 Thu 6 / 10 Midterm Overview
X
OpenMP(I): Exercises (with iClicker questions)
L11 Tue 11/10 Midterm 1 (during lecture time, L1 to L8 + L10) x Review
6 L12 Thu 13/10 Midterm discussion Students in Monday labs are welcome to join
x
CUDA (A) : Introduction other lab sessions.
L13 Tue 18/10 CUDA (B): Programming model x x Midterm 1 discussion with the TA
7
L14 Thu 20/10 CUDA (C): Threads Organization x A5: CUDA (A,B), due Fri, Nov 4
L15 Tue 25/10 CUDA (C): Threads Organization, cont’d x x Continue A5
8
L16 Thu 27/10 CUDA (D,E): Thread Sched, Mem and Performance x
L17 Tue 1 / 11 CUDA (E): Mem and Performance, cont’d A6: CUDA (C), due Mon, Nov 14
x x
9 CUDA (F): Thread Sync A7: CUDA (D,E,F), due Fri, Nov 18
L18 Thu 3 / 11 CUDA (G): Best Practices x
Tue 8 / 11 No class – Remembrance Day + Midterm break No Labs during this week
10
Thu 10/11
L19 Tue 15/11 CUDA (H): Practice Questions x x A8: CUDA (E,F,G), due Tue, Nov 29
11
L20 Thu 17/11 Distributed Memory Concurrency (part A) x
Lx1 Tue 22/11 Midterm Revision (with iClicker questions) x Q/A session with your TA
12
L21 Thu 24/11 Midterm 2 (in-class, L9 + L12 to L19) x
L22 Tue 29/11 Midterm discussion Midterm 2 discussion with the TA
x
13 Distributed Memory Concurrency (part B)
L23 Thu 1 / 12 Distributed Memory Concurrency (part C) x
Lx2 Tue 6 / 12 COSC507 project presentations – Attendance not No lab in the last week
14 x
required; but feel free to attend if interested)
Lx3 Thu 8 / 12 COSC507 project presentations (cont’d) x
Java Concurrency (tentative)
Final discussion

The letter “W” in the header refers to the week number, and “L” to lecture number.

5
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Missed Graded Work


Students who, because of unforeseen events, are absent during the term and are unable to complete tests or other
graded work should generally discuss with their instructors how they can make up for missed work, according to
written guidelines given to them at the start of the course (see Grading Practices). Instructors are not required to
make allowance for missed tests or incomplete work not satisfactorily accounted for. If ill-health is an issue, students
are encouraged to seek attention from a health professional. Campus Health and Counselling will usually provide the
documentation only to students who have been seen previously at these offices for treatment or counselling specific
to conditions associated with their academic difficulties. Students who feel that requests for consideration have not
been dealt with fairly by their instructors may take their concerns first to the Head of the discipline and, if not
resolved, to the Office of the Dean. Further information can be found at:
http://www.calendar.ubc.ca/okanagan/index.cfm?tree=3,48,0,0. There will be no make-up midterm exams. If the
absence is satisfactory, the student’s final exam will be worth more than the final grade.

Generally speaking, if a student misses an exam without an acceptable excuse according to the UBC
Okanagan's policy on excused absences from examinations, the mark received will be zero. If an acceptable
excuse is provided to the instructor, then for:
• Midterm Examinations: the grade will be combined with the marks of the final exam so that the exams
are still worth 70% of the total grade. If a student misses both midterms with acceptable excuse, a
make-up exam might be arranged for the second midterm. Note that a make-up exam may have a
question format different from the regular exam.
• Final Examination: all requests for changes to final exams must be sent to the office of the Associate
Dean of Students ([email protected]). Further information on Academic Concession can be
found under Policies and Regulation in the Okanagan Academic Calendar
http://www.calendar.ubc.ca/okanagan/index.cfm?tree=3,48,0,0. A make-up exam may have a question
format different from the regular exam
• Missed clicker questions: no answers will be accepted except those provided during the lecture time
using your own clicker account

Late Assignments/project
Except for extreme situations (e.g., illness, childbirth, or bereavement supported by a written proof such as a
doctor’s note), the following policy is applied to late assignments or project:

• 0 to 24 hours late: 25%-mark deduction (e.g., if an assignment is worth 20 marks, then 5 marks will be deducted
from the assignment mark; no negative marks will be given.).
• 24 to 48 hours late: 50%-mark deduction
• More than 48 hours: no mark.

One-time Extension Policy


• Everyone can get a one-time extension for 3 days for any assignment of their choice. Use this extension
wisely as I will give no additional extensions unless in very very extreme situations (e.g. admission to
hospital, death in family). If you used this extension then asked for another one due to having too many
exams/assignments, travelling, etc. you will not get a second extension.
• This policy only applies to assignments A1, A2, etc., and it does not apply to the last assignment or the
Project.
• You do not have to ask for permission to use the 3-day extension. Just inform your TA directly (no
need to email the professor, but you must inform your TA)

6
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

Academic Integrity
The academic enterprise is founded on honesty, civility, and integrity. As members of this enterprise, all students
are expected to know, understand, and follow the codes of conduct regarding academic integrity. At the most basic
level, this means submitting only original work done by you and acknowledging all sources of information or ideas
and attributing them to others as required. This also means you should not cheat, copy, or mislead others about
what is your work. Violations of academic integrity (i.e., misconduct) lead to the breakdown of the academic
enterprise, and therefore serious consequences arise, and harsh sanctions are imposed. For example, incidences of
plagiarism or cheating may result in a mark of zero on the assignment or exam and more serious consequences may
apply if the matter is referred to the President’s Advisory Committee on Student Discipline. Careful records are kept
in order to monitor and prevent recurrences. A more detailed description of academic integrity, including the
University’s policies and procedures, may be found in the Academic Calendar at:
http://okanagan.students.ubc.ca/calendar/index.cfm?tree=3,54,111,0.

Cooperation vs. Cheating


Working with others on assignments is a good way to learn the material and we encourage it. However, there are
limits to the degree of cooperation that we will permit. Any level of cooperation beyond what is permitted is
considered cheating.
When working on programming assignments, you must work only with others whose understanding of the material
is approximately equal to yours. In this situation, working together to find a good approach for solving a
programming problem is cooperation; listening while someone dictates a solution is cheating. You must limit
collaboration to a high-level discussion of solution strategies and stop short of writing down a group answer.
Anything that you hand in, whether it is a written problem or a computer program, must be written by you, from
scratch, in your own words. If you base your solution on any other written solution, you are cheating. If you provide
your solution for others to use, you are also cheating.

Copyright Disclaimer
Diagrams and figures included in lecture presentations adhere to Copyright Guidelines for UBC Faculty, Staff and
Students http://copyright.ubc.ca/requirements/copyright-guidelines/ and UBC Fair Dealing Requirements for Faculty
and Staff http://copyright.ubc.ca/requirements/fair-dealing/. Some of these figures and images are subject to
copyright and will not be posted to Canvas. All material uploaded to Canvas that contain diagrams and figures are
used with permission of the publisher; are in the public domain; are licensed by Creative Commons; meet the
permitted terms of use of UBC’s library license agreements for electronic items; and/or adhere to the UBC Fair
Dealing Requirements for Faculty and Staff. Access to the Canvas course site is limited to students currently
registered in this course. Under no circumstance are students permitted to provide any other person with means to
access this material. Anyone violating these restrictions may be subject to legal action. Permission to electronically
record any course materials must be granted by the instructor. Distribution of this material to a third party is
forbidden.

Student Service Resources


Disability Resource Centre: The Disability Resource Centre ensures educational equity for students with disabilities
and chronic medical conditions. If you are disabled, have an injury or illness and require academic accommodations to
meet the course objectives, please contact Earllene Roberts, the Diversity Advisor for the Disability Resource Centre
located in the University Centre building (UNC 215).
UNC 215 250.807.9263
email: [email protected]
Web: www.students.ok.ubc.ca/drc

Equity and Inclusion Office: Through leadership, vision, and collaborative action, the Equity & Inclusion Office (EIO)
develops action strategies in support of efforts to embed equity and inclusion in the daily operations across the campus.
The EIO provides education and training from cultivating respectful, inclusive spaces and communities to understanding
unconscious/implicit bias and its operation within in campus environments. UBC Policy 3 prohibits discrimination and

7
© Dr. Abdallah Mohamed. Not to be copied, used, or revised without express written permission from the copyright owner

harassment on the basis of BC’s Human Rights Code. If you require assistance related to an issue of equity, educational
programs, discrimination or harassment please contact the EIO.
UNC 325H 250.807.9291
email: [email protected]
Web: www.equity.ok.ubc.ca

Office of the Ombudsperson for Students: The Office of the Ombudsperson for Students is an independent,
confidential and impartial resource to ensure students are treated fairly. The Ombuds Office helps students navigate
campus-related fairness concerns. They work with UBC community members individually and at the systemic level to
ensure students are treated fairly and can learn, work and live in a fair, equitable and respectful environment.
Ombuds helps students gain clarity on UBC policies and procedures, explore options, identify next steps, recommend
resources, plan strategies and receive objective feedback to promote constructive problem solving. If you require
assistance, please feel free to reach out for more information or to arrange an appointment.
UNC 328 250.807.9818
email: [email protected]
Web: www.ombudsoffice.ubc.ca

Sexual Violence Prevention and Response Office (SVPRO): A safe and confidential place for UBC students, staff
and faculty who have experienced sexual violence regardless of when or where it took place. Just want to talk? We
are here to listen and help you explore your options. We can help you find a safe place to stay, explain your reporting
options (UBC or police), accompany you to the hospital, or support you with academic accommodations. You have
the right to choose what happens next. We support your decision, whatever you decide.
Visit svpro.ok.ubc.ca or call us at 250-807-9640.

Independent Investigations Office (IIO): If you or someone you know has experienced sexual assault or some other
form of sexual misconduct by a UBC community member and you want the Independent Investigations Office (IIO) at
UBC to investigate, please contact the IIO. Investigations are conducted in a trauma informed, confidential and
respectful manner in accordance with the principles of procedural fairness. You can report your experience directly to
the IIO by calling 604-827-2060.
Web: https://investigationsoffice.ubc.ca/
E-mail: [email protected]

Student Learning Hub: The Student Learning Hub (LIB 237) is your go-to resource for free math, science, writing,
and language learning support. The Hub welcomes undergraduate students from all disciplines and year levels to
access a range of supports that include tutoring in math, sciences, languages, and writing, as well as help with study
skills and learning strategies. For more information, please visit the Hub’s website
(https://students.ok.ubc.ca/student-learning-hub/) or call 250-807-9185.

Student Wellness: At UBC Okanagan health services to students are provided by Student Wellness. Nurses,
physicians and counsellors provide health care and counselling related to physical health, emotional/mental health
and sexual/reproductive health concerns. As well, health promotion, education and research activities are provided
to the campus community. If you require assistance with your health, please contact Student Wellness for more
information or to book an appointment.
UNC 337 250.807.9270
email: [email protected]
Web: www.students.ok.ubc.ca/health-wellness

SAFEWALK
Don't want to walk alone at night? Not too sure how to get somewhere on campus? Call Safewalk at
250-807-8076.
For more information, see: www.security.ok.ubc.ca

You might also like