<table width=100% bgcolor="#00004F" cellpadding="20"> <tr><td align="center"> <img src="%ATTACHURLPATH%/mandelbrot.jpg" alt="mandelbrot.jpg" height='90' /><img src="%ATTACHURLPATH%/matlab.jpg" alt="matlab.jpg" height='90' /><img src="%ATTACHURLPATH%/risonanza.jpg" alt="risonanza.jpg" height='90' /><img src="%ATTACHURLPATH%/tomografia_elettrica.jpg" alt="tomografia_elettrica.jpg" height='90' /><img src="%ATTACHURLPATH%/risonanza2.jpg" alt="risonanza2.jpg" height='90' /><img src="%ATTACHURLPATH%/giove2.jpg" alt="giove2.jpg" height='90' /><img src="%ATTACHURLPATH%/eruzione2.jpg" alt="eruzione2.jpg" height='90' /> <br> </td></tr> <tr><td align="left" bgcolor="#FEFFFF"> <font color="#FF642E", size=+2><b>Advanced Architectures - ex Intensive Computation </b></font> <br> <br> <font size=+1><a href="http://twiki.di.uniroma1.it/twiki/view/Users/AnnalisaMassini"><font color="#00004F">Annalisa Massini</font></a></font><br> <br> <font color="#00004F"> *Office Hours*: appointment by email</font> </td></tr> <tr><td align="left" bgcolor="#FEFFFF"><font color="#FF642E" size=+1><b> News </b></font><be> <!-- An interesting *lectio magistralis on the history of parallel programming* will be held tomorrow *March 20, at 12, room Aldo La Ginestra (CU014)*. You are invited to participate, if you can. The topic is closely related to the course and the speaker, Prof. Keshav Pingali, is a leading person in this field. Information at the following link: https://www.di.uniroma1.it/it/notizie/seminari/distinguished-lectures --- --> --- To get information on lessons and receive notices: * Register on *Classroom* for the course *atlaflb* using your Sapienza email address (surname.matricola@studenti.uniroma1.it) * You can use the following link: https://classroom.google.com/c/MjEzNDUyNzkwNTNa?cjc=atlaflb <font color="#3F467A"> * The course will start on *27 February 2025*. Please note that only this first Thursday, the class will start at 12:00, will be shorter and will end at 13:00. * Lessons are scheduled for: * *Tuesday* (14:00 - 17.00) * *Thursday* (11:00 - 13.00) * in *Room T1*, Edificio E (Building E) Regina Elena --- Dear Students, the course will follow the same line as the last three years, focusing on advanced topics on computer architectures and an introduction and some selected topics on quantum computing. Previously, the course was called Intensive Computation, and since the name change, the topics have mainly concerned computer architectures. In particular, the course will start from the part dedicated to computer architecture and will focus on arithmetic circuits and interconnection topologies. The part on *quantum computing* will focus on quantum arithmetic circuits, to compare the classical solutions with those currently studied for quantum computers. <!-- *The page will be updated shortly with information relating to the 2023/2024 academic year.* In the remaining part of the course, compatibly with the time available, selected topics will be addressed among sparse matrices, errors, linear systems, eigenvalues and eigenvectors, molecular dynamics. Theses can be proposed on the various topics covered in the course. ---- Dear students, this year I have *updated the program* of the course, making some changes to the order of the topics, making some additions, addressing some topics in more detail, and less in detail others that I had dealt with in-depth in previous years. In particular, the course will start from the part dedicated to computer architectures, and will place greater emphasis on interconnection topologies for HPC and PD systems and the related communication problems. *Quantum computing* will be included as a new topic, with particular regard to quantum arithmetic circuits, in order to compare the classical solutions (which I will describe) with those currently being studied for quantum computers. Theses will be proposed on the topics of this first part of the course. In the second part of the course, the remaining topics will be treated (in previous years they were treated in the first period of the course): sparse matrices, errors, linear systems, eigenvalues and eigenvectors, molecular dynamics. Depending on how the course will proceed, it is possible that some of these latter topics are only mentioned or completely skipped. <font color="#FF642E"> * *Due to an unforeseen commitment, tomorrow's lesson - 23rd February - will take place remotely.* <font color="#3F467A"> * You can find the link, on *Classroom* by registering for the *imcilwm* course using your Sapienza email address. ------------------------ * The first meeting of the Intensive Computation course will be on *Wednesday, 24 February 2021* * For in-person attendance, you should book an attendance spot through Prodigit, filling the form at the link: https://prodigit.uniroma1.it/ * To get information on the lessons in streaming, access the course material and receive notices, you must register on *Classroom* for the *w5ftylh* course using your Sapienza email address (surname.matricola@studenti.uniroma1.it). * Last two lectures will be: * Monday 18 May 2020 - Performance evaluation * Thursday 27 May 2020 - Final discussion on Homeworks - Students will present their solutions of homework 3, 4 and 5. * *Monday's lectures will start at 10:15.* * *Link to lectures is: https://meet.google.com/kpb-xnqv-wgk* * *22 March 2020* I created a personal folder for each student for delivering homeworks, in the Google Drive folder of Classroom. Each folder has the name of the student and is shared only with the teacher. * From Monday 9 March, lessons will be delivered in real-time using platform Google Meet, according to the official class schedule. * *Today's lecture (25 March) will start at 12:00 due to the overlapping with Department Committee Meeting.* * *On Monday 16 March, the lecture will start at 10:30-10:35, due to the overlapping with activities of another course.* * Students are invited to send an e-mail to the teacher from their Sapienza email address, so that they can be invited to the meeting on Google Meet. * *Classes will regularly start on February 24th, 2020.* * Lectures will be held Monday 10:00-13:00 and Thursday 11:00-13:00, in Room G50, via Regina Elena 295. * *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) * For the test of June 18, students are required to add their name and specify which part of the test they intend to take using the table at the following link: [[http://twiki.di.uniroma1.it/twiki/view/Prenotazioni/2019_06_18_IntensiveComputation][18 June test]] *Midterm grades are published below.* * On *June 7th there will be a meeting in the Colossus laboratory* to discuss homeworks. The meeting will be at 10:30 am. *Final test (end-of-term test) will be held on 6th June at 10:30, in Room Alfa.* *Classes will regularly start on February 27th, 2019.* *Midterm exam will be held during class time on Thursday, April 17 at 10:30, in Room Alfa.* * Grades of 24 July test: [[%ATTACHURL%/2018-24july-grades.pdf][2018-24july-grades.pdf]] * September test will be held by appointment <font color="#3F467A"> *Homeworks deadline* * *Homework 4* on 25th May * *Homework 3* on 11th May * *Homework 2* on 11th April * *Homework 1* on 4th April * *Homeworks upload* Students may upload their homeworks dropping the files in the folder with their name that I create on Google Drive after receiving the email address (I wait for an (empty) email from each student) *Common material* * I created a common folder on Google Drive where you can put material useful for everyone. * At the moment, there are two test matrices you can use for the exercises on network tomography. The file name specifies the maximum identifiable value and the nodes that have that value. * *End-of-term test will be held on Thursday 8 June 2018, at 9:30 am, Aula P2, Main Campus.* * Students *are required to register* for the exam on Infostud, and to add their name to table at following link: http://twiki.di.uniroma1.it/twiki/view/Prenotazioni/2018_06_08_IntensiveComputation *Cancellation* Thursday 20th April's lecture *is cancelled* due to illness. *Midterm exam will be held during class time on Thursday, April 18 at 10:30, in Room Alfa.* Students *are required to register* for the exam on Infostud. <br> Please note that *registration is open until April 16*. *Classes will regularly start on February 28th, 2018.* The next written exam is on *20th of July, at 9:30, in Seminari Room*. *Homework 1* and *Homework 2* are due on 15th April. Starting from 1st March, the class schedule is *Tuesday 14-15:30* and *Friday 12-13:30*. *Tuesday 10th June* the lesson is the Colossus laboratory (discussion on Homeworks and Projects). Due to numerous students' request, the *deadline for Homework 2* has been *postponed to 22nd April*. The deadline for *Homework 1* remains unchanged on *15th April*. A list of matrices you can use for Homework 2: [[%ATTACHURL%/Matrices-for-Homework2.pdf][Matrices-for-Homework2]] *Cancellation* Tuesday 29th April's lecture *is cancelled* due to illness. <tr><td align="left" bgcolor="#FFFEFF"><font color="#FF8C00" size=+1><b>Avviso - News</b></font><br> <br> <font color="#3F467A"> *Homeworks* Students may hand in their homeworks in Colossus Laboratory: * *Homework 1* on 24th april, 10:00 * *Homework 2* on 29th april, 14:30 *Reminder: there is no lesson on Tuesday 18th March* --> <!-- <tr><td align="left" bgcolor="#FEFFFF"><font color="#3F467A" size=+1><b>Aim of the course </b></font><br> <font color="#3F467A"> The aim of the course is to provide students with methodologies for the solution of problems requiring intensive computation, in particular scientific problems.<br> 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 --> <tr><td align="left" bgcolor="#FEFFFF"><font color="#3F467A" size=+1><b>Lectures 2024-2025</b></font><br> <br> <font color="#3F467A"> *Lecture 1, February 27th, 2025* Introduction to the course. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture1-Intro-AdvArch.pdf][Lecture 1 - Introduction]] *Lecture 2, March 4th, 2025* Summary of computer organization and architecture. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture2-VonNeumann.pdf][Lecture 2 - Overview of Computer Architecture]] <be> *Lecture 3, March 6th, 2025* Basic circuits for arithmetic operations: Ripple-carry adder and multiplier for unsigned and signed numbers. Circuits for speeding up arithmetic operations: Carry select adder. Carry look-ahead adder. [[http://twiki.di.uniroma1.it/pub/CI/WebHome//2025-Lecture3-4-Computer-arithmetic.pdf][Lecture 3 - Computer arithmetic - Slides 1-43]] <be> *Lecture 4, March 11th, 2025* Circuits for speeding up arithmetic operations: Pipelined addition. Pipelined unsigned and signed multiplication. Evaluation of circuit: area and delay. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2024-Lecture3-4-Computer-arithmetic.pdf][Lecture 4 - Computer arithmetic - Slides 44-65]] <br> *Exercises* on: circuit evaluation and Booth recoding. <br> Representations for fast arithmetic. Redundant number systems: introduction. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture4-5-RepresentationsFastArithmetic.pdf][Lecture 4 - Redundant number systems - Introduction - Slide 1-12]] <be> *Lecture 5, March 13th, 2025* Representations for fast arithmetic. Redundant number systems. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture4-5-RepresentationsFastArithmetic.pdf][Lecture 5 - Redundant number systems - Slide 13-33]] <be> *Lecture 6, March 18th, 2025* Redundant Number Systems: examples. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2024-Lecture5-RepresentationsFastArithmetic.pdf][Lecture 6 - Redundant number systems: examples - Slide 34-54]] <br> *Exercises* on: pipelined adders and multipliers, signed digit redundant representations. <br> Residue Number Systems: Introduction and selection of a module set. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture6-ResidueNumberSystem.pdf][Lecture 6 - Residue Number System - Slides 1-23]] <be> *Lecture 7, March 20th, 2025* Residue Number Systems: arithmetic operations, conversion, mixed radix representation. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture6-ResidueNumberSystem.pdf][Lecture 7 - Residue Number System - Slides 24-38]] <br> Exercises: Residue Number System. <be> *Lecture 8, March 25th, 2025* Compact formats for sparse matrices. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture8-SparseMatrices.pdf][Lecture 8 - Sparse Matrices]] <br> *Exercises* on Sparse Matrices. <be> *Lecture March 27th, 2025* - cancelled <be> *Lecture 9, April 1st, 2025* Performance and speed-up: Amdahl's law, Processor performance equation, and Gustafson-Barsis's law. Communication Performance. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture9-Performance.pdf][Lecture 9 - Performance and speed-up]] <be> <br> *Exercises* on Amdhal Law and Performance Equation. *Lecture 10, April 3rd, 2025* Introduction to parallel architectures and motivations. Classification of parallel architectures. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture10-IntroParallelArchitecture.pdf][Lecture 10 - Introduction to parallel architectures: motivations and classifications]] <be> *Lecture 11, April 8th, 2025* The SIMD class. Vector architectures. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture11-13-SIMD-VectorArchitectures.pdf][Lecture 11 - Vector Architectures - Slides 1 - 34]] <be> Exercises for the Midterm test. *Lecture 12, April 10th, 2024 - Midterm* <be> *Lecture 13, April 15, 2025* Vector architectures. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture11-13-SIMD-VectorArchitectures.pdf][Lecture 13 - Vector Architectures - Slides 35 - 73]] <be> *Lecture 14, April 24th, 2025* Graphics Processing Units: introduction and starting notions. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture14-15-GPU.pdf][Lecture 14 - GPUs - Slide 1-52]] <be> *Lecture 15, April 29th, 2025* Graphics Processing Units. Presentation by students Colombini and De Nicola, with a description of memory and practical examples of CUDA programming. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture15-GPUs-Colombini-DeNicola.zip][Lecture15 - Slides, code and docker]] <be> *Lecture 16, May 6th, 2025* Multiplication of matrices using CUDA. Exercises. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture16-GPUs-Colombini-DeNicola.zip][Lecture16 - Slides and code]] Overview of the second part of the slides of Lecture 14. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture14-15-GPU.pdf][Lecture 16 - GPUs - Slides 53-end] *Lecture 17, May 8th, 2025* Interconnection networks [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture17-18-IntNetworks.pdf][Lecture 17 - Interconnection networks - Slides 1-43]] <be> *Lecture 18, May 13th, 2025* Interconnection networks [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture17-18-IntNetworks.pdf][Lecture 18 - Interconnection networks - Slides 44-129]]<be> Exercises on Clos networks <be><be> *Lecture 19, May 15th, 2025* Introduction to Quantum Computing. Qubits and One-qubit gates. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture19-20-QuantumComputing.pdf][Lecture 19 - Quantum Computing - Slides 1-67]] <be> *Read slides 68-81 before the lecture on 27 May* *Lecture 20, May 27th, 2025* Quantum Computing - Presentatinon by Mingardi. Multiple-Qubit gates, controlled gates and Quantum circuits. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2025-Lecture19-20-QuantumComputing.pdf][Lecture 20 - Quantum Computing Slides 68-94]] <be> No-cloning theorem. Realizing classical gates. Quantum circuit evaluation. Carry Ripple Adder and Carry Select Adder. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2024-Lecture20-QuantumComputing.pdf][Lecture 20 - Quantum Computing 3-4, 24-29, 48-55, 56-64,]] <be> Qiskit and realization of circuits. <be> *Lecture 21, May 29th, 2025* Exercises for the tests.<be> *Lecture 22, June 5, 2025 <be> End-of-Term test.<be> <!-- Exercises on Fat trees (generalized and extended). <be> Exercises on interconnection networks: Mesh, Hypercube, Clos network, MINs. <be><br> *Lecture , May 20th, 2025* cancelled *Lecture , May 22nd, 2025* *Lecture 20, May 27th, 2025* Quantum Computing: Multiple-Qubit gates and Quantum circuits. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2024-Lecture18-19-QuantumComputing.pdf][Lecture 19 - Quantum Computing Slides 61-104]] <be> Exercises on quantum circuits. Exercises for the tests.<be> *Lecture 21, May 29th, 2025* Quantum Computing: No-cloning theorem. Teleportation, Universality, Adders. [[%ATTACHURL%/2024-Lecture20-QuantumComputing.pdf][2024-Lecture20-QuantumComputing.pdf]]<be> Quantum Computing: Teleportation, Universality, Adders. [[%ATTACHURL%/2024-Lecture20-QuantumComputing.pdf][2024-Lecture20-QuantumComputing.pdf]] Exercises on quantum circuits. <!-- Pipelining [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2023-Lecture3-Pipelining.pdf][Lecture3 - Pipelining]] Compact matrices on GPUs???? <tr><td align="left" bgcolor="#FEFFFF"><font color="#3F467A" size=+1><b>Lectures 2020-2021</b></font><br> <br> <font color="#3F467A"> *Lecture 1, February 24th, 2021* Introduction to the course. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture1-IntensiveComputationIntro.pdf][Lecture 1 - Introduction]] *Lecture 2, February 26th, 2021* Introduction to Matlab - Part 1 - [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture2-Matlab.pdf][Lecture 2 - Matlab]]<br> *Laboratory, February 26th, 2021* [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Homework0-Intro-1.pdf][Laboratory: Introductory exercises - Part 1]]<br> *Lecture 3, March 3rd, 2021* Introduction to Matlab - Part 2 - [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture3-Matlab.pdf][Lecture 3 - Matlab]]<br> *Laboratory, March 3rd, 2021* [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Homework0-Intro-1bis.pdf][Laboratory: Introductory exercises - Part 2]]<br> *Lecture 4, March 5th, 2021* Sparse matrices: definitions and motivation of compact formats. Compact storage methods for sparse matrix: Coordinate, Skyline, Compact Sparse Row CSR, Compact Sparse Column CSC, Modified Sparse Row MSR. [[http://twiki.di.uniroma1.it/pub/CI/WebHome//2021-Lecture4-SparseMatrices.pdf][Lecture 4 - SparseMatrices.pdf]] * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/Appendix-SolvingNumericalPDEs-FormaggiaSaleriVeneziani-2012.pdf][Appendix]] of book Solving Numerical PDEs: Problems, Applications, Exercises - Formaggia, Saleri, Veneziani - 2012 - *read pp. 395-409* <br> *Lecture 5, March 10th, 2021* [[%ATTACHURL%/2021-03-10-Esercitazione-SparseMatrices.pdf][Exercises on Sparse matrices.]] * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Homework1-SparseMatrices.pdf][Homework 1 - Sparse Matrices]] - *Deadline: 25 March 2021* <br> *Lecture 6, March 12th, 2021* Lecture by Dr. Viviana Arrigoni. Linear systems. Gaussian elimination for solving systems of linear equations. Pivoting. Methods to avoid pivoting. Random Butterfly Transformations and Transpose methods. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture6-ICLinSys1_21-Viviana.pdf][Lecture 7 - Linear Systems Part 1]] *Lecture 7, March 17th, 2021* Lecture by Dr. Viviana Arrigoni. Linear systems. Cholesky factorization. Jacobi iterative method. Gauss-Seidel iterative method. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture7-ICLinSys2_21-Viviana.pdf][Lecture 7 - Linear Systems Part 2]]<br> * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/homework2IC.pdf][Homework 2 - Direct and iterative methods]] - *Deadline: 2 April 2021* <br> *Lecture 8, March 19th, 2021* 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 representation. Uncertainty in measurements. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture8-Errors.pdf][Lecture 8 - Errors]]<br> Exercises on linear systems: Exercise 3 from Midterm exam 18 April 2018 (to be continued). <br> *Lecture 9, March 24th, 2021* Discussion on Homework 1: student's solutions. Exercises on linear systems and errors: Exercise 3 from Midterm exam 18 April 2018 (continued); Exercise 3 from Midterm exam 17 April 2019. <br> *Lecture 10, March 26th, 2021* 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 using eigenvalues and eigenvectors; covariance matrix and eigenvectors. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture10-Eigenvalues.pdf][Lecture 10 - Eigenvalues, Eigenvectors and applications]]<br> *Lecture 11, March 31st, 2021* Molecular Dynamics: Introduction, Hooke's Law Model, Lennard-Jones Model, Motion Equations. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture11-MolecularDynamics.pdf][Lecture11 - MolecularDynamics]][[http://twiki.di.uniroma1.it/pub/CI/WebHome/FosdickMolecDynamic.pdf][Molecular Dynamics - L. Fosdick]].<br> *Lecture 12, April 7th, 2021* Molecular Dynamics: Euler's method and Verlet's method for Hooke's Law Model and Lennard-Jones Model. Solution of motion equations for the 1D Hard Sphere Model. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture11-MolecularDynamics-bis.pdf][Lecture12 - Molecular Dynamics Part 2 - slide 1-37]] Exact solution for Hooke's Law Model. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/FosdickMolecDynamic.pdf][Molecular Dynamics - L. Fosdick]].<br> *Lecture 13, April 9th, 2021* Molecular dynamics: Solution of motion equations for the 1D Hard Sphere Model. Exact solution of motion equations for the Hooke's Law Model. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture11-MolecularDynamics-bis.pdf][Lecture12 - Molecular Dynamics Part 2 - slide 38-65]]<br> Discussion on Homework 2: student's solutions.<br> *Midterm test - April 16th, 2021* <br> *Lecture 15, April 23rd, 2021* Circuits for arithmetic operations. Pipeline of arithmetic operations. Circuit evaluation: delay and area. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture15-Computer-arithmetic.pdf][Lecture15 - Computer arithmetic]] <br> * [[http://twiki.di.uniroma1.it/pub/CI/WebHome//2021-Homework3-Eigs-MolecularDynamics.pdf][Homework3 - Eigenpairs and Molecular Dynamics]] - *Deadline: 7 May 2021* <br> *Lecture 16, April 28th, 2021* Representations for Fast Arithmetic. Redundant number representations for carry-free addition. Modified Signed Digit (MSB) and Redundant Binary. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture16-RepresentationsFastArithmetic.pdf][Lecture16 - Representations for Fast Arithmetic - Slides 1-31]] <br> *Lecture 17, April 30th, 2021* Representations for Fast Arithmetic: Residue number system. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture16-RepresentationsFastArithmetic.pdf][Lecture17 - Representations for Fast Arithmetic - Slides 32-55]] <br> * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-04-30-Eser-circuit-pipeline-representations.pdf][Text of exercises on circuit evaluation and number representations]] *Lecture 18, May 5th, 2021* SIMD class: vector architecture. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture18-VectorArchitectures.pdf][Lecture 18 - Vector Architectures]] <br> *Lecture 19, May 7th, 2021* Graphics Processing Units. Matrix multiplication on GPUs. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture19-GPU.pdf][Lecture19 - GPUs]]<br> *Lecture 20, May 12th, 2021* Interconnection networks. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture20-IntNetworks.pdf][Lecture 20 - Interconnection networks - Slides 1 - 39]] <br> *Lecture 21, May 14th, 2021* Interconnection networks: Equivalence of log N stage and (2log N -1) stage MINs; all-to-all personalized communication on log N stage and (2log N -1) stage MINs - [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lecture20-IntNetworks.pdf][Lecture 20 - Interconnection networks - Slides 40 - 102]] * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2004-EquivalenceJPDC.pdf][Paper on equivalence of MINs]] * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2003-All-to-allDAM.pdf][Paper on All-to-all personalized communication on log N stage MINs]] * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2020-All-to-All-HPCC.pdf][Paper on All-to-all personalized communication on (2 log N -1) stage MINs]] <br> * [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Homework4-NumberRepresentations-and-MINs.pdf][Homework4 - NumberRepresentations and Multistage Interconnection Networks]] - *Deadline: 31 May 2021* <br> *Lecture 22, May 19th, 2021* Exercises on Interconnection networks and GPUs. <br> *Lecture 23, May 21st, 2021* Performance evaluation of computer architectures. Amdahl law. Performance equation. [[http://twiki.di.uniroma1.it/pub/CI/WebHome/2021-Lesson23-Performance.pdf][Lesson 23 - Performance]] <br> *Lecture 24, May 26st, 2021* Exercises on GPUs, Amdahl law, and Performance equation. Discussion on Projects and Homework. <br> --- [[http://twiki.di.uniroma1.it/twiki/view/CI/Corso2009-2010][Some papers proposed for past exam projects - Articoli proposti per esami passati]] --> <tr><td align="left" bgcolor="#FEFFFF"><font color="#3F467A", size=+1><b>Past year lectures </b></font><font color="#FF8C00", size=+1></font><br> <font color="#FF8C00"> * [[Corso2023-2024][Lectures 2023/2024]] * [[Corso2022-2023][Lectures 2022/2023]] * [[Corso2021-2022][Lectures 2021/2022]] * [[Corso2020-2021][Lectures 2020/2021]] * [[Corso2019-2020][Lectures 2019/2020]] * [[Corso2018-2019][Lectures 2018/2019]] * [[Corso2017-2018][Lectures 2017/2018]] * [[Corso2015-2016][Lectures 2015/2016]] * [[Corso2013-2014][Corso a.a. 2013/2014]] * [[Corso2012-2013][Corso a.a. 2012/2013]] * [[Corso2011-2012][Corso a.a. 2011/2012]] * [[Corso2010-2011][Corso a.a. 2010/2011]] * [[Corso2009-2010][Corso a.a. 2009/2010]] * [[Corso2008-2009][Corso a.a. 2008/2009]] * [[Corso2007-2008][Corso a.a. 2007/2008]] </font> </td></tr> <tr><td align="left" bgcolor="#FEFFFF"><font color="#3F467A", size=+1><b>Exam</b></font><font color="#FF8C00", size=+1></font><br> <font color="#3F467A"> 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. Homework will contribute to the final grade. --> ----- *Text of exams* * Exams 2024/2025 * [[%ATTACHURL%/2025-06-17-PartA.pdf][Exam 17 June 2025 - Part A]] * [[%ATTACHURL%/2025-06-17-PartB.pdf][Exam 17 June 2025 - Part B]] * [[%ATTACHURL%/2025-06-05-endterm-June.pdf][End-of-term test - 5 June 2025]] * [[%ATTACHURL%/2025-04-10-PartA.pdf][Midterm test - 10 April 2025]] * Exams 2023/2024 * [[%ATTACHURL%/2024-06-12-PartA.pdf][Exam 12 June 2024 - Part A]] * [[%ATTACHURL%/2024-06-12-PartB.pdf][Exam 12 June 2024 - Part B]] * [[%ATTACHURL%/2024-06-06-end-of-term.pdf][End-of-term test - 6 June 2024]] * [[%ATTACHURL%/2024-04-18-midterm.pdf][Midterm test - 18 April 2024]] * Exams 2022/2023 * [[%ATTACHURL%/2023-07-07-PartA.pdf][Exam 7 July 2023 - Part A]] * [[%ATTACHURL%/2023-07-07-PartB.pdf][Exam 7 July 2023 - Part B]] * [[%ATTACHURL%/2023-06-09-PartA.pdf][Exam 9 June 2023 - Part A]] * [[%ATTACHURL%/2023-06-09-PartB.pdf][Exam 9 June 2023 - Part B]] * [[%ATTACHURL%/2023-06-01-end-of-term.pdf][End-of-term test - 1 June 2023]] * [[%ATTACHURL%/2023-04-17-midterm.pdf][Midterm test - 17 April 2023]] * Exams 2021/2022 * [[%ATTACHURL%/2022-07-04-Part1.pdf][Exam 4 July 2022 - Part A]] * [[%ATTACHURL%/2022-07-04-Part2.pdf][Exam 4 July 2022 - Part B]] * [[%ATTACHURL%/2022-06-13-Part1.pdf][Exam 13 June 2022 - Part A]] * [[%ATTACHURL%/2022-06-13-Part2.pdf][Exam 13 June 2022 - Part B]] * [[%ATTACHURL%/2022-05-31-end-of-term.pdf][End-of-term test - 31 May 2022]] * [[%ATTACHURL%/2022-04-20-CI-midterm.pdf][Midterm test - 20 April 2022]] * Exams 2020/2021 * [[%ATTACHURL%/2021-endterm-4June-solution.pdf][End-of-term test - 4 June 2021]] - *with solution* * [[%ATTACHURL%/2021-04-16-Midterm-print.pdf][Midterm test - 16 April 2021]] * Exams 2018/2019 * [[%ATTACHURL%/2019-15july_B.pdf][Exam -15 July 2019 - Part B]] * [[%ATTACHURL%/2019-15july-A.pdf][Exam -15 July 2019 - Part A]] * [[%ATTACHURL%/2019-18june-B.pdf][Exam 18 June 2019 - Part B]] * [[%ATTACHURL%/2019-endterm-6june.pdf][End of term test - 6 June 2019]] * [[%ATTACHURL%/2019-midterm-17apr.pdf][Midterm exam - 17 April 2019]] * Exams 2017/2018 * [[%ATTACHURL%/2018-24july-partA.pdf][Exam part A - 24 July 2018]] * [[%ATTACHURL%/2018-24july-partB.pdf][Exam part B - 24 July 2018]] * [[%ATTACHURL%/2018-14jun-partA.pdf][Exam part A - 14 June 2018]] * [[%ATTACHURL%/2018-14jun-partB.pdf][Exam part B - 14 June 2018]] * [[%ATTACHURL%/2018-endterm-8june.pdf][End-of-term Exam - 8 June 2018]] * [[%ATTACHURL%/2018-midterm-18apr.pdf][Midterm Exam -18th April 2018]] * Exams 2015/2016 * [[%ATTACHURL%/Esame20July16.pdf][Exam - 20th July 2016]] * [[%ATTACHURL%/Esame10June16.pdf][Exam - 10th June 2016]] * [[%ATTACHURL%/Esonero31May16.pdf][End-of-term Exam - 31 May 2016]] * [[%ATTACHURL%/Esonero12apr16.pdf][Midterm Exam - 12 April 2016]] ----- <!-- *Grades* * [[%ATTACHURL%/2019-grade-18june.pdf][18 June grades]] * [[%ATTACHURL%/2019-grade-mid-endterm.pdf][End-of-term test grades]] * [[%ATTACHURL%/2019-midterm-grade.pdf][Midterm grades]] *Grade* * [[%ATTACHURL%/2018-14june-grades.pdf][14 June grades]] * [[%ATTACHURL%/2018-end-of-term-grades.pdf][End-of-term test grades]] * [[%ATTACHURL%/2018-midterm-grades.pdf][Midterm test grades]] * [[%ATTACHURL%/votiEsame20lug2016.pdf][20th July Exam Grade]] * [[%ATTACHURL%/votiEsame10giu2016.pdf][10th June Exam Grade]] * [[%ATTACHURL%/votiEsonero31mag2016.pdf][Second Midterm Exam Grade]] * [[%ATTACHURL%/MidtermExamGrade.pdf][Midterm Exam Grade]] --> <tr><td align="left" bgcolor="#FEFFFF"><br><font color="#3F467A", size=+1><b>Textbooks - Testi di riferimento</b></font><br> <br> <font color="#3F467A"> * Computer Architecture: A Quantitative Approach J. L. Hennessy, D. A. Patterson - Morgan Kaufmann, 2019 * Multicore and GPU Programming An Integrated Approach - G. Barlas - Morgan Kaufmann, 2014 * Programming Massively Parallel Processors: A Hands-on Approach, David B. Kirk and Wen-mei W. Hwu, Morgan Kaufmann, 2010 * Introduction to High-Performance Scientific Computing, Lloyd D. Fosdick, Elizabeth R. Jessup, Carolyn J. C. Schauble and Gitta Domik, The MIT Press, 1996 <be> <!-- * Introduction to scientific computing: A Matrix-Vector Approach Using MATLAB, Charles F. Van Loan, Prentice Hall , 1997 <br> * Manuale di MATLAB. Consultare il sito: http://www.mathworks.com/help/techdoc/learn_matlab/bqr_2pl.html<br> * 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 --> <tr><td align="center" bgcolor="#00004F"> <img src="%ATTACHURLPATH%/uragano2.jpg" alt="uragano2.jpg" height='90' /><img src="%ATTACHURLPATH%/proteina.jpg" alt="proteina.jpg" height='90' /><img src="%ATTACHURLPATH%/galassia.jpg" alt="galassia.jpg" height='90' /><img src="%ATTACHURLPATH%/pianeta.jpg" alt="pianeta.jpg" height='90' /><img src="%ATTACHURLPATH%/mandelbrot2.jpg" alt="mandelbrot2.jpg" height='90' /><img src="%ATTACHURLPATH%/tomografia.jpg" alt="tomografia.jpg" height='90' /><img src="%ATTACHURLPATH%/fotoni.jpg" alt="fotoni.jpg" height='90' /> </td></tr> </table> <!-- OLD STUFF <style type="text/css"> ul.pippo {list-style-image : url(%ICONURLPATH{"led-blue"}%);} ul.pippo ul {list-style-image : url(%ICONURLPATH{"led-orange"}%);} </style> ------------------------ <ul class="pippo"> <li> *Some papers for the exam project - Articoli proposti per il progetto d'esame* <ul class="pippo"> <!-- <li> Sparse Matrices * [[%ATTACHURL%/MatrixMultiplicationThesis.pdf][Communication-Avoiding Parallel Recursive Algorithms for Matrix Multiplication]] B. Lipshitz - Master Thesis (2013) * [[%ATTACHURL%/spgemm_sisc12.pdf][Parallel Sparse Matrix-Matrix Multiplication and Indexing: Implementation and Experiments]] A. Buluc, J.R. Gilbert - SIAM J. Sci. Comput.(2012) * [[%ATTACHURL%/SparseMatrixMatlab.pdf][Sparse Matrices In MATLAB: Design And Implementation]] J.R. Gilbert , C. Moler , R. Schreiber - SIAM J. Matrix Anal. Appl. (1992) </ul> <ul class="pippo"> <li> Eigenvalues and Eigenvectors * [[%ATTACHURL%/PowerMethod2008.pdf][Multiple extremal eigenpairs by the power method]] J.E. Gubernatis, T.E. Booth - Journal of Computational Physics (2008) * [[%ATTACHURL%/NetworkAccessibility-Straffin.pdf][Linear Algebra in Geography: Eigenvectors of Networks]] P.D. Straffin - Mathematics Magazine (1980) * [[%ATTACHURL%/EigenvalsGraphLovasz.pdf][Eigenvalues of graphs]] L. Lovasz - Manuscript (2007) </ul> -------------------------- Lo scopo del corso è di introdurre gli studenti alle metodologie di risoluzione di problemi che richiedono calcolo intensivo, principalmente in ambito scientifico. <br> Il corso è composto di due parti: <ul class="pippo"> <li> <font color="#FF8C00"><b> prima parte</b></font>: é una parte introduttiva e ha una impostazione tradizionale; si parlerà di <ul class="pippo"> <li> architetture per il calcolo massivo <li> matematica per il calcolo scientifico <li> MATLAB uno strumento sw che permette di lavorare efficientemente con le matrici e molto altro <li>problemi rilevanti in ambiti scientifici diversi come dinamica molecolare, tomografia e risonanza magnetica, ecc. </ul> <li> <font color="#FF8C00"><b>seconda parte</b></font>: è la parte di corso dedicata al lavoro collaborativo e consisterà in <ul class="pippo"> <li> sviluppo di progetti in MATLAB <li> lettura e discussione su articoli di rassegna e articoli di ricerca scelti insieme (su un insieme proposto in base alla rilevanza all'interesse e all'impatto scientifico) </ul> </ul> </font> </td></tr> ------------------ L'<b>esame</b> consisterà nella presentazione di un seminario suddiviso in due parti: <ul class="pippo"> <li> presentazione del <font color="#FF8C00"><b>progetto </b></font> realizzato con MATLAB o su GPU<br> <li> presentazione di un <font color="#FF8C00"><b> articolo </b></font> tra quelli proposti<br> </ul> La *valutazione* sarà basata su: <ul class="pippo"> <li> *esercizi* assegnati; la valutazione degli esercizi contribuisce fino a 2/30 sul voto finale <li> *progetto* realizzato con MATLAB <li> presentazione di un *articolo* <li> partecipazione, collaborazione </ul> </font> </td></tr> <tr><td align="left" bgcolor="#F3ECFA"><font color="#3F467A", size=+1><b>Programma di massima del corso</b></font><br> <br> <font color="#3F467A"> <ul class="pippo"> <li> Introduzione al calcolo scientifico intensivo. Problemi computazionali. Strategie generali. <li> Uno strumento software per il calcolo scientifico: MATLAB. <li> Efficienza e performance dei calcolatori. Calcolo vettoriale. Calcolo a memoria distribuita MIMD. Calcolo SIMD. <li> Rappresentazioni numeriche per il calcolo scientifico. Approssimazione nel calcolo scientifico. Rappresentazione in virgola mobile. <li> Applicazioni: problemi scientifici, soluzioni, realizzazioni e loro confronto. Esempi di problemi provengono da: dinamica molecolare, meteorologia, tomografia, Risonanza Magnetica Nucleare, prospezione geologica e oceanografia (analisi segnali e onde).<br> <li> Lettura guidata e discussione di articoli di rassegna e di ricerca, su problemi scientifici con risultati di particolare interesse. </ul> </font> </td></tr> --> -- Users.AnnalisaMassini
This topic: CI
>
AnnalisaMassini
>
WebHome
Topic revision: r395 - 2025-06-26 - AnnalisaMassini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback