HIGH PERFORMANCE COMPUTING

International Teaching HIGH PERFORMANCE COMPUTING

0622700073
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA
EQF7
COMPUTER ENGINEERING
2021/2022



OBBLIGATORIO
YEAR OF COURSE 1
YEAR OF DIDACTIC SYSTEM 2017
PRIMO SEMESTRE
CFUHOURSACTIVITY
324LESSONS
324EXERCISES
324LAB


Objectives
THE COURSE INTRODUCES THE STUDENT TO THE CHARACTERISTICS OF PARALLEL ARCHITECTURES, PARALLEL COMPUTING PARADIGMS AND RELATED LANGUAGES AND FRAMEWORKS.

KNOWLEDGE AND UNDERSTANDING
ARCHITECTURAL SCHEMES OF HIGH PERFORMANCE COMPUTING SYSTEMS. PARALLEL ARCHITECTURES AND THEIR PROGRAMMING. DISTRIBUTED MEMORY ARCHITECTURES. PROCESSING NODE CLUSTER. GENERAL-PURPOSE GRAPHICAL PROCESSING UNITS (GPU). FRAMEWORK FOR THE DEVELOPMENT OF MASSIVELY PARALLEL APPLICATIONS ACCORDING TO THE MAP / REDUCE PARADIGM.

APPLYING KNOWLEDGE AND UNDERSTANDING
DESIGN AND IMPLEMENTATION OF APPLICATIONS BASED ON PARALLEL ALGORITHMS FOR SHARED AND DISTRIBUTED MEMORY AND GPU ARCHITECTURES USING THE MOST APPROPRIATE LANGUAGES, TOOLS AND TECHNOLOGIES FOR THE APPLICATION CONTEXT. MEASURE THE PERFORMANCE AND EFFICIENCY OF THE SOLUTIONS IDENTIFIED.
Prerequisites
THE COURSE REQUIRES KNOWLEDGE OF THE BASIC PRINCIPLES OF COMPUTER ARCHITECTURES, OF THE MAIN COMPONENTS OF OPERATING SYSTEMS, OF C AND JAVA PROGRAMMING LANGUAGES AND OF CONCURRENT PROGRAMMING PRINCIPLES.
Contents
- HIGH PERFORMANCE ARCHITECTURES: PIPELINING, SUPERSCALAR ARCHITECTURES, HYPERTHREADING. PARALLEL ARCHITECTURES: FLYNN'S TAXONOMY, SHARED AND DISTRIBUTED MEMORY SYSTEMS; GPGPU. PATTERN FOR PARALLEL PROGRAMMING. PERFORMANCE EVALUATION OF PARALLEL PROGRAMS: SPEEDUP, EFFICIENCY, SCALABILITY. (LECTURE/PRACTICE/LABORATORY HOURS 8/0/0)

- PARALLEL PROGRAMMING ON SHARED MEMORY ARCHITECTURES WITH OPENMP. (LECTURE/PRACTICE/LABORATORY HOURS 4/0/6)

- PARALLEL PROGRAMMING ON DISTRIBUTED MEMORY ARCHITECTURES WITH MPI. (LECTURE/PRACTICE/LABORATORY HOURS 4/0/6)

- GPU PROGRAMMING: CUDA (LECTURE/PRACTICE/LABORATORY HOURS 6/0/12)

- CLUSTER PROGRAMMING WITH HADOOP / MAP-REDUCE. (LECTURE/PRACTICE/LABORATORY HOURS6/0/12)

- HETEROGENEOUS COMPUTING: OPENCL (LECTURE/PRACTICE/LABORATORY HOURS 4/0/4)

TOTAL LECTURE/PRACTICE/LABORATORY HOURS 32/0/40
Teaching Methods
THE COURSE CONTAINS THEORETICAL LECTURES, AND PRACTICAL LABORATORY EXERCITATIONS.

THE LECTURES PROVIDE A THEORETICAL EXPOSURE FOR EACH TOPIC TO ALLOW PRACTICAL APPLICATION IN THE LABORATORY TO REAL PROBLEMS. THE LABORATORY WORKS INCLUDE INDIVIDUAL ACTIVITIES AND GROUP ACTIVITIES. THE GROUP ACTIVITIES ARE DISCUSSED IN CLASS AND PRESENTED TO THE OTHER GROUPS DURING THE LABORATORY HOURS AND DISCUSSED IN THE CLASSROOM AND DURING THE RECEPTION HOURS OF THE TEACHER.

