Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 2220 = 6706
Home Page
Distributed Systems 4005-730-01 Spring Quarter 2013
Course Page

4005-730-01 Distributed Systems
Programming Project 2

Prof. Alan Kaminsky -- Spring Quarter 2013
Rochester Institute of Technology -- Department of Computer Science

Grid Computing Systems
Investigation
Report
Notes
Submission Requirements
Grading Criteria
Late Projects
Plagiarism
Resubmission


Grid Computing Systems

Grid Computing System A consists of a job queue and two compute servers.

Initially, the job queue is empty and both compute servers are idle. Jobs arrive in the system and go into the job queue in FIFO order. Whenever one of the compute servers is idle and the job queue is not empty, the compute server removes the first job from the job queue, becomes busy, and proceeds to execute the job. When the job finishes, the compute server sends the job results and becomes idle again.

Grid Computing System A has the following characteristics:

Grid Computing System B consists of a job queue and four compute servers, but otherwise operates the same as Grid Computing System A.


Investigation

You must do the following:

  1. Formulate a testable hypothesis concerning the mean job response time in Grid Computing System A as compared to the mean job response time in Grid Computing System B.

  2. Write a simulation program or programs to investigate the hypothesis.

  3. Execute the simulation program(s) to collect data. You may choose the mean job execution time as you please (the same in all compute servers in both systems). You must investigate a range of mean job interarrival times; you may choose the lower and upper bounds of the mean job interarrival times as you please.

  4. Analyze the data to determine whether the hypothesis is true or false.

  5. Submit a written report with the results of your investigation.


Report

The report must be a PDF file. I will not accept anything other than a PDF file. The report must contain the following:

  1. Introduction and general description of the systems being simulated.

  2. Statement of your hypothesis.

  3. High-level description of the design of your simulation program or programs -- the classes or modules in your programs and the purpose of each class or module.

  4. High-level description of the operation of your simulation programs -- what your programs do as they execute.

  5. Complete source code for your simulation programs. The source code must be included in the PDF file, not in separate files. Each program's source code must include comments that clearly describe what the program is doing.

  6. Data collected from executing the simulation programs, presented numerically in one or more tables.

  7. Data collected from executing the simulation programs, presented graphically in one or more plots.

  8. Analysis of the data, showing how the data determines whether the hypothesis is true or false.

  9. A statement of what you learned from this project.

  10. List of references.


Notes

  1. You may use any programming language you wish for your simulation.

  2. When analyzing the data to determine whether the hypothesis is true or false, it is not enough to say the data "looks good;" for example, on a plot. You must offer a precise mathematical justification for why the hypothesis is true or false.


Submission Requirements

Your report's PDF file must be named "<username>.pdf", where <username> is replaced with your RIT computer account user name.

Send your report to me by email at ark­@­cs.rit.edu. Include your full name in the email message, and include the PDF file as an attachment.

When I get your email message, I will verify that I can read your PDF file. I will then send you a reply message acknowledging I received your project. If you have not received a reply within one business day (i.e., not counting weekends), please contact me. Your project is not successfully submitted until I have sent you an acknowledgment.

The submission deadline is Tuesday, April 23, 2013 at 11:59pm. The date/time when your email message arrives in my inbox (not when you sent the message) will determine whether your project meets the deadline.

You may submit your project multiple times before the deadline. I will keep and grade only your most recent submission that arrived before the deadline. There is no penalty for multiple submissions.

If you submit your project before the deadline, but I do not accept it (i.e., I can't read your PDF file), and you cannot or do not submit your project again before the deadline, the project will be late (see Late Submissions below). I strongly advise you to submit the project several days before the deadline, so there will be time to deal with any problems that may arise in the submission process.


Grading Criteria

Your report will be graded as follows:

Each portion of the report will be graded as follows:

After grading your project I will put your grade and any comments I have in your encrypted grade file. For further information, see the Course Grading and Policies and the Encrypted Grades.


Late Projects

If I have not received a successful submission of your project by the deadline, your project will be late and will receive a grade of 0. You may request an extension for the project. There is no penalty for an extension. See the Course Policies for my policy on extensions.


Plagiarism

Programming Project 2 must be entirely your own individual work. Programming Project 2 is not to be done as a team effort. I will not tolerate plagiarism. If in my judgment the project is not entirely your own work, you will automatically receive, as a minimum, a grade of zero for the assignment. See the Course Policies for my policy on plagiarism.


Resubmission

If you so choose, you may submit a revised version of your project after you have received the grade for the original version. You are allowed to make one and only one resubmission of the project. However, if the original project was not successfully submitted by the (possibly extended) deadline or was not entirely your own work (i.e., plagiarized), you are not allowed to submit a revised version. Submit the revised version via email in the same way as the original version. I will accept a resubmission up until 11:59pm Friday 10-May-2013. The resubmission deadline will be announced on the What's New page and in the Course Schedule. I will grade the revised version using the same criteria as the original version, then I will subtract 3 points as a resubmission penalty. The revised grade will replace the original grade, even if the revised grade is less than the original grade.

Distributed Systems 4005-730-01 Spring Quarter 2013
Course Page
Alan Kaminsky Department of Computer Science Rochester Institute of Technology 4486 + 2220 = 6706
Home Page
Copyright © 2013 Alan Kaminsky. All rights reserved. Last updated 03-May-2013. Please send comments to ark­@­cs.rit.edu.