COP 5570: Concurrent, Parallel, and Distributed Programming 9:30pm – 10:45pm, TH

Download Report

Transcript COP 5570: Concurrent, Parallel, and Distributed Programming 9:30pm – 10:45pm, TH

COP 5570: Concurrent, Parallel, and
Distributed Programming
9:30pm – 10:45pm, TH
Summer 2015
http://campus.fsu.edu
http://www.cs.fsu.edu/~xyuan/cop5570
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Instructor
Instructor: Xin Yuan
Email: [email protected]
Office: 259 Lov Building
Phone: (850)644-9133
Office hours: 1:00pm-3:00pm Tuesday/Thursday or by appointment
Class website: Blackboard
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Teaching assistant
TA: Umit Karabiyik
Email: [email protected]
Office: MCH 106B
Office hours: Wednesday 4pm-5pm, Friday 2:45pm-4:45pm
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
What this course is about
• Advanced programming in the Unix environment
–
–
–
–
Concurrent programming: with processes and threads
Parallel programming: with threads and OpenMP
Network programming: sockets
Advanced UNIX systems level programming:
• File systems, advanced I/O
• Signals
• Inter-process communication and synchronization
– Write portable code
• After taking this class, you should be able to
–
–
–
–
Use standard UNIX operating system APIs
Write concurrent and distributed programs to solve problems
Develop network applications
Develop portable programs
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Books
• Textbook:
– W. Richard Stevens, UNIX Network
Programming, Volume 1: Networking APIs Sockets and XTI, 2nd edition
• Reference books:
– W. Richard Stevens, Advanced Programming
in the UNIX Environment
– Kernighan & Ritchie, The C Programming
Language
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Pre-requisites
• Operating systems - COP 4610 or equivalent
• Basic course on networks (highly desirable) – CNT5505 or
equivalent.
• Proficiency in C or C++ - absolute must!!
• Working knowledge of Unix environment
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Grading
• Programming assignments
• Group term project
• Midterm
• Final
- 40%
- 15%
- 20%
- 25%
•Target letter grade distribution:
• half A’s, half B’s.
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Programming assignments
• Individual projects
• 4 projects (at least 2 of them fairly large, > 1000
lines)
• Late submission
– 10% penalty per day for up to two days.
• Start early!
– Expect the servers to go down at any time. Do not
expect the project deadline to be postponed if the
servers are out of service for less than 1 day during the
project period.
– Ask questions early!
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Grading Programming Assignments
• Grading is based not only on the software
functionality/quality, but also on
– Your understanding of your own code.
– Your preparation to demo the features of your program.
• A program that is “kind of” working is not good
enough.
• Make sure your code is completely ready BEFORE the due
time (usually the demo time). No modification is allowed after
demo starts.
• First unknown bug of any kind (major or minor) will cost 20%
of the project + the grade for the feature.
• The first known bug or unimplemented feature will cost extra
10% of the project.
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Group Term Project
• Up to 3 students / per group
• Potential topics will be given at around the
midterm time.
• Requirement:
– Development component: substantial programming with
techniques covered in COP5570.
– Research component: something new, something useful.
• Bi-weekly progress reports after the
midterm, presentation and demonstration at
the end of the semester.
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Grading group term project
• Based on
– Software developed
– Presentation and demonstration
– Progress reports and final report
• Main criteria
– Software quality, creativity, usefulness
– Relevance to the course
– Clearness in presentation and demonstration
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Accounts
• Computer Science account (<yourid>@cs.fsu.edu)
– For doing projects
– http://www.cs.fsu.edu/sysinfo/newstudent.html
• FSU account (<yourid>@fsu.edu)
–
–
–
–
For receiving class announcements
For submitting assignments
For getting your grades
https://www.ucs.fsu.edu/getStarted.html
• Access to blackboard
– For class materials, discussion board, grades etc.
– Through your FSU account
– http://campus.fsu.edu
COP5570 – Advanced Unix Programming
Florida State University
• Academic Integrity
– Write your own code from scratch!!!
– No copying from anywhere including old submissions and code
from the Internet.
– Don’t ask anyone for solutions and don’t give or lose your code to
anyone.
– Automated (software) plagiarism detection tools will be used in
this course.
• Penalty
– Step 1 agreement: 0 for the particular assignment/exam and the
lowering of one letter (A->B) for course final grade.
– Second violation: handled by the University honor court.
– I will not hear any explanation, copying/being copied, lost/stolen
code, etc. These are for the honor court judges, not a professor.
COP5570 – Concurrent, Parallel, and Distributed Programming
Florida State University
Course policies
• Late projects
– Please work on homework assignments/projects early and hand in on time
– 10% penalty per day for up to 2 days
• No make-up exam
– unless proof of emergency (things beyond your control)
• Incomplete grade
– Only if one item is missed in the course with an
accepted excuse.
• Please read detailed course policies in the syllabus on the
course website.
COP5570 – Advanced Unix Programming
Florida State University
• Accommodation for Disabilities
1.Register with and provide documentation to the
Student Disability Resource Center (SDRC).
2.Bring a letter to me from the SDRC `indicating you
need academic accommodation. This should be
done within the first week of class
COP5570 – Advanced Unix Programming
Florida State University
Review
• What will we do in this class?
• What are the grading items for the course?
• How is the project grading in this class different
from that in other classes?
• If I am told that I have violated the academic honor
code, can I argue for myself if I did not give the
code to anyone?
• What is the penalty for violating the honor code?
• Under what condition can one get an ‘I’ grade?
COP5570 – Advanced Unix Programming
Florida State University