IN ORDER TO PARTICIPATE TO THE FINAL ASSESSMENT AND TO GAIN THE CREDITS
CORRESPONDING TO THE COURSE, THE STUDENT MUST ATTEND AT LEAST 70% OF THE HOURS OF ASSISTED TEACHING ACTIVITIES.
Verification of learning
THE EVALUATION OF THE ACHIEVEMENT OF THE SET OBJECTIVES WILL TAKE PLACE THROUGH THE IMPLEMENTATION OF A GROUP PROJECT AND AN ORAL INTERVIEW. THE EVALUATION WILL TAKE INTO ACCOUNT THE FOLLOWING ASPECTS:
KNOWLEDGE OF THE TECHNOLOGIES AND METHODOLOGIES PRESENTED IN THE COURSE; ABILITY TO DESIGN, DEVELOP AND EVALUATE A PARALLEL ALGORITHM USING THE METHODS AND TOOLS PRESENTED IN THE COURSE.

THE PAPER CONSISTS OF GROUP ASSIGNMENTS. THE ASSIGNMENTS INCLUDE PROBLEMS TO BE SOLVED WITH THE TECHNIQUES AND METHODOLOGIES PRESENTED IN THE COURSE, ASSIGNED IN A COMMON WAY TO ALL GROUPS, AND PROBLEMS ASSIGNED EXCLUSIVELY TO EACH GROUP. PROBLEM SOLUTIONS ARE INTENDED TO EVALUATE STUDENTS' DESIGN AND CRITICAL SKILLS IN SOLVING ASSIGNED PROBLEMS.
THE PAPER IS ASSIGNED A SCORE OUT OF THIRTY (FROM 18 TO 30, OR INSUFFICIENT) WHICH DEPENDS ON THE CORRECTNESS AND EFFICIENCY OF THE RESULTS, THE DEGREE OF DEPTH OF THE PAPER AND THE STUDENT'S ABILITY TO EFFECTIVELY PRESENT THE CONTENTS AND CRITICALLY DISCUSS THE TOPICS ILLUSTRATED. .
THE PRESENTATION OF A PAPER WITH A SUFFICIENT LEVEL OF DETAIL, WHICH IS CORRECT AND SUFFICIENTLY EXPOSED, AS REGARDS ONLY THE COMMON ASSIGNMENTS, ALLOWS STUDENTS TO REACH THE SUFFICIENCY (18). THE PRESENCE IN THE PAPER OF CORRECT, EFFICIENT AND DOCUMENTED SOLUTIONS FOR THE PROBLEMS ASSIGNED EXCLUSIVELY, DEPENDING ON THE LEVEL OF DETAIL TREATED, ALLOWS TO INCREASE THE GRADE FOR THE PRESENTATION OF THE PAPER FROM 0 TO 4 POINTS.
STUDENTS WHO PASS THE SCORE OF 30 ON THE THESIS WILL BE CANDIDATES FOR HONORS.


THE ORAL EXAM IS ACCESSIBLE TO ALL STUDENTS WHO HAVE PRE-DRILLED THEIR PAPER AND HAVE OBTAINED A NON-INSUFFICIENT EVALUATION

THE ORAL EXAM AIMS TO EVALUATE THE ACTUAL KNOWLEDGE OF THE STUDENTS AND TO EVALUATE THEIR EXHIBITION PROPERTIES. IT INCLUDES ONE OR TWO QUESTIONS FOR EACH TOPIC ADDRESSED, AND A QUESTION ON EACH PART OF THE PAPER PRESENTED. DEPENDING ON THE LEVEL OF DEPTH OF THE ANSWERS, AND THEIR CORRECTNESS, THE GRADE OF THE PAPER CAN VARY BY AN INTERVAL BETWEEN -2 AND +2 POINTS FOR EACH ORAL QUESTION.

HONORS ARE AWARDED ONLY UNANIMOUSLY BY THE COMMISSION.
Texts
PETER PACHECO, AN INTRODUCTION TO PARALLEL PROGRAMMING, MORGAN KAUFMANN

I. FOSTER. DESIGNING AND BUILDING PARALLEL PROGRAMS. ADDISON-WESLEY

JASON SANDERS, EDWARD KANDROT, CUDA BY EXAMPLE: AN INTRODUCTION TO GENERAL-PURPOSE GPU PROGRAMMING, ADDISON-WESLEY

GEORG HAGER, GERHARD WELLEIN, INTRODUCTION TO HIGH PERFORMANCE COMPUTING FOR SCIENTISTS AND ENGINEERS, CRC PRESS

THE TEACHING MATERIAL IS AVAILABLE ON THE UNIVERSITY E-LEARNING PLATFORM (HTTP://ELEARNING.UNISA.IT) ACCESSIBLE TO STUDENTS USING THEIR OWN UNIVERSITY CREDENTIALS.
More Information
THE COURSE IS HELD IN ENGLISH
  BETA VERSION Data source ESSE3