Parallel and Distributed Algorithms (CS 6/76501) Spring 2010 Johnnie W. Baker.

Slides:



Advertisements
Similar presentations
ICS 556 Parallel Algorithms Ebrahim Malalla Office: Bldg 22, Room
Advertisements

Slide 1 Instructor: Dr. Hong Jiang Cse.unl.edu/~jiang/cse Department of Computer Science & Engineering University of Nebraska-Lincoln.
CS 46101–600/CS Design and Analysis of Algorithms Dr. Angela Guercio Spring 2010.
1 Course Information Parallel Computing Fall 2008.
Advanced Topics in Algorithms and Data Structures An overview of the lecture 2 Models of parallel computation Characteristics of SIMD models Design issue.
Fall 2004 WWW IS112 Prof. Dwyer Intro1: Overview and Syllabus Professor Catherine Dwyer.
CMSC 132: Object-Oriented Programming II
CS 331 / CMPE 334 – Intro to AI CS 531 / CMPE AI Course Outline.
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
1 CS 425 / CS 625 Software Engineering Fall 2007 Course Syllabus August 27, 2007.
Slide 1 Instructor: Dr. Hong Jiang Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom: 108 Avery Hall; Time: 1:30pm-2:20pm,
Parallel & Distributed Computing Fall 2004 Comments About Final.
Quantitative Methods II Instructor: Michael Moore.
Models of Parallel Computation Advanced Algorithms & Data Structures Lecture Theme 12 Prof. Dr. Th. Ottmann Summer Semester 2006.
Slide 1 Instructor: Dr. Hong Jiang Teaching Assistant: Mr. Sheng Zhang Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom:
CS 470/570:Introduction to Parallel and Distributed Computing.
COP4020/CGS5426 Programming languages Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website:
CS 450: COMPUTER GRAPHICS COURSE AND SYLLABUS OVERVIEW SPRING 2015 DR. MICHAEL J. REALE.
COMP 151: Computer Programming II Spring Course Topics Review of Java and basics of software engineering (3 classes. Chapters 1 and 2) Recursion.
WEEK 1 CS 361: ADVANCED DATA STRUCTURES AND ALGORITHMS Dong Si Dept. of Computer Science 1.
Overview of the Course. Critical Facts Welcome to CISC 672 — Advanced Compiler Construction Instructor: Dr. John Cavazos Office.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
1 Computer Engineering Department Islamic University of Gaza ECOM 6301: Advanced Computer Architectures (Graduate Course) Fall 2013 Prof. Mohammad A. Mikki.
CSCI 347 – Data Mining Lecture 01 – Course Overview.
Computer Network Fundamentals CNT4007C
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
Introduction to Network Security J. H. Wang Feb. 24, 2011.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
Advanced Computer Graphics Spring-2011 Kocaeli University Computer Engineering Department.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
ITCS 4/5145 Cluster Computing, UNC-Charlotte, B. Wilkinson, 2006outline.1 ITCS 4145/5145 Parallel Programming (Cluster Computing) Fall 2006 Barry Wilkinson.
CST 229 Introduction to Grammars Dr. Sherry Yang Room 213 (503)
CS1201: Programming Language 2 C++(Course Introduction) Level 2 Nouf Aljaffan 1 st Term Nouf Aljaffan (C) CSC 1201 Course at KSU.
Early Adopter: Integrating Concepts from Parallel and Distributed Computing into the Undergraduate Curriculum Eileen Kraemer Computer Science Department.
Computer Graphics Kocaeli University Computer Engineering Department Spring 2012.
Data Structures (Second Part) Lecture 1 Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.
Lecture Section 001 Spring 2008 Mike O’Dell CSE 1301 Computer Literacy.
CS-2851 Dr. Mark L. Hornick 1 CS-2852 Data Structures Dr. Mark L. Hornick Office: L341 Phone: web: people.msoe.edu/hornick/
Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng
Multicore Computing Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
 Course Overview Distributed Systems IT332. Course Description  The course introduces the main principles underlying distributed systems: processes,
