High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course...

16
High Performance Computing Systems and Enabling Platforms Marco Vanneschi Department of Computer Science, University of Pisa Master Program (Laurea Magistrale) in Computer Science and Networking Academic Year 2010-2011

Transcript of High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course...

Page 1: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

High Performance Computing Systems

and Enabling Platforms

Marco Vanneschi

Department of Computer Science, University of Pisa

Master Program (Laurea Magistrale) in Computer Science and Networking

Academic Year 2010-2011

Page 3: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

My activity

• Research area – Computer Architecture

– Parallel and Distributed Processing, High Performance Computing

– Parallel Programming Models and Tools

– Programmability of various HPC platforms

• Multiprocessor, Cluster, Grid Computing, Multi-core, Pervasive Computing

– Coordination of some National and European Projects (basic researchand industrial research)

• Research group– Co-leaded with Prof. Marco Danelutto

– Laboratory of Parallel Architectures

• Strong relationship research - teaching

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 3

Page 4: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: course objectives

• Providing a solid framework of concepts and techniques in high-performance computing– Parallelization methodology and models

– Support to parallel programming models and software development tools

– Parallel Architectures

– Performance evaluation (cost models)

• Methodology for studying existing and future systems

• Technology: state-of-the-art and trends– Parallel processors

– Multiprocessors

– Multicore / manycore / … / GPU

– Shared vs distributed memory architectures

– Programming models and their support

4MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms

Page 5: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: motivations

• Evolution of computer technology towards parallelism and HPC

• Multi/many core

• Large clusters, cloud, …

• Heterogeneous large-scale enabling ICT platforms

• Embedding

• Increasing maturity with respect to “hardware-software relationship”

• Concurrency and parallelism as first-class citizens in application development

• In our Master Program: HPC is a fundamental methodologyand technology for integrated ICT infrastructures and applications

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 5

Page 6: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: first course in HPC and enabling platforms

• Distributed Systems: Paradigms and Models (Prof. Danelutto), fundamental, 2nd semester

– assumes SPA as prerequisite

• Other complementary courses in this area:

– in Study Plan “Distributed Systems and Applications”.

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 6

Page 7: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Course approach: a Computer Science approach

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 7

methodologicalknowledge

technologicalknowledge

• Computer Science approach

o Parallel computing: computational and programming models

o Cost models of parallel computations

o Computing architecture has its own concepts, principles, models, and

techniques

o Conceptual framework in common with the other disciplines of Computer

Science:

• Programming languages, algorithms, computability and complexity, …

Page 8: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Basic background and prerequisites

• An undergraduate-level course on structured computer architecture– Firmware level structuring

– Assembler level, CPU architecture, compiling

– Memory hierarchies and caching

– Interrupt handling, exception handling

– Process level, addressing space, low level scheduling, interprocess

communication

– Input/Output processing

• In Pisa: the course “Computer Architecture” (UndergraduateProgram in Computer Science) adopts such an approach

• Precourse on Computer Architecture fundamentals

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 8

Page 9: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Precourse: subjects and approach

1. System structuring: level, modules, cooperation models

2. Firmware level fundamentals

3. Assembler level

4. Memory hierachies and caching

5. Process level fundamentals and run-time support

• Approach of Precourse:

– Main concepts and techniques on these subjects

– Exercises: proposed to students and discussed (class-level or individually)

• Recommendation: Precourse-level knowledge is of fundamentalimportance for SPA course and exam.

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 9

Page 10: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Precourse: teaching material

• Slides: course notes– On my personal page

• Students are recommended to take notes during the lectures

• Reference books:

– M. Vanneschi, “Architettura degli Elaboratori”, PLUS, 2009, in Italian.

– D.A. Patterson, J.H. Hennessy, “Computer Organization and Design:

the Hardware/Software Interface”, Morgan Kaufman Publishers Inc.

– A. Tanenbaum, “Structured Computer Organization”, Prentice-Hall.

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 10

Page 11: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Working approach: Precourse and SPA

• As in any other course, it is fundamental to acquire skills and capabilities in concepts and principles, besides knowing the technologies.

• Critical aptitude must be properly developed.

• Interaction with the teacher is strongly encouraged

– Questions during the lectures

– Presentation and discussion of exercises

– Question time (“orario di ricevimento”) (in Italian for Italians)

• Monday, 14:00 – 16:00, in my room: PRECOURSE

• Tuesday, 9:00 – 11:00, in my room: REGULAR COURSE

• and/or by appointment in case of collision with other courses, or otherreasons.

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 11

Page 12: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: Course Program

PART 1 (about 3 CFU)

1. Methodology for Parallel Application Structuring and Design

Models, parallelization methodology and techniques, parallel paradigms,

programming models, cost models

PART 2 (about 3 CFU)

2. Shared memory architectures

SMP, NUMA, …, interconnection networks, support to concurrency

mechanisms, cost models, static and dynamic optimizations, parallel

application benchmarks

3. Distributed memory architectures

Clusters, MPP, …, interconnection networks, support to concurrency

mechanisms, cost models, static and dynamic optimizations, parallel

application benchmarks

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 12

Page 13: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: Teaching Material

• Course notes

– published on my personal page every 1-3 weeks

– (basically: new English version of Vanneschi’s book, Part IV)

• Reference books:– Patterson: see Precourse references

– D.E. Culler, J.P. Singh, A. Gupta, “Parallel Computer Architecture: a

Hardware/Software Approach”, Morgan Kaufman Publishers Inc.

– Papers and reports

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 13

Page 14: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

SPA: exam modality

• Written + oral exam (in English or in Italian)

• No intermediate tests (no midterms)

• Exam approach: the student must be able to demonstrate a deep understanding of concepts and techniques and of theirinterrelationships, as well as to write / to present the answerin a clear and rigorous way.

• Registration to the exam on the Official Site of Corso di Laurea: http://compass2.di.unipi.it/didattica, section Laurea Magistrale in Informatica e Netwoking, subsection “orari”

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 14

Page 15: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

Architetture Parallele e Distribuite (ASE)

Esame di ASE (9 CFU), laurea specialistica vecchio ordinamento:

• SPA (6 CFU)

• + integrazione 3 CFU (Libro PLUS, Parte IV)

– implementazione di programmi paralleli in LC secondo forme di

parallelismo note

– complementi di architetture parallele

• Modalità di esame: scritto.

• All’atto dell’iscrizione: indicare ASE

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 15

Page 16: High Performance Computing Systems and Enabling Platformsvannesch/SPA 2010-11/0-Course introduction.pdf · –Interrupt handling, exception handling ... Prentice-Hall. MCSN ... High

MCSN - M. Vanneschi: High Performance Computing Systems and Enabling Platforms 16

Good Luck !