Assignment 0: Describe a Parallel Application

Results for Homework 0 are available! (Results)

This is a warm-up exercise to summarize the state of current parallel applications. The summaries may help you or classmates choose final projects.

Due Date: Wednesday, January 24th (9:00am PST)

Remote XSEDE/Moodle Students: Please Read

Dear Remote Students, we are thrilled to be a part of your parallel computing learning experience and to share these resources with you! To avoid confusion, please note that the assignment instructions, deadlines, and other assignment details posted here were designed for the local UC Berkeley students. You should check with your local instruction team about submission, deadlines, job-running details, etc. and utilize Moodle for questions. With that in mind, the problem statement, source code, and references should still help you get started (just beware of institution-specific instructions). Best of luck and we hope you enjoy the assignment!

Problem

First, include a brief bio of you, your research interests, and what you'd like to get out of the class. This will help us form initial assignment groups, and later this will help you find project partners.

Examine an application problem for which parallel computing has been used. You may pick a problem from your own research area, somewhere on the web, or elsewhere (so long as it is verifiable). Build a web page briefly describing the application, the use of parallelism, and a frank assessment of its success, weaknesses, and challenges.

Some specific details to consider include the following:

  • What is the scientific or engineering problem being solved?
  • How well did the application achieve its scientific / engineering objective? Are simulation results compared to physical results?
  • What parallel platform has the application targeted? (distributed vs. shared memory, vector, etc.) What tools were used to build the application? (languages, libraries, etc.)
  • If the application is run on a major supercomputer, where does that computer rank on the Top 500 list?
  • How well did the application perform? How does this compare to the platform's best possible performance?
  • Does the application "scale" to large problems on many processors? If you believe it has not, what bottlenecks may have limited its performance?

Not all of these details will be available for all applications. You ought to explain what you find noteworthy about the application or its implementation.

Resources

Besides your advisor and Google, you may want to start looking from

The results from previous classes also may help:

Submission

Berkeley students please submit a file (zip, tar, pdf and etc.) or a URL at which the GSIs can retrieve your work to bCourses. The submissions will be copied and posted under the class's page, so do not include information you wish to keep private.