ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson, Dec 26, 2012outline.1 ITCS 4145/5145 Parallel Programming Spring 2013 Barry Wilkinson Department.

Slides:



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

ITCS 3181 Logic and Computer Systems
Today’s Agenda  Syllabus CS2336: Computer Science II.
ITCS 3181 Logic and Computer Systems
1 Course Information Parallel Computing Fall 2008.
1 Course Information Parallel Computing Spring 2010.
CS/CMPE 524 – High- Performance Computing Outline.
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.
AssignPrelim1.1 ITCS 4146/5146 Grid Computing, 2007, UNC-Charlotte, B. Wilkinson. Jan 13, 2007 Course Preliminaries.
CS 524 – High- Performance Computing Outline. CS High-Performance Computing (Wi 2003/2004) - Asim LUMS2 Description (1) Introduction to.
COMP171 Data Structures and Algorithm Qiang Yang Lecture 1 ( Fall 2006)
Outline.1 Grid Computing Spring 2007 Tuesday/Thursday 11:00 am - 12:15 pm Instructors Dr. Barry Wilkinson University of North Carolina, Charlotte and Dr.
Data Communication and Networks Lecture 0 Administrivia September 7, 2006.
Outline.1 Grid Computing Spring 2010 Tuesday/Thursday 11:00 am - 12:15 pm Instructors © 2010 B. Wilkinson/Clayton Ferner. Modification date: Dec 20, 2009.
Emergence of GPU systems for general purpose high performance computing ITCS 4145/5145 April 4, 2013 © Barry Wilkinson CUDAIntro.ppt.
ITCS 6/8010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Jan 22, 2011assignprelim.1 Assignment Preliminaries ITCS 6010/8010 Spring 2011.
ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson, 2012, Jan 18, 2012assignprelim.1 Assignment Preliminaries ITCS 4145/5145 Spring 2012.
(1) ECE 8823: GPU Architectures Sudhakar Yalamanchili School of Electrical and Computer Engineering Georgia Institute of Technology NVIDIA Keplar.
CIS4930/CDA5125 Parallel and Distributed Systems Florida State University CIS4930/CDA5125: Parallel and Distributed Systems Instructor: Xin Yuan, 168 Love,
ITCS 4/5145 Cluster Computing, UNC-Charlotte, B. Wilkinson, 2006outline.1 ITCS 4145/5145 Parallel Programming (Cluster Computing) Fall 2006 Barry Wilkinson.
ITCS 6/8010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Jan 3, 2011outline.1 ITCS 6010/8010 Topics in Computer Science: GPU Programming for High Performance.
1 Object Oriented Design COP 3331 Spring 2011 MWF 11:50 AM – 12:40 PM CHE 103 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering ENB.
Course Overview SYS 7340 Logistics Systems Engineering.
CS355 Advanced Computer Architecture Fatima Khan Prince Sultan University, College for Women.
1 Software Systems Development CEN Spring 2011 TR 12:30 PM – 1:45 PM ENB 116 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering.
ITCS 4/5010 CUDA Programming, UNC-Charlotte, B. Wilkinson, Dec 28, 2012assignprelim.1 Assignment Preliminaries ITCS 4010/5010 Spring 2013.
Introduction to Data Structures
Emergence of GPU systems and clusters for general purpose high performance computing ITCS 4145/5145 April 3, 2012 © Barry Wilkinson.
Software Development CSCI-1302 Lakshmish Ramaswamy.
ITCS 4/5010 CUDA Programming, UNC-Charlotte, B. Wilkinson Dec 24, 2012outline.1 ITCS 4010/5010 Topics in Computer Science: GPU Programming for High Performance.
Multicore Computing Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang University.
Outline.1 Grid Computing Fall 2008 Tuesday/Thursday 11:00 am - 12:15 pm Instructors Grid Computing, B. Wilkinson, 2008 Aug Dr. Clayton Ferner.
ICS202 Data Structures King Fahd University of Petroleum & Minerals College of Computer Science & Engineering Information & Computer Science Department.
1 CAP 4063 Web Application Design Summer 2012 TR 9:30 – 11:40 PM CHE 102 Instructor:Dr. Rollins Turner Dept. of Computer Science and Engineering ENB 336.
Outline.1 Grid Computing Fall 2011 Tuesday/Thursday 9:30 am - 10:45 pm Instructors © 2011 B. Wilkinson/Clayton Ferner. Modification date: Aug 22, 2011.
Today’s Agenda  Syllabus  Software Engineering Research.
1 Workshop 9: General purpose computing using GPUs: Developing a hands-on undergraduate course on CUDA programming SIGCSE The 42 nd ACM Technical.
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
Computer Networks CNT5106C
Course Overview CSE5319/7319 Software Architecture and Design Spring 2016 Dr. LiGuo Huang Dept. of Computer Science and Engineering Southern Methodist.
Course Overview CSE 8340 Advanced Software Engineering Topics: Software Engineering Economics & Processes Spring 2016 Dr. LiGuo Huang Dept. of Computer.
Slide 1 Instructor: Dr. Hong Jiang Teaching Assistant: Ms. Yuanyuan Lu Department of Computer Science & Engineering University of Nebraska-Lincoln Classroom:
Constructing a system with multiple computers or processors 1 ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson. Jan 13, 2016.
Operating Systems (CS 340 D) Dr. Abeer Mahmoud Princess Nora University Faculty of Computer & Information Systems Computer science Department.
Assignprelim.1 Assignment Preliminaries © 2012 B. Wilkinson/Clayton Ferner. Modification date: Aug 10, 2012.
ITCS 4145 Parallel Computing Spring 2016
Computer Network Fundamentals CNT4007C
Computer Engineering Department Islamic University of Gaza
CS101 Computer Programming I
Computer Networks CNT5106C
Constructing a system with multiple computers or processors
CS 201 – Data Structures and Discrete Mathematics I
Computer Networks CNT5106C
EEL4930/5934 Reconfigurable Computing
Dr. Barry Wilkinson © B. Wilkinson Modification date: Jan 9a, 2014
Andy Wang Object Oriented Programming in C++ COP 3330
Dr. Barry Wilkinson University of North Carolina Charlotte
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Dr. Barry Wilkinson University of North Carolina Charlotte
Dr. Barry Wilkinson University of North Carolina Charlotte
ECE 8823: GPU Architectures
CIS5930: Advanced Topics in Parallel and Distributed Systems
Computer Networks CNT5106C
EEL4930/5934 Reconfigurable Computing
CPE 626 Advanced VLSI Design, Spring 2002 Admin
CSC4005 – Distributed and Parallel Computing
Presentation transcript:

ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson, Dec 26, 2012outline.1 ITCS 4145/5145 Parallel Programming Spring 2013 Barry Wilkinson Department of Computer Science University of North Carolina at Charlotte Tuesday/Thursday 11:00 am – 12:15 pm Woodward 130

