Taller: Introducción a GPU's y Programación CUDA para HPC Amilcar Meneses Viveros Departamento de Computación CINVESTAV-IPN / LUFAC Computación Julio 2011 Friday, October 21, 2011 CONTENIDO I.- INTRODUCCION A GPU's Y 3.1 Uso de codigo C y C++ CUDA 3.2 Codigo CUDA (.cu) 1.1 Preliminares de programación y 3.3 El ambiente de desarrollo con computación paralela. Eclipse 1.2 Arquitecturas basadas en GPU's. 1.3 El ambiente de desarrollo CUDA. IV.- EJEMPLOS Y EJERCICIOS 4.1 Ejemplos con programas de II. PRINCIPIOS Y CONCEPTOS DE manejo de matrices y vectores: suma, PROGRAMACION CUDA resta, multiplicación, método gauss- jordan…. 2.1 Tipos de funciones y manejo de memoria. 2.2 Bloques y grids. V.- COOPERACION ENTRE HILOS 5.1 Manejo de bloques III.- ESTRUCTURA DE LOS 5.2 Sincronización y memoria PROGRAMAS CUDA compartida Friday, October 21, 2011 Taller: Introducción a GPU's y Programación CUDA para HPC PARTE I: Introducción a GPU's y CUDA Friday, October 21, 2011 Preliminares- Computación paralela Computación serial Friday, October 21, 2011 Preliminares - Computación paralela Computación paralela Friday, October 21, 2011 Preliminares - Computadora paralela • Computadora con múltiples procesadores que soporta programación paralela. Hay dos categorias importantes de computadoras paralelas: multicomputadoras y multiprocesadores centralizados. Friday, October 21, 2011 Preliminares - Computadora paralela • Computadora con múltiples procesadores que soporta programación paralela. Hay dos categorias importantes de computadoras paralelas: Memoria Memoria Memoria multicomputadoras y multiprocesadores centralizados. CPU CPU CPU Multicomputadora: es una computadora paralela construida por múltiples computadoras y una red de interconección. RED Friday, October 21, 2011 Preliminares - Computadora paralela • Computadora con múltiples procesadores que soporta programación paralela. Hay dos categorias importantes de computadoras paralelas: multicomputadoras y multiprocesadores centralizados. Memoria Multiprocesador centralizado: (o CPU CPU CPU SMP) es un sistema más integrado donde todos los CPU’s comparten el acceso a una memoria global. SMP: Symmetric Multiprocessors Friday, October 21, 2011 Preliminares - Computadora paralela • Computadora con múltiples procesadores que soporta Memoria Memoria programación paralela. Hay dos categorias importantes de CPU CPU CPU CPU CPU CPU computadoras paralelas: multicomputadoras y multiprocesadores centralizados. Multiprocesador centralizado: (o SMP) es un sistema más integrado donde todos los CPU’s comparten el acceso a uMnae moria Memoria memoria global. CPU CPU CPU CPU CPU CPU SMP: Symmetric Multiprocessors Friday, October 21, 2011 Preliminares - Programación paralela • Es la programación en un lenguaje que permita indicar explicitamente como distintas partes de una computación pueden ejecutarse concurrentemente por diferentes procesadores. Friday, October 21, 2011
Description: