Code Monkey home page Code Monkey logo

cpsc-4770_6770's Introduction

General Course Information

The objectives of this course are to investigate issues in modern distributed platforms. We will cover a number of important technologies in the areas of distributed computing in computational and data-intensive problems. By the end of the course, each student should understand and be able to apply several specific tradeoffs for parallel application and algorithms development, performance, and management on a number of distributed platforms. Each student will complete several programming and system exercises and a semester group project based on the concepts studied in the course.

Graduates will be able to:

  1. apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices,
  2. analyze a problem, and identify and define the computing requirements appropriate to its solution,
  3. apply design and development principles in the construction of distributed computing systems, and
  4. function effectively on teams to accomplish a common goal.

Prerequesites

  1. Working knowledge of the Python programming language and Linux system.
  2. Working knowledge of data structures and algorithms
  3. Familiarity with C/C++/Java.
  4. Introduction to Python.

Course Topics

  1. Introduction to Distributed Computing

  2. Distributed and Parallel File Systems

  3. Message-Passing Computing

  4. Scheduling on Cluster of Computers

  5. Big Data and Data Intensive Computing

  6. Hadoop Distributed File System (HDFS)

  7. MapReduce Programming Paradigm

  8. Memory-centric Distributed Computing

  9. Message-oriented Middleware

  10. Distributed Stream Processing

  11. Cloud Computing

Instructional Staff

  • Instructor of Record: Dr. Linh B. Ngo
  • Office: 2091 Barre Hall
  • Office Hours: M 10:00AM - 11:00AM, R 1:00PM - 2:00PM
  • Email: LNGO [at] CLEMSON [dot] EDU

Time and Location

  • MWF 12:20PM - 01:10PM
  • Riggs 227

Reference Book (Optional)

Parallel Programming: Techniques and Applications using Networked Workstations and Parallel Computers (2nd Edition - 2004) by Barry Wilkinson and Michael Allen. (ISBN: 0131405632)

Laptop requirements

As a significant portion of the course involves working with the Palmetto Supercomputer and coding, having access to a laptop during class time is important so that the students can follow the in-class materials. As there are a limited number of power outlets in the classroom, the students need to make sure that their laptops are fully charged for the duration of the class.

Course Materials

Lecture slides and example codes will be available for download from the website. Links to papers on subjects we will be discussing in class will be listed on the website and/or embedded in the slides. Students are responsible for all the materials including lecture slides, example codes, and papers.

Grading (4770)

Grades will be based on the following distribution:

Assignment:60% Exam 1: 20% Exam 2: 10% Quiz and participation: 10% Letter grades are assigned according to the standard scale (i.e. A: 90-100, B: 80-89, C: 70-79, D: 60-69, F: 0-59).

Grading (6770)

Grades will be based on the following distribution:

Assignment: 40% Project: 20% Exam 1: 20% Exam 2: 10% Quiz and participation: 10% Letter grades are assigned according to the standard scale (i.e. A: 90-100, B: 80-89, C: 70-79, D: 60-69, F: 0-59).

Late Work

Without prior approval from the instructors, late homework assignments will not be accepted but will be assigned a grade of zero. Unless accompanied with a valid medical or University excuse, all late submissions will be penalized. A make-up for the Exams will be given only with a valid medical or University excuse. Blackboard “notification of absence” is not sufficient.

Attendance Policy

  • Attendance is critical to the success of students in this class.
  • We will take note of who attends, including occasionally using attendance check in place of a quiz score.
  • If you miss a class, you are responsible for obtaining lecture notes, handouts, and homework assignments from fellow students.
  • If the instructor is late for class, please wait 20 minutes before leaving.

Academic Integrity

“As members of the Clemson University community, we have inherited Thomas Green Clemson’s vision of this institution as a “high seminary of learning.” Fundamental to this vision is a mutual commitment to truthfulness, honor, and responsibility, without which we cannot earn the trust and respect of others. Furthermore, we recognize that academic dishonesty detracts from the value of a Clemson degree. Therefore, we shall not tolerate lying, cheating, or stealing in any form.”

The instructor takes academic integrity extremely seriously and expects students to do so too. Scientific progress requires scientists to be honest in reporting their methods and results, the extent of their own contributions, and to accurately represent the research and ideas of other scientists. Failures of academic integrity such as plagiarism (i.e., representing the ideas or words of another as if they are your own) are always an insult to instructors and other students. Cheating, plagiarism, and all other academic integrity violations will handle according to the University policies regarding classroom expectations and academic integrity violation, as specified at http://www.clemson.edu/academics/academic-integrity/

Collaboration Policy

In and out of class assignments are opportunities for learning and discovery. Collaboration between students on homework assignments in this class is permitted. Collaboration includes students working together to gain an understanding of course concepts, active discussions with the instructor and other people to learn about course material, and other activities in which a student is actively seeking to learn and understand the topics covered in the course. I do expect that you understand and can explain any homework solution that you submit, no matter how you worked on it.

As has always been the case, however, plagiarism is not allowed. Taking assignments from other classmates or downloading completed assignments from websites is not allowed. These are activities that are simply meant to earn a score, not understand the course material. If you collaborate with other students in class or use sources other than those provided for everyone in the course (e.g., instructor, recommended textbook, the course web site, or the lectures) to help yourself learn and understand, then you must give appropriate credit to those collaborators and/or sources. As long as you acknowledge the collaboration that occurred, your grade will not be affected nor will you be charged with academic misconduct. On the other hand, a failure to acknowledge collaborations or give appropriate credit to sources of help (other than course materials or personnel as noted above) will be treated as plagiarism.

Contributorship Statement

To ensure that you acknowledge contributions, collaborations and sources, you are required to include a contributorship statement at the beginning of every assignment that you submit. The statement should say:

"I worked on this assignment alone, using only course materials."

OR

"I worked on this assignment with give the names of the people you worked with. My role in completing the assignment was provide description of all your contributions, while provide names of other collaborators role in completing the assignment was provide a description of their contributions. We consulted related material that can be found at cite any other materials not provided as course materials."

Any assignment that does not include a collaboration statement is assumed to be done individually using only course materials.

Disability Accommodations

Students with disabilities needing accommodations should make an appointment with Margaret M. Camp, Director of Student Accessibility Services, to discuss specific needs within the first month of classes. Student should present a Faculty Accommodation Letter from Student Disability Services when they meet with instructors. The Office of Student Disability Services in Suite 239, Academic Success Building (864-656-6848; [email protected]). Please be aware that accommodations are not retroactive and new Faculty Accommodation Letters must be presented each semester.

Title IX Statement

Clemson University is committed to a policy of equal opportunity for all persons and does not discriminate on the basis of race, color, religion, sex, sexual orientation, gender, pregnancy, national origin, age, disability, veterans status, genetic information or protected activity (e.g., opposition to prohibited discrimination or participation in any complaint process, etc.) in employment, educational programs and activities, admissions and financial aid. This includes a prohibition against sexual harassment and sexual violence as mandated by Title IX of the Education Amendments of 1972.

This policy is located at http://www.clemson.edu/campuslife/campus-services/access/title-ix/.

Mr. Jerry Knighton is the Clemson University Title IX Coordinator. He also is the Director of Access and Equity. His office is located at 111 Holtzendorff Hall, 864.656.3181 (voice) or 864.565.0899 (TDD).

cpsc-4770_6770's People

Contributors

shaochunpeng avatar studentngo avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.