outline.2 Outline These slides constitute the course outline and include the course syllabus and course policies.

outline.3 Parallel Computing The use of multiple processors or computers to solve problems at a greater computational speed than using a single computer/processor. Basic idea is simple – using n computers/ processors collectively on a problem should lead to a faster solution. Can tackle problems that could not be solved in a reasonable time otherwise. Also solve problems with higher precision and/or with more memory requirements.

Computer platforms for parallel computing 1.Multiple interconnected computers - Cluster Computing, group of interconnected computers typically using Ethernet switch and physically all in one room. 2.A single computer system with multiple internal processors or cores - Usually shares a common main memory 3.Computer system with attached graphic processing unit (GPU) - GPUs have large number of execution cores, now used for high performance computing as well as original graphics application Combination of above most likely. outline.4

coit-grid01-4: Each two Xeon processors (3.4Ghz) 8GB main memory coit-grid05: Dell R900, four quad-core Xeon processors (2.93Ghz) 64GB main memory 1.2 TB disk coit- grid01 switch coit- grid05 coit- grid03 coit- grid02 coit- grid04 All user’s home directories on coit-grid05 (NFS) UNCC cluster coit-grid01.uncc.edu – coit-grid7.uncc.edu Has all three types of platform. coit- grid06 NVIDIA Tesla GPU (448 core Fermi) Login from within the campus only Login from on-campus or off-campus coit- grid07 NVIDIA Tesla GPU (448 core Fermi) coit-grid07: GPU server, X GHz quad-core Xeon processor with NVIDIA 2050 GPU, 12GB main memory coit-grid06: GPU server with NVIDIA 2050 GPU,