Introduction to Information Security J. H. Wang Sep. 18, 2012.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
1 Data Structures COP 4530 Spring 2010 MW 4:35 PM – 5:50 PM CHE 101 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering ENB
Course Overview 1 FCM 710 Architecture of Secure Operating Systems Prof. Shamik Sengupta Office 4210 N
Cheating The School of Network Computing, the Faculty of Information Technology and Monash as a whole regard cheating as a serious offence. Where assignments.
CST 223 Concepts of Programming Languages Dr. Sherry Yang PV 171
1 CS 381 Introduction to Discrete Structures Lecture #1 Syllabus Week 1.
Information Retrieval CIS-462 Dr. Samir Tartir 2013/2014 First Semester.
COP4610 Principles of Operating Systems Prof. Robert van Engelen Department of Computer Science Florida State University.
Computer Networks CNT5106C
Parallel & Distributed Computing Fall 2006 Comments About Final.
CS Computer Architecture Fall 2010 Dr. Angela Guercio ( Course Web Page
Slide 1 Instructor: Dr. Hong Jiang Teaching Assistant: Ms. Yuanyuan Lu Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom:
1 CS 425 / 625 Software Engineering Fall 2003 Course Syllabus August 25, 2003.
Multicore Computing Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
Data Structures Dr. Abd El-Aziz Ahmed Assistant Professor Institute of Statistical Studies and Research, Cairo University Springer 2015 DS.
Parallel Algorithm Design & Analysis Course Dr. Stephen V. Providence Motivation, Overview, Expectations, What’s next.
CS6501 Advanced Topics in Information Retrieval Course Policy
Parallel and Distributed Algorithms (CS 6/76501) Spring 2007
Parallel and Distributed Computing Overview
Parallel and Distributed Algorithms Spring 2005
Parallel & Distributed Computing Fall 2008
CS 425 / CS 625 Software Engineering
Human Media Multicore Computing Lecture 1 : Course Overview
CIS5930: Advanced Topics in Parallel and Distributed Systems
Human Media Multicore Computing Lecture 1 : Course Overview
Human Media Multicore Computing Lecture 1 : Course Overview
Parallel & Distributed Computing Fall 2006
Presentation transcript:

Parallel and Distributed Algorithms (CS 6/76501) Spring 2010 Johnnie W. Baker

Overview and Syllabus

Presentations Professor Johnnie W. Baker –Instructor –Will give most presentations Guest Lecturers from Parallel Processing Group –Occasional lecture in areas of expertise –Occasionally cover classes when I am away

Two Primary Textbooks Parallel Computation: Models and Methods –Selim Akl, author –Prentice Hall, 1997 –Access to an online copy will be provided. Parallel Algorithms –Henri Casanova, Arnaud Legrand, & Yves Roberts –CRC Press (A Chatman & Hall Book) There will also be some supplementary handouts.

Prerequisites The prerequisite for this course is one of the following: An undergraduate course in algorithms such as CS 4/ CS 6/76105 Parallel and Distributed Computing Permission

Overview of Topics Parallel Algorithms are key ingredient to solving a wide range of problems on various parallel systems Sequential algorithms are designed for one standard model called RAM –Random Access Machine Due to the wide variety of parallel & distributed systems, multiple computational models are needed to described the different types of systems Important parallel models capture the essence of existing and projected future parallel systems.

Overview (cont.) Will include both synchronous & asychronous models. –Asychronous models & algorithms are closely related to distributed computing Typical algorithms studied are for basic topics –searching, sorting, graphs, matrices, computational geometry While focus will be on parallel algorithms, many of the models, algorithms, and principles are applicable to distributed systems as well. Key course for those planning on working in parallel & distributed computing

Major Topics Covered in PDA (Not necessarily listed in order covered) General topics –Analysis of parallel computation –Limits for parallel computation PRAM model and algorithms –Parallel Random Access Machine (or Parallel “RAM”) –More published algorithms than other models –Formerly the “standard parallel model” Algorithms for some important interconnection networks –linear arrays and rings –2D mesh –hypercube

Major Topics in PDA (cont) Bus-Based & optical models & typical algorithms –Mesh with multiple broadcast –Reconfigurable mesh –Linear array with optical buses BSP (Bulk Synchronous Model) and algorithms –Essentially a combined computational & programming model. –Has an extensive software library that can be used in programs KSU’s associative model and algorithms –Air Traffic Control algorithms included

Benefits Most large software projects must be implemented on a parallel or distributed system –Needed for memory space –Needed to obtain reasonable speed Parallel systems are much more efficient for computational intensive applications –Distributed systems are much slower due to greater communication bottlenecks due to distributed database and greater synchronization problems Efficient algorithms and software is key to effective use of parallel & distributed systems.

Benefits (cont) There is a wide choice of thesis and dissertation topics in parallel & distributed computing area –Professors sponsoring parallel research are Baker, Farrell, and Walker –Farrell and Ruttan use parallel computation heavily as a tool in applications (bioinformatics, scientific, etc.) –Several professors in distributed areas as well. Students who are working on thesis or dissertation in another area can also benefit from this course. –Parallel systems often needed to handle computational intensive systems (e.g., bioinformatics)

Two Complementary Courses Parallel & Distributed Computing (usually in Fall) –Parallel Architectures –Parallel Languages –Parallel Programming –Algorithm Examples for some architectures Parallel & Distributed Algorithms (Alternate Springs) –Important Models of Computation –Designing Efficient Algorithms for Various Models PDC and PDA can be taken in either order –More natural for PDC to be taken first –However, students often take PDA first

Limited Overlap in PDC & PDA Allows PDC and PDA to be taken in either order. Performance Evaluation and Limits for Parallel Computation –Some general topics required for both courses. –More practical coverage needed for programming in PDC –More theoretical considerations in PDA Associative Computing Model –Programming focus in PDC –Primary focus in PDA is on associative algorithms

Major Topics in Companion Course (PDC) Fundamental concepts in parallel computation. Synchronous Computation –SIMD, Vector, Pipeline Computing –Associative and Multi-Associative Computing –ASC Language and Programming –MultiC Language and Programming –Fortran 90 and HPF Languages Asynchronous (MIMD) Shared Memory Computation –OpenMP language –Symmetric Multiprocessors or SMPs Asynchronous (MIMD) Distributed Memory Computation –Communications –MPI Language and Programming Architectures –Interconnection Networks (synchronous and asynchronous) –Specific Computer Examples for above computation paradigms MIMD-SIMD Comparisons in Real-Time Applications

Assignments and Grading Homework assignments –Problems assigned for most chapters –Probably 5-7 different assignments –No programming assignments Course Grade based on Homework (& class presentations) Midterm final –Approximate weights Homework 30% Midterm Exam 35% Final Exam 35%

Disabilities Information In accordance with university policy, if you have a documented disability and require accomodations to obtain equal access to this course, please contact the instructor at the beginning of the semester or when given an assignment for which an accomodation is required. Students with disabilities must verify their elgibility through the Office of Student Disability Services (SDS) in the Michael Schwartz Student Services Center ( ).

Plagiarism Information Plagiarism of any type will not be tolerated and will be dealt with in accordance to the University's Administrative policy and procedures regarding student cheating and plagiarism. See the University Statement on Academic Dishonesty for more details. Additionally, unattributed copying from another webpage is also considered plagiarism. Also, see the Computer Science Department Academic Policy involving Programming. Statement on Academic DishonestyAcademic Policy involving Programming

Attendance Information It is important that students attend class regularly. Material for the slides for this course is often obtained from multiple sources. While my slides will contain a lot of information, I can not include all of the information that will be covered in class. Those who can not attend regularly should discuss this situation with me in advance.