The course aims to develop the skill needed to produce computer programs for parallel and distributed computation. The theory is carefully linked to practice by implementing programming projects in a cutting edge environment
Curriculum
teacher profile teaching materials
http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Blaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Programme
Brief introduction to Julia language. Introduction to parallel architectures, Parallel and distributed programming with Julia. Primitives of communication and synchronization. Languages based on directives. Performance metrics. Matrix operations and dense linear systems. Sparse linear systems. Cache-oblivious algorithms. Collaborative development of projects. Test driven development and debugging.http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Core Documentation
Lecture slidesBlaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Reference Bibliography
https://juliaacademy.com/p/julia-programming-for-nervous-beginnersType of delivery of the course
Class lectures, practical activities (projects), to be developed along lines provided by the instructor. Should the COVID-19 emergency continue, the course will implement all the indications provided by the university.Type of evaluation
project and in itinere evaluation teacher profile teaching materials
http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Blaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Mutuazione: 20810157 CALCOLO PARALLELO E DISTRIBUITO in Ingegneria informatica LM-32 PAOLUZZI ALBERTO
Programme
Brief introduction to Julia language. Introduction to parallel architectures, Parallel and distributed programming with Julia. Primitives of communication and synchronization. Languages based on directives. Performance metrics. Matrix operations and dense linear systems. Sparse linear systems. Cache-oblivious algorithms. Collaborative development of projects. Test driven development and debugging.http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Core Documentation
Lecture slidesBlaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Reference Bibliography
https://juliaacademy.com/p/julia-programming-for-nervous-beginnersType of delivery of the course
Class lectures, practical activities (projects), to be developed along lines provided by the instructor. Should the COVID-19 emergency continue, the course will implement all the indications provided by the university.Type of evaluation
project and in itinere evaluation teacher profile teaching materials
http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Blaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Mutuazione: 20810157 CALCOLO PARALLELO E DISTRIBUITO in Ingegneria informatica LM-32 (docente da definire)
Programme
Brief introduction to Julia language. Introduction to parallel architectures, Parallel and distributed programming with Julia. Primitives of communication and synchronization. Languages based on directives. Performance metrics. Matrix operations and dense linear systems. Sparse linear systems. Cache-oblivious algorithms. Collaborative development of projects. Test driven development and debugging.http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Core Documentation
Lecture slidesBlaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Reference Bibliography
https://juliaacademy.com/p/julia-programming-for-nervous-beginnersType of delivery of the course
Class lectures, practical activities (projects), to be developed along lines provided by the instructor. Should the COVID-19 emergency continue, the course will implement all the indications provided by the university.Type of evaluation
project and in itinere evaluation teacher profile teaching materials
http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Blaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Mutuazione: 20810157 CALCOLO PARALLELO E DISTRIBUITO in Ingegneria informatica LM-32 PAOLUZZI ALBERTO
Programme
Brief introduction to Julia language. Introduction to parallel architectures, Parallel and distributed programming with Julia. Primitives of communication and synchronization. Languages based on directives. Performance metrics. Matrix operations and dense linear systems. Sparse linear systems. Cache-oblivious algorithms. Collaborative development of projects. Test driven development and debugging.http://www.dia.uniroma3.it/~paoluzzi/
http://www.dia.uniroma3.it/~paoluzzi/web/did/calcoloparallelo/2022/index.html
Core Documentation
Lecture slidesBlaise N. Barney, HPC Training Materials, by kind permission of Lawrence Livermore National Laboratory's Computational Training Center
Avik Sengupta, Julia High Performance: Optimizations, distributed computing, multithreading, and GPU programming with Julia 1.0 and beyond, 2nd Edition, Pakt, 2019
Reference Bibliography
https://juliaacademy.com/p/julia-programming-for-nervous-beginnersType of delivery of the course
Class lectures, practical activities (projects), to be developed along lines provided by the instructor. Should the COVID-19 emergency continue, the course will implement all the indications provided by the university.Type of evaluation
project and in itinere evaluation