CS 374 introduces the ideas and concepts of
high performance computing, including programming and architecture.
Students gain practical experience programming
Calvin's Beowulf cluster.
Instructor:
Professor Joel Adams
Text: For sale in the bookstore...
-
An Introduction to Parallel Programming (2nd Ed), Pacheco
Grading:
Your grade in this course will depend on your successful completion of
weekly homework projects and the final exam.
These will be weighted at 75% and 25%, respectively.
Each homework project has three parts, in which you must:
-
Write one or more programs that solve a problem.
See
my code-style guidelines
for my expectations and standards for the programs you write.
-
Collect data by running your programs and recording their execution times
while varying the number of processes and/or the problem size.
After the data are collected, you will typically need to create
charts or other visualizations to help you in your analysis (see next).
-
Write an analysis of the data you collected, explaining any changes
the data reveal about your program's performance.
Since you will have one of these projects each week,
I recommend that you aim to (i) complete the programming within 3 days,
(ii) complete the data collection the next day, and
(iii) complete your written analysis the next day.
That still leaves you two "HPC-free" days each week.
Late Work Policy:
Since we will have a new project each week, the following policy
encourages you to keep up and not fall behind,
while providing some grace/flexibility.
Unless noted otherwise,
projects are due at the beginning of lab on Wednesdays.
(i.e., must be submitted to me on or before then).
Late submissions will incur a 3x point penalty,
where x is the number of days late, for 0 < x < 4:
Days Late |
Penalty |
1 |
3 |
2 |
9 |
3 |
27 |
4 |
no longer accepted |
Requests for extensions will not be granted without
written confirmation from Student Life that you are
undergoing exceptional circumstances.
AI Policy:
Since this is an advanced CS course, you may try to use AI
code-generating tools on the homework projects.
However, be aware that you:
-
Are responsible for ensuring that the AI-generated code
is fully correct and that it completely solves the problem.
-
Must acknowledge the use of the AI tool in the header comment
of any file containing AI-generated code.
-
Must devote at least 1 extra page of your project analysis to your
experience using the AI tool, including
- which AI tool you used,
- the tasks for which you tried to use it,
- the exact prompts you used,
- a discussion of what worked (and what didn't),
- how accurate (or inaccurate) the AI's code was,
- how much time you think the AI saved (or cost) you, and
- any other interesting things you discover through using the AI tool.
Since project analyses without AI are typically about a page,
using an AI tool may save you coding time,
but it will roughly double the length of your project's
written analysis.
Disabilities Policy:
Calvin University has a continuing commitment to providing
reasonable accommodations for students with documented disabilities.
Students with disabilities who may need some accommodation
in order to fully participate in this class are urged to contact
Disability Services in the Center for Student Success as soon as possible,
to explore what arrangements need to be made to assure access:
disabilityservices@calvin.edu.
Calvin >
CS >
374 >
Policies
This page maintained by
Joel Adams.