outline.6 Course Prerequisites UNC-C Catalog prerequisites: ITCS 2214 (Data Structures) and ITCS 3181/3182 (Computer Architecture). ITCS 3181/2 not strictly necessary so long as you know what a computer consists of (processors, memory and I/O) and how it operates. What is needed -- basic skills in C and Java.

outline.7 Course Text Parallel Programming: Techniques and Application Using Networked Workstations and Parallel Computers, 2 nd edition, by B. Wilkinson and M. Allen, Prentice Hall Inc., 2005, ISBN On-line notes are provided that are derived from the course text – with some updated materials from 2005

outline.8 Home Pages For course notes, assignments, announcements, etc.: / Please check before each class.

outline.9 Course Contents (See course slides for detailed description) Parallel computers: architectural types, shared memory systems, message passing systems, hybrid systems, potential for increased speed. Message passing: MPI message passing APIs, send, receive, collective operations. Running MPI programs on a cluster.

outline.10 Course Contents (Continued) Basic parallel programming techniques: Embarrassingly parallel computations Partitioning and divide and conquer Pipelined computations Synchronous computations Load balancing and termination detection

outline.11 Course Contents (Continued) Programming with shared memory programming: Specifying parallelism, sharing data, critical sections, threads, OpenMP. Running threaded/ OpenMP programs on multi-core system, hybrid MPI/OpenMP programs. CPU-GPU systems: data parallel pattern, GPU architecture, programming in CUDA, issues for achieving high performance.

outline.12 Course Contents (Continued) Algorithms and applications: Selection from: Sorting algorithms Searching algorithms Numerical algorithms Image processing algorithms

Course Grade outline.13 Letter grades will be assigned according to the following scales: Undergraduate Grade Scale A B C D F Graduate Grade Scale A B C U worst case, and may be curved according to the performance of the entire class. So, if you are above average in the class, your grade will be above average and similarly if you are below average, the grade will be below average. For each assignment or test, the class average will be announced after grading so you can see where you stand in the class.

outline.14 Computation of Grades Class tests (2)25% Assignments (5)50% Final exam 25% The assessment and percentages may be modified. Read small print

outline.15 Graduate students There will be additional work in the assignments for graduate students, which will be extra credit for undergraduates.

outline.16 Code of Student Academic Integrity All submitted assignments must be your own work. Copied work or work done by more than one person (unless specifically instructed) will not be accepted - at the very minimum, zero credit - and may be subject to disciplinary action. The Code of Student Academic Integrity applies to both assignments and quizzes/tests.

Due dates for assignments Will be posted on home page with assignment. Assignments can be turned in late but with a penalty. Late Penalty < 24 hours10% > 24 hours and < 48 hours20% > 48 hours and < 72 hours30% > 72 hours100% outline.17

outline.18 Attendance Attendance is expected. Attendance will be recorded. If you miss classes, it can have a deleterious effect on your grade: After 4 missed classes without good reason: 2 marks off overall accumulated marks (out of 100) for each additional class missed. If you must miss class, see the instructors beforehand to avoid losing marks.

Mid-Term Unsatisfactory Grades UNC-C requires midterm unsatisfactory grades to be submitted by the end of the 8 th week of class. Mid term grades –Undergraduates: Satisfactory or D or F –Graduates: Satisfactory or C or U will be based upon all work graded by week 7, which probably will be two assignments and one class test. outline.19

outline.20 Instructor Barry Wilkinson Woodward, room 435G Office Hours Tuesday/Thursday 3:00 pm - 4:30 pm. Walk-in at other times ok if not busy, or send me an for a mutually convenient time.