Distributed and Parallel Processing George Wells.

Slides:



Advertisements
Similar presentations
50s Computer Software and Software Engineering
Advertisements

Concurrency The need for speed. Why concurrency? Moore’s law: 1. The number of components on a chip doubles about every 18 months 2. The speed of computation.
Operating Systems Operating Systems - Winter 2009 Chapter 2 - Processes Vrije Universiteit Amsterdam.
Introduction to Computer Science CS 21a: Introduction to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
Summary Background –Why do we need parallel processing? Applications Introduction in algorithms and applications –Methodology to develop efficient parallel.
Welcome to CS697B! Special Topics on Concurrent and Distributed Systems Tue Thu 8:30pm to 9:45 :-(
Principles of Object-Oriented Software Development The language Java.
Parallel & Distributed Computing Fall 2004 Comments About Final.
CS 470/570:Introduction to Parallel and Distributed Computing.
Reference: / Parallel Programming Paradigm Yeni Herdiyeni Dept of Computer Science, IPB.
CS 21a: Intro to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
Thinking in Parallel Adopting the TCPP Core Curriculum in Computer Systems Principles Tim Richards University of Massachusetts Amherst.
General What is an OS? What do you get when you buy an OS? What does the OS do? What are the parts of an OS? What is the kernel? What is a device.
Chapter 9 Message Passing Copyright © Operating Systems, by Dhananjay Dhamdhere Copyright © Operating Systems, by Dhananjay Dhamdhere2 Introduction.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
DNA REASSEMBLY Using Javaspace Sung-Ho Maeung Laura Neureuter.
Introduction, background, jargon Jakub Yaghob. Literature T.G.Mattson, B.A.Sanders, B.L.Massingill: Patterns for Parallel Programming, Addison- Wesley,
Cli/Serv.: Dist. Prog./21 Client/Server Distributed Systems v Objectives –explain the general meaning of distributed programming beyond client/server.
Chapter 2 Parallel Architecture. Moore’s Law The number of transistors on a chip doubles every years. – Has been valid for over 40 years – Can’t.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Motions for Permanent Undergraduate Course Numbers Brian L. Evans On Behalf of the ECE Curriculum Committee September 21, 2015.
2001 Networking Operating Systems (CO32010) 1. Operating Systems 2. Processes and scheduling 3.
30 October Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.
Modern Information Retrieval Chapter 9: Parallel and Distributed IR Section 9.1: Introduction Section : MIMD Architectures Inverted Files November.
Multicore Computing Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
CSC 7600 Lecture 28 : Final Exam Review Spring 2010 HIGH PERFORMANCE COMPUTING: MODELS, METHODS, & MEANS FINAL EXAM REVIEW Daniel Kogler, Chirag Dekate.
Summary Background –Why do we need parallel processing? Moore’s law. Applications. Introduction in algorithms and applications –Methodology to develop.
Early Adopter: Integration of Parallel Topics into the Undergraduate CS Curriculum at Calvin College Joel C. Adams Chair, Department of Computer Science.
Silberschatz, Galvin and Gagne  Operating System Concepts Operating Systems 1. Overview 2. Process Management 3. Storage Management 4. I/O Systems.
Overview of Operating Systems Introduction to Operating Systems: Module 0.
Scientific Computing on Graphics Hardware Robert Strzodka, Dominik G ö ddeke Reading, UK, May
CS1253- OPERATING SYSTEMS. SYLLABUS UNIT I PROCESSES AND THREADS 9 Introduction to operating systems – Review of computer organization – Operating.
CSE 598c – Virtual Machines Survey Proposal: Improving Performance for the JVM Sandra Rueda.
Cheating The School of Network Computing, the Faculty of Information Technology and Monash as a whole regard cheating as a serious offence. Where assignments.
Modern Information Retrieval
CCSB234/CSNB234 Operating System Concepts Semester 2, Dec 2006 – Mar 2007 Abdul Rahim Ahmad.
Multicore Computing Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
CSI 3131 Summer 2016 Principles of Operating Systems Instructor: Dr. Nathalie Japkowicz Office: STE 5029 Office Hours: n In.
Distributed and Parallel Processing George Wells.
Concurrent and Distributed Programming Lecture 1 Introduction References: Slides by Mark Silberstein, 2011 “Intro to parallel computing” by Blaise Barney.
Distributed and Parallel Processing George Wells.
Distributed and Parallel Processing George Wells.
Chapter 4: Threads Modified by Dr. Neerja Mhaskar for CS 3SH3.
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
Operating Systems Chapter 2 - Processes Vrije Universiteit Amsterdam
Andy Wang COP 5611 Advanced Operating Systems
CS 854: Advanced Topics in Operating Systems
6/25/2018.
Course Introduction Dr. Eggen COP 6611 Advanced Operating Systems
Andy Wang COP 5611 Advanced Operating Systems
Team 1 Aakanksha Gupta, Solomon Walker, Guanghong Wang
New trends in parallel computing
CS 21a: Intro to Computing I
Multi-Processing in High Performance Computer Architecture:
Lecture Note 0: Course Introduction
Mach Kernel Kris Ambrose Kris Ambrose 2003.
Cryogenic Dark Matter Search Remote Controlled DAQ
Summary Background Introduction in algorithms and applications
CS533 Concepts of Operating Systems Class 1
11/29/2018.
OPERATING SYSTEMS Syllabus
Machine Learning Course.
Operating Systems Lecture 1.
2P13 Week 3.
CS510 Concurrent Systems Jonathan Walpole.
Introduction, background, jargon
Lecture Note 0: Course Introduction
Andy Wang COP 5611 Advanced Operating Systems
Lecture Topics: 11/1 Hand back midterms
Concurrency in GO CS240 23/8/2017.
Presentation transcript:

Distributed and Parallel Processing George Wells

Course Summary Introduction and Background –Terminology –Flynn's taxonomy, Amdahl's Law, etc. –Hardware issues (handout) –Different models and examples Parallel algorithm patterns (online)

Course Summary Parallel Processing –OMP: semi-automatic parallelisation (online) –Threads: Java threads and concurrency libs (Java docs) –Interprocess communication: Unix System V IPC (online) –CSP: programming model (online) –JCSP (online) –GPGPU Programming –Massive parallelism

Course Summary (cont.) Distributed Processing –Remote Procedure/Method Calls: RMI (Java docs) –Virtual Shared Memory: Linda, JavaSpaces, TSpaces (online) Formal specifications –CSP metalanguage (online)

Other Resources Programming on Parallel Machines by Norm Matloff –Very good overview of parallel programming techniques and applications Papers –JCSP paper on validating Java programs –Linda bioinformatics paper News items

Key Points Modern hardware demands parallel programming Difficulty of parallel/distributed programming –Deadlock, race conditions, etc. –Debugging is hard –Maximising efficiency/performance Parallel ↔ Distributed Programming is a continuum Trade-offs between ease-of-use and performance