Early Adopter: ASU - Intel Collaboration in Parallel and Distributed Computing Yinong Chen, Eric Kostelich, Yann-Hang Lee, Alex Mahalov, Gil Speyer, and.

Slides:



Advertisements
Similar presentations
CSCI 4125 Programming for Performance Andrew Rau-Chaplin
Advertisements

Introductions to Parallel Programming Using OpenMP
1 Undergraduate Curriculum Revision Department of Computer Science February 10, 2010.
1 Lawrence Livermore National Laboratory By Chunhua (Leo) Liao, Stephen Guzik, Dan Quinlan A node-level programming model framework for exascale computing*
NSF/TCPP Early Adopter Experience at Jackson State University Computer Science Department.
Introductory Courses in High Performance Computing at Illinois David Padua.
Hong Lin Computer and Mathematical Sciences University of Houston – Downtown Teaching Parallel and Distributed Computing Using a Cluster Computing Portal.
Software Engineering at Faculty of EE in Belgrade Prof. Dr Miroslav Bojovic Baile Herculane, August 2005.
Revisiting a slide from the syllabus: CS 525 will cover Parallel and distributed computing architectures – Shared memory processors – Distributed memory.
Reference: Message Passing Fundamentals.
CS603 Advanced Topics in Distributed Systems MWF 13:30-14:30 RHPH 162 Professor Chris Clifton.
Programming Languages Structure
Cross Cutting and Advanced Topics in Distributed Computing through Service-Oriented Architecture and Software Integration Yinong Chen School of Computing,
CS 470/570:Introduction to Parallel and Distributed Computing.
Project Proposal (Title + Abstract) Due Wednesday, September 4, 2013.
Jawwad A Shamsi Nouman Durrani Nadeem Kafi Systems Research Laboratories, FAST National University of Computer and Emerging Sciences, Karachi Novelties.
Early Adopter Introduction to Parallel Computing: Research Intensive University: 4 th Year Elective Bo Hong Electrical and Computer Engineering Georgia.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
Computer System Architectures Computer System Software
Performance Evaluation of Hybrid MPI/OpenMP Implementation of a Lattice Boltzmann Application on Multicore Systems Department of Computer Science and Engineering,
Lecture 4: Parallel Programming Models. Parallel Programming Models Parallel Programming Models: Data parallelism / Task parallelism Explicit parallelism.
Quan Yuan and Sasithorn Zuge Dept. of Computing and New Media Technologies University of Wisconsin-Stevens Point.
Adding PDC within a Six-Course Subset of the CS Major Apan Qasem Texas State University.
Integrating PDC Topics with Software Engineering and Computer Network Courses at Undergraduate Level An Early Adopter Experience EduHPC-2014, New Orleans,
Slide 1 Auburn University Computer Science and Software Engineering Scientific Computing in Computer Science and Software Engineering Kai H. Chang Professor.
Advanced Operating Systems CIS 720 Lecture 1. Instructor Dr. Gurdip Singh – 234 Nichols Hall –
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
Integrating Parallel and Distributed Computing Topics into an Undergraduate CS Curriculum Andrew Danner & Tia Newhall Swarthmore College Third NSF/TCPP.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
Introduction, background, jargon Jakub Yaghob. Literature T.G.Mattson, B.A.Sanders, B.L.Massingill: Patterns for Parallel Programming, Addison- Wesley,
Hands-On Exploration of Parallelism for Absolute Beginners With Scratch Steven Bogaerts Department of Mathematics & Computer Science Wittenberg University.
Early Adopter: Integrating Concepts from Parallel and Distributed Computing into the Undergraduate Curriculum Eileen Kraemer Computer Science Department.
Taking the Complexity out of Cluster Computing Vendor Update HPC User Forum Arend Dittmer Director Product Management HPC April,
Motions for Permanent Undergraduate Course Numbers Brian L. Evans On Behalf of the ECE Curriculum Committee September 21, 2015.
MATRIX MULTIPLY WITH DRYAD B649 Course Project Introduction.
GPU Architecture and Programming
Fault-Tolerant Parallel and Distributed Computing for Software Engineering Undergraduates Ali Ebnenasir and Jean Mayo {aebnenas, Department.
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.
{ Applying the NSF/TCPP Curriculum Recommendations to a Liberal Arts Curriculum Akshaye Dhawan, Ursinus College.
SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING | SCHOOL OF COMPUTER SCIENCE | GEORGIA INSTITUTE OF TECHNOLOGY MANIFOLD Manifold Execution Model and System.
Fall-11: Early Adoption of NSF/TCPP PDC Curriculum at Texas Tech University and Beyond Yong Chen Yu Zhuang Noe Lopez-Benitez May 10 th, 2013.
 Course Overview Distributed Systems IT332. Course Description  The course introduces the main principles underlying distributed systems: processes,
Multi-Semester Effort and Experience to Integrate NSF/IEEE-TCPP PDC into Multiple Department- wide Core Courses of Computer Science and Technology Department.
Parallel and Distributed Computing Overview and Syllabus Professor Johnnie Baker Guest Lecturer: Robert Walker.
Dynamic Scheduling Monte-Carlo Framework for Multi-Accelerator Heterogeneous Clusters Authors: Anson H.T. Tse, David B. Thomas, K.H. Tsoi, Wayne Luk Source:
CS533 Concepts of Operating Systems Jonathan Walpole.
Cheating The School of Network Computing, the Faculty of Information Technology and Monash as a whole regard cheating as a serious offence. Where assignments.
CSci6702 Parallel Computing Andrew Rau-Chaplin
Distributed Real-time Systems- Lecture 01 Cluster Computing Dr. Amitava Gupta Faculty of Informatics & Electrical Engineering University of Rostock, Germany.
Gauss Students’ Views on Multicore Processors Group members: Yu Yang (presenter), Xiaofang Chen, Subodh Sharma, Sarvani Vakkalanka, Anh Vo, Michael DeLisi,
SMP Basics KeyStone Training Multicore Applications Literature Number: SPRPxxx 1.
A Flipped Classroom Approach to Teaching Concurrency and Parallelism Shirley Moore University of Texas at El Paso Steven Dunlop Purdue.
Multicore Applications in Physics and Biochemical Research Hristo Iliev Faculty of Physics Sofia University “St. Kliment Ohridski” 3 rd Balkan Conference.
PERFORMANCE OF THE OPENMP AND MPI IMPLEMENTATIONS ON ULTRASPARC SYSTEM Abstract Programmers and developers interested in utilizing parallel programming.
Defining the Competencies for Leadership- Class Computing Education and Training Steven I. Gordon and Judith D. Gardiner August 3, 2010.
29 th of March 2016 HPC Applications and Parallel Computing Paradigms.
Industry Advisory Board
Advanced Operating Systems CIS 720
Inculcating “Parallel Programming” in UG curriculum
Intel® Parallel Studio and Advisor
High Performance Computing (CS 540)
Chirag Dekate Department of Computer Science
The 25th annual IEEE International Conference on High Performance Computing, Data, and Analytics. Challenges of integrating parallel and distributed computing.
Department of Intelligent Systems Engineering
Concurrency: Mutual Exclusion and Process Synchronization
EE 4xx: Computer Architecture and Performance Programming
Chapter 01: Introduction
Presentation transcript:

Early Adopter: ASU - Intel Collaboration in Parallel and Distributed Computing Yinong Chen, Eric Kostelich, Yann-Hang Lee, Alex Mahalov, Gil Speyer, and Violet R. Syrotiuk 1 st NSF/TCPP Workshop on Parallel and Distributed Computing Education (EduPar’11) In conjunction with 25th IEEE International Parallel and Distributed Processing Symposium Anchorage (Alaska), USA Monday, May 16, 2011

Arizona State University Arizona State University (ASU) now has the largest campus in the U.S.A. The Tempe campus is one of four campuses – More than 51,000 students Focus on research and graduate education along with an analytic undergraduate education preparatory for graduate or professional school or employment

School of Computing, Informatics and Decision Systems Engineering One of five schools of engineering at ASU Enrollment: – 1100 undergraduate and 550 graduate students Includes degree programs in: – Computer Science (CS) – Computer Systems Engineering (CSE)

Our Initial Goal Integrate topics in parallel and distributed computing into the: – Computer Science (CS), – Computer Systems Engineering (CSE), and – Mathematics and Statistical Sciences (MAT) programs at the undergraduate and MS level Leverage the High Performance Computing (HPC) initiative at ASU

Courses in Early Adopter Program Course Number Course NamePilotEnrollment ASU 101-CSEThe ASU ExperienceSpring CSE 310Data Structures and AlgorithmsFall * CSE 430Operating SystemsSpring CSE 445/598Distributed Software DevelopmentSpring CSE 494/598Introduction to Parallel ProgrammingSpring MAT 420Scientific ComputingSpring * Projected In this presentation

CSE 430 Operating Systems Operating system structures and services Emphasis on concurrent processes using Intel's Parallel Studio, game demos, and tools – mutual exclusion and synchronization, race conditions, deadlocks, threads, semaphores, concurrent programming paradigms Also scheduling, virtual memory, file systems, I/O and mass-storage systems, protection

CSE 430 Operating Systems TopicsBloom #Learning Outcomes Shared v. distributed memory KUMA and NUMA architectures, distributed memory, client server Parallel programming notation A, C, KLanguage extensions, compiler directives/pragmas, libraries Semantics and correctness issues A, C, KTasks and threads, synchronization, concurrency defects and tools for their detection Performance metrics and issues A, C, KDefine/measure benchmarks, performance monitoring Algorithmic problemsA, C, KAsynchrony, synchronization

CSE 445/598 Distributed Software Development In service-oriented distributed systems, server applications may be invoked by multiple clients Multithreading with parallel computing and data synchronization using Intel’s Thread Building Blocks (TBB) is discussed Performance analysis and case study

Input size Time measured in milliseconds Results on Intel 32-Core MTL 9 Speedup Efficiency

CSE 445/598 Distributed Software Development TopicsBloom #Learning Outcomes Distributed architectures CUnderstand the differences between distributed architectures and their impact to algorithms Client-server architectures ADevelopment and implement programs in different architectures such as thin and thick client and N-tier architectures Control flow v. event-driven programming C, AIdentify the needs of both programming paradigms and be able develop applications in both paradigms Web execution model CUnderstand different Web execution models and their applications in Web and cloud computing MultithreadingC, AResource sharing, synchronization, and performance impact Parallel issuesCBe able identify the parts of algorithms that can be execution independent of other parts and use different threads or blocks to implement them

CourseEvaluation Methodology ASU 101Multiple choice questions in final exam CSE 310Pilot in Spring 2011 CSE 430Project with Intel’s Parallel Studio using OpenMP pragmas, examine data locality, load balancing, acceleration, profiling, etc. Midterm and final exams CSE 445/598 Multithreaded programming project: test on single and multicore environments; use Intel’s TBB library and measure speed-up Service hosting project: explore parallelism on the server side CSE 494/598 Four projects: OpenMP pragmas, data locality, load balancing, acceleration, profiling, etc. MPI collective communication and data decomposition MPI parallel I/O, local communication and a parallel library CUDA, GPU programming Midterm and final exams MAT 420Example projects: Use of Fortran 95/2008 vector constructs to compute the Mandelbrot set OpenMP to parallelize a PDE solver using finite differences basic blocking MPI_Send and MPI_Recv calls to implement a PDE solver on a distributed memory cluster

Future Plans Many opportunities exist to integrate PDC topics into our curriculum Spring 2011: – Work on our level courses – Approval of new syllabi by our undergraduate curriculum committee and program faculty

Future Plans (cont’d) Summer 2011: – Revise our course syllabi – Introduce a new CSE 4xx course on Parallel and Distributed Computing – Develop a “data bank” of course materials, e.g., Lecture materials (e.g., slides, videos, demos) Programming project ideas Sample homework questions Sample exam questions

Thanks to