ENEE759K/CMSC751: Parallel Algorithms
Spring 2010
This page will be updated frequently during the progress of the course.
The updates will include links to corrections and some announcements.
Contact: Please see each
specific programming assignment for contact information.
Announcements
04/22/2010
Programming assignment HW6A: Connectivity and HW6B: Tuning BFS has been posted under Assignments. Due date: 5/11/10. Please note that
this is a two-part assignment. Both parts are required for full credit.
04/08/2010
Programing assingment HW5: Summation Fine-Tuning
has been posted under "Assignments". Due date:
4/23/10.
03/25/2010
Programming assignment HW4: Breadth-First Search
has been posted under "Assignments". Due date:
4/9/10.
03/10/2010
Programming assignment HW3: Integer and Radix Sorting
has been posted under "Assignments". Due date:
3/26/10.
03/02/2010
Important announcement about the HW2: Selection please click
here
02/24/2010
We recenly upgraded the XMTC compiler on the Paraleap server. Please
read this announcement for clarifications.
02/24/2010
Programming assignment HW2: Selection has been
posted under "Assignments". Due date: 3/12/2010.
02/08/2010
Programming assignment HW1: Matvec has been posted
under "Assignments". Due date: 2/23/2010.
02/03/2010
A quick XMT tools reference "XMT Quick
Reference"
has
been posted under "Additional Helpful Documents".
02/03/2010
Solving the programming assignments will require remotely working on a
Linux computer. If you are unfamiliar with this environment, I
recommend reading the "Simple Unix
Tutorial" found under the "Additional
Helpful Documents"
section before starting anything else. You can then proceed to the
XMT-C Tutorial
and Manual as needed.
Essential documents and links
Assignments
Additional Helpful Documents
Additional information for the assignments
- To connect to the class server, you will need an
account and password. These have been handed out in class individually.
- Use an ssh client to connect to the class server.
Use paraleap.ece.umd.edu as
the server name, and the account and password from above to
authenticate.
Information about XMTC Compiler Upgrade
Please read the following information regarding a recent update to the
XMTC compiler installed on the Paraleap server.
Subject: Information About the
xmtcc compiler
Dear Students,
I am Alex Tzannes and maintain the
xmtcc compiler with George Caragea. I am always interested in knowing
if you encounter bugs or have things you would like to see fixed in
xmtcc. Realize however that xmtcc is a research compiler so don't
expect the stability and maturity of a production compiler and be extra
careful when writing code as to what is supported by the compiler.
Unfortunately the
error checking is far from perfect
and if you use unsupported features chances are you will not get a
compilation error, or at least not one you will be able to
understand... :) So for example don't use floats or
doubles!!
The compiler you used for the first
homework assignment (matvec) didn't include some upgrades made since
the last time the class was given (spring 09). I have updated the
compiler so next time you use xmtcc you will be able to take advantage
of those upgrades. The upgrades mainly focus on minor bug fixes and
better error reporting.
You can switch back to the old
version of the compiler (the one you used for matvec) by using the
following command on the command line:
PATH=/opt/xmt/xmtcc.r5360/bin:${PATH}
This prepends to your PATH
environment variable the path of the old compiler. This syntax works
for the bash shell which is your default shell. If you figured out how
to change your shell you can also figure out how to adapt the above
command. Keep in mind that you will have to issue that command each
time you log in to switch back to the old compiler, but you shouldn't
need to do so.
To find out which 'xmtcc' will be
called when you run the compiler you can issue:
which xmtcc
I encourage everybody to test the new
xmtcc compiler on their matvec assignment to make sure the compiler
works and the cycle counts are the same. I don't expect any differences
with the old compiler but we are better off caching any such problems
early on. If anyone encounters problems please contact me by email
(having [ParAlg] in the subject line will also help me).
Best,
Alex