Presentation is loading. Please wait.

Presentation is loading. Please wait.

Transactional Programming EE 4984/5984

Similar presentations


Presentation on theme: "Transactional Programming EE 4984/5984"— Presentation transcript:

1 Transactional Programming EE 4984/5984
Sandeep Hans ECE Department Virginia Tech

2 Who is the instructor? Sandeep Hans PhD (Technion, Israel, 2015)
Joined Virginia Tech, Fall 2015 Works in SSRG group as Post Doctoral Research Associate Major focus on theoretical foundations of Transactional Memory

3 Course Schedule Mondays, Wednesdays, 12:30 – 1:45pm 261 Durham Hall
Some guest lectures Dr. Roberto Palmieri (Res Asst Prof, SSRG) Dr. Sebastiano Peluso (Res Asst Prof, SSRG)

4 Contacts and GTA Instructor sandeep.hans@vt.edu, 540-449-5663
Office: 454 Durham Office hours: Wednesdays: 3:45-5pm

5 Course Objectives Understanding principles and practice of Transactional Memory programming How to ensure that a TM is correct? Consistency conditions How to get good performance? Progress guarantees

6 Course structure Principles first Practice later

7 Prerequisites Graduate standing
Undergraduate OS or Embedded Systems course Knowledge of basic concurrent programming in Java, or in C/C++ (augmented with a threads package such as PThreads), or in C# (Can also be achieved otherwise)

8 Textbooks and papers Tim Harris, James Larus, Ravi Rajwar, Transactional Memory, 2nd Edition, Morgan and Claypool Publishers, 2010 Recommended: Rachid Guerraoui, Paolo Romano. Transactional Memory. Foundations, Algorithms, Tools, and Applications, Springer, 2015 Rachid Guerraoui and Michal Kapalka. Principles of Transactional Memory, Morgan & Claypool, 2010 Maurice Herlihy, Nir Shavit, The Art of Multiprocessor Programming, Revised Reprint, Morgan Kaufmann, 1st edition, 2012 Papers from literature (Canvas)

9 Assignments (Theory and Programming)
Grading (tentative) Type of graded work Number Total % of final grade Assignments (Theory and Programming) 5 50% (10% each) Quiz 1 10% Programming Project (Max group size: 2) 20% Final Exam The course is planned to have 5 assignments, where each consists of question(s) and programming work. Each of these assignments counts as 10% of the final grade. One take-home quiz is planned to be distributed to students, and it counts as 10% of the final grade. A programming project is required, and it weights 20% of the final grade. The final exam contributes to 20% of the final grade. - Project: Substantial implementation related to, or complimentary to course topics –  A prospective topic list is TBA in Canvas –  Propose your own (e.g., related to your thesis research)

10 Website Course Website Canvas (canvas.vt.edu)
Syllabus, lecture slide, homeworks, projects, etc. Bring lecture slides to class Discussion forum for discussions Lectures, projects, etc. Announcements The course is planned to have 5 assignments, where each consists of question(s) and programming work. Each of these assignments counts as 10% of the final grade. One take-home quiz is planned to be distributed to students, and it counts as 10% of the final grade. A programming project is required, and it weights 20% of the final grade. The final exam contributes to 20% of the final grade. - Project: Substantial implementation related to, or complimentary to course topics –  A prospective topic list is TBA in Canvas –  Propose your own (e.g., related to your thesis research)

11 Miscellaneous Honor code policy Special needs, feedback, suggestions?
VT’s honor code is expected in all phases of course All work is expected to be the original work of individual student Special needs, feedback, suggestions? Talk to instructor See syllabus in Scholar The course is planned to have 5 assignments, where each consists of question(s) and programming work. Each of these assignments counts as 10% of the final grade. One take-home quiz is planned to be distributed to students, and it counts as 10% of the final grade. A programming project is required, and it weights 20% of the final grade. The final exam contributes to 20% of the final grade. - Project: Substantial implementation related to, or complimentary to course topics –  A prospective topic list is TBA in Canvas –  Propose your own (e.g., related to your thesis research)


Download ppt "Transactional Programming EE 4984/5984"

Similar presentations


Ads by Google