create new tag
view all tags


Intensive Computation - Calcolo Intensivo

Annalisa Massini

Office Hours: appointment by email

  • 18 June test grades are published below.

  • Written exams will be held:
    • 18th June at 11:00 in Room Alfa
    • 9th July at 11:00 in Room Alfa.

  • OPIS codes: C6GW9R31 - 9A89HN1E (Curriculum: NETWORKS AND SECURITY)

Aim of the course

The aim of the course is to provide students with methodologies for the solution of problems requiring intensive computation, in particular scientific problems.

Topics covered in this course include:

  • Introduction to Matlab
  • Concepts and methods: sparse matrices, eigenvalues and eigenvectors, linear algebras methods, etc.
  • Errors and simulations
  • Problems like Molecular Dynamics, Graph connectivity, Global search algorithms, etc.
  • Advanced topics on architectures and arithmetic operations
  • Introduction to GPU architecture and programming
  • Performance measures

Lectures 2018-2019

Lecture 1, February 27th, 2019 Introduction to the course - Lecture 1 - Introduction

Lecture 2, March 1st, 2019 Introduction to Matlab - Part 1 - Lecture 2 - Matlab
Laboratory, March 1st, 2019 Laboratory: Introductory exercises - Part 1

Lecture 3, March 6th, 2019 Introduction to Matlab - Part 2 - Lecture 3 - Matlab
Laboratory, March 6th, 2019 Laboratory: Introductory exercises - Part 2

Lecture 4, March 8th, 2019 Compact storage methods for sparse matrix: Coordinate, Compact Sparse Row CSR, Compact Sparse Column CSC and Modified Sparse Row MSR, Block Sparse Row, Skyline, Diagonal, Ellpack-Itpack. Lecture 4 - Sparse Matrices

  • Appendix of book Solving Numerical PDEs: Problems, Applications, Exercises - Formaggia, Saleri, Veneziani - 2012 - read pp. 395-409

Lecture 5, March 13th, 2019 Lecture by Dr. Viviana Arrigoni. Linear systems. Gaussian elimination for solving systems of linear equations. Pivoting. Methods to avoid pivoting. Random Butterfly Transformations and Positive definite methods Lecture 5 - Linear Systems Part 1

Lecture 6, March 15th, 2019 Lecture by Dr. Viviana Arrigoni. Linear systems. Cholesky factorization. Jacobi iterative method. Gauss-Seidel iterative method. Lecture 6 - Linear Systems Part 2

Lecture 7, March 20th, 2019 Discussion on exercises of Homework 1 and laboratory.

Lecture 8, March 22th, 2019 Errors: Computational errors, Data errors, Truncation errors, Rounding errors. Forward error and backward error. Sensitivity and condition number. Stability and accuracy. Errors in floating point arithmetic. Lecture 8 - Errors

Lecture 9, March 27th, 2019 Eigenvalues and eigenvectors. The Power method. The Deflation methods. Applications: Gould Index - Eigenvector Centrality in a Graph; the Fiedler Eigenvector and the Graph Partitioning; the Steady State of a Markov Chain by using Eigenvalues and Eigenvectors.

Lecture 10, March 29rd, 2019 Discussion on exercises of Homework 2 and laboratory

Lecture 11, April 3th, 2019 Exercises on errors, sparse matrices, Jacobi method, Cholesky method, Power method from 2016 midterm test and 2016 July test.

Lecture 12, April 5th, 2019 Molecular Dynamics: Introduction, Hooke's Law Model, Lennard-Jones Model, Motion Equations. Euler's method. Molecular Dynamics - L. Fosdick.

Lecture 13, April 10th, 2019 Molecular Dynamics: Verlet's method for Hooke's Law Model and Lennard-Jones Model. Hard Sphere Model. Molecular Dynamics - L. Fosdick.

Lecture 14, April 12th, 2019 Molecular Dynamics: Hard Sphere Model. Exact solution for Hooke's Law Model. Molecular Dynamics - L. Fosdick.

April 17th, 2019 _Midterm test

Lecture 15, May 3th, 2019 Classifications of (parallel) architectures. Lecture 15 - Architecture Classification SIMD class: vector architecture 2019 Lecture15 - Vector Architectures

Lecture 16, May 8th, 2019 Graphics Processing Units. 2019 Lecture 16 - GPU (Hennessy, Patterson - Chapter 4, Sect. 4.2; Kirk, Hwu - Chapter 3, 4, 5; Barlas - Chapter 6)

Lecture 17, May 10th, 2019 Graphics Processing Units - Continued. Exerxises on GPUs.

Lecture 18, May 15th, 2019 Interconnection networks. Lecture 18 - Interconnection networks

Lecture 19, May 17th, 2019 Lecture by Dr T. Castrignanō. Problems in Bioinformatics and project proposals.

Lecture 20, May 22nd, 2019 Circuits for arithmetic operations. Pipeline of arithmetic operations. Circuit evaluation: delay and area. Lecture 20 - Computer arithmetic

Lecture 21, May 29th, 2019 Representations for Fast Arithmetic. Redundant number representations for carry-free addition. Modified Signed Digit (MSB) and Redundant Binary. Residue number system. Lecture 21 - Representations for Fast Arithmetic

Lecture 22, May 31th, 2019 Exercises on Interconnection networks.
Exercises on Redundant representations and Residue number systems.

Lecture 23, June 3rd, 2019 Performance evaluation of computer architectures. Amdhal law. Performance equation. Lecture 23 - Performance

Some papers proposed for past exam projects - Articoli proposti per esami passati

Past year lectures


The exam consists of two parts:

  • Written exam. Students attending the lessons can take a mid-term exam and a final exam (or a whole exam). Mid-term and final exam (or whole exam) consist in a written test and exercises.
  • One of the following, at the choice of the student: oral exam/presentation of one-two papers/project.

There will also be homework assignments. Homeworks will contribute to the final grade.

Text of exams


Textbooks - Testi di riferimento

  • Introduction to High-Performance Scientific Computing, Lloyd D. Fosdick, Elizabeth R. Jessup, Carolyn J. C. Schauble and Gitta Domik, The MIT Press, 1996, ISBN 0-262-06181-3
  • Programming Massively Parallel Processors: A Hands-on Approach, David B. Kirk and Wen-mei W. Hwu, Morgan Kaufmann, 2010
  • Introduction to scientific computing: A Matrix-Vector Approach Using MATLAB, Charles F. Van Loan, Prentice Hall , 1997
  • Manuale di MATLAB. Consultare il sito: http://www.mathworks.com/help/techdoc/learn_matlab/bqr_2pl.html
  • Matlab. Concetti e progetti, Giovanni Naldi e Lorenzo Pareschi, Apogeo, 2007
  • Calcolo Scientifico: Esercizi e Problemi Risolti Con MATLAB e Octave, Alfio Quarteroni, Fausto Saleri, 2008


-- AnnalisaMassini

Edit | Attach | Watch | Print version | History: r241 < r240 < r239 < r238 < r237 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r241 - 2019-06-25 - AnnalisaMassini

Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback