Computación de Propósito General en Unidades de Procesamiento Gráfico. Clase 7-ALN y GPUs GPGPU

Documentos relacionados
Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU

MAGMA. Matrix Algebra on GPU and Multicore Architecture. Ginés David Guerrero Hernández

Linear Algebra PACKage (LAPACK) Avances en la Generación de Bibliotecas de Álgebra Lineal Universidad Politécnica de Valencia Marzo, 2006

Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU. Clase 0 Lanzamiento del Curso. Motivación

I. Métodos directos para resolución de SEL. Se dice que una matriz A admite una factorización LU indirecta A = LU

FLAG/C. Una API para computación matricial sobre GPUs. M. Jesús Zafont Alberto Martín Francisco Igual Enrique S. Quintana-Ortí

CURSO DE METODOS NUMERICOS INDICE

Clase. 1. Resolución de sistemas de ecuaciones lineales: preliminares

Herramientas para el estudio de prestaciones en clusters de computación científica, aplicación en el Laboratorio de Computación Paralela

Cálculo Numérico - CO3211. Ejercicios. d ) Sabiendo que la inversa de la matriz A = es A c d

Análisis Numérico para Ingeniería. Clase Nro. 5

Método de diferencias finitas para ecuaciones diferenciales parciales elípticas. (Parte II)

HPC en simulación y control a gran escala

Resolución de Sistema de Ecuaciones Lineales

LA resolución de ecuaciones matriciales lineales y. Resolución de ecuaciones de Lyapunov dispersas en GPU

DESARROLLO DE SOFTWARE MODULAR, ABIERTO Y COLABORATIVO PARA SIMULACIÓN DE MÁQUINAS Y MECANISMOS

Unidad 5 Problemas de álgebra lineal numérica.

Resolución numérica de sistemas de ecuaciones. Introducción

Al considerar varios polígonos regulares inscritos resulta: perímetro del cuadrado < π. perímetro del 96 gono < π

MÉTODOS NÚMERICOS SÍLABO

Utilización de CLAPACK Para Resolver Sistemas de Ecuaciones Lineales Mediante Paralelismo y Optimización de Memoria

Optimización de Rutinas Multinivel de Álgebra Lineal en Sistemas Multicore

Sesión 7. Cálculo Paralelo en Elmer

Solving Dense Linear Systems on Platforms with Multiple Hardware Accelerators

Métodos Numéricos para Sistemas de Ecuaciones Lineales

Cómputo Paralelo en Redes Locales de Computadoras

La importancia de las factorizaciones matriciales no negativas en la minería de datos y el procesamiento de

Gustavo Rodríguez Gómez. Agosto Dicembre 2011

ALN. Repaso matrices. In. Co. Facultad de Ingeniería Universidad de la República

Solución de sistemas de ecuaciones lineales: Descomposición LU

Multiplicación de Matrices en Sistemas cc-numa Multicore. Autor: Jesús Cámara Moreno Director: Domingo Giménez Cánovas

cuevogenet Paralelización en CUDA de la Dinámica Evolutiva de Redes Génicas Dirigido por: Fernando Díaz del Río José Luis Guisado Lizar

High Performance Computing and Architectures Group

Nociones básicas de computación paralela

Matemáticas para estudiantes de Química

Solución de sistemas lineales

Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU. Clase 1 Introducción

Universidad Central Del Este U C E Facultad de Ciencias y Humanidades Escuela de Pedagogía Mención Ciencias Físicas y Matemática

Métodos de factorización para resolver sistemas de ecuaciones lineales. 22 de agosto, 2012

Métodos Numéricos: Ejercicios resueltos

MAT web:

Primero se triangulariza la matriz: Multiplicando la primera fila por (-1/3) y sumando a la segunda fila: ( ) ( )=( ) ( ) ( )

Álgebra Lineal Ma1010

Computación Científica en Paralelo

Técnicas SuperEscalares en la Paralelización de Bibliotecas de Computación Matricial sobre Procesadores Multinúcleo y GPUs

UNIVERSIDAD AUTÓNOMA DE ENTRE RÍOS

18 Experimentos aleatorios. Sucesos y espacio muestral. Frecuencia y probabilidad de un suceso.

Instituto Tecnológico Autónomo de México. 1. At =..

PROGRAMA DE CURSO. Resultados de Aprendizaje

Procedimiento para encontrar la inversa de una matriz cuadrada (Método de Gauss-Jordan).

Métodos directos para resolver sistemas de ecuaciones lineales

Tema 3 Resolución de Sistemas de Ecuaciones Lineales

CURSO DE POSTGRADO. Matemáticas I. N o m b r e C u r s o. Rodrigo Assar (ICBM) ICBM, Facultad de Medicina, U-Chile U N I D A D A C A D É M I C A

I.- DATOS DE IDENTIFICACIÓN Nombre de la asignatura Métodos Numéricos (465)

Programa de estudios por competencias Seminario Resolución de Problemas de Métodos Matemáticos I

DISEÑO CURRICULAR ALGEBRA LINEAL

INDICE. 92 solución gráfica de ecuaciones lineales 1.5. resolución de sistemas de ecuaciones lineales

Sistemas de Ecuaciones. Lineales III

I.E.S. DE INGENIO Avda. de los Artesanos, INGENIO POC-PC EVALUACIÓN CONTENIDOS MÍNIMOS CURSO CURSO: 1º BACH.

Inversión de Matrices

Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial

Gradiente conjugado. MSc. Miguel Vargas-Félix 07/09/11 1/23

Curso ON LINE Tema 5 LAS MATRICES

Herramientas básicas I

Volumen 3. Número 1. Junio de E ISSN:

Sistemas de Ecuaciones. Lineales I

CORPORACIÓN UNIVERSITARIA REMINGTON

MEFPE - Método de los Elementos Fínitos para Ingeniería

PROGRAMA INSTRUCCIONAL ÁLGEBRA LINEAL

Clase No. 13: Factorización QR MAT 251. Joaquín Peña (CIMAT) Métodos Numéricos (MAT 251) / 16

Matrices 3. Matrices. Verónica Briceño V. agosto 2012

Matemáticas. Si un error simple ha llevado a un problema más sencillo se disminuirá la puntuación.

Rancagua, Agosto 2009

CONTENIDOS MÍNIMOS del ÁREA DE MATEMÁTICAS

EJERCICIOS DE ÁLGEBRA LINEAL TEMA 1 ESPACIOS VECTORIALES

MÉTODOS DIRECTOS PARA LA RESOLUCIÓN DE ECUACIONES ALGEBRAICAS LINEALES

Prólogo... xi Al estudiante... xv Prólogo a la edición en español... xvii

Computación de Propósito General en Unidades de Procesamiento Gráfico GPGPU

Tutoría Completa - Curso de Matemática para 1, 2 y 3 Básico

MÓDULO SE: SISTEMAS DE ECUACIONES

Departamento de Matemáticas, CCIR/ITESM. 9 de febrero de 2011

1. (F, +) es un grupo abeliano, denominado el grupo aditivo del campo.

ESCUELA TÉCNICA SUPERIOR DE NÁUTICA Y MÁQUINAS. Denominación:

TEMA 8.- NORMAS DE MATRICES Y

FACULTAD DE CIENCIAS EXACTAS, INGENIERÍA Y AGRIMENSURA U.N.R.

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES CUAUTITLÁN PLAN DE ESTUDIOS DE LA LICENCIATURA EN INGENIERÍA QUÍMICA

Contenidos mínimos del área de matemáticas 1º ESO

Métodos Numéricos Hoja 1 de 5

Universidad Nacional de Ingeniería Facultad de Ciencias. Física Computacional CC063. Algebra Lineal. Prof: J. Solano 2012-I

Resolución numérica de sistemas de ecuaciones lineales

Las Matemáticas en el Bachillerato

Artículo Revista digital Matemática, Educación e Internet ( Vol 13, No 1. Agosto Febrero 2013.

Nombre del estudiante: Grupo: Hora: Salón:

Para resolver un sistema lineal estan permitidas tres operaciones en las ecuaciones.

MAT022 : CRONOGRAMA SEMESTRE

PROGRAMA INSTRUCCIONAL

Edgar Acuña/ ESMA 6665 Lecc1-2 1 ESTADISTICA COMPUTACIONAL. Capítulo I. Matrices y solución de Ecuaciones lineales

Álgebra Matricial y Optimización Ma130

TEMA 4: Sistemas de ecuaciones lineales II

Transcripción:

Computación de Propósito General en Unidades de Procesamiento Gráfico () P. Ezzatti, M. Pedemontey E. Dufrechou Clase 7 ALN en GPUs 1

Contenido Conceptos básicos de ALN Problemas Tipo de datos y matrices Estándares - bibliotecas ALN densa con GPUs ALN dispersa con GPUs Algunos trabajos en FING Conceptos básicos de ALN 2

Conceptos básicos de ALN Problemas tratados Operaciones con matrices y vectores Multiplicación matriz vector, matriz-matriz Factorización LU, Cholesky, QR Valores y vectores propios Descomposición SVD Conceptos básicos de ALN Tipo de datos (Punto flotante) Simple doble precisión Complejos Tipo de matrices Densas Triangulares De banda Dispersas 3

Conceptos básicos de ALN Métodos de resolución Dos grandes familias: Métodos directos: Llegan a la solución en un número específico de pasos, a menos de errores numéricos consiguen la solución exacta. (fact. LU) Basados en diferentes operaciones básicas. Métodos iterativos: Intentan aproximar la solución mediante una sucesión generada iterativamente. Si el método converge se obtiene una solución aproximada del problema, cuyo error satisface algún criterio prefijado. (Gradiente Conjugado, GC) Basados en la multiplicación matriz-vector. Conceptos básicos de ALN Sobre matrices densas (triangulares, banda): Uso intensivo de estándares (bibliotecas) BLAS, LAPACK Fuerte desarrollo de técnicas de HPC BLAS (multi-hilo), LAPACK, SCALAPACK 4

Conceptos básicos de ALN BLAS Resuelve operaciones Vector-vector Matriz-vector Matriz-Matriz Para distinto tipo de matrices Simple, doble, complejos Densas, triangulares, de banda Desarrollada desde los años 70s Implementada originalmente en FORTRAN Conceptos básicos de ALN LAPACK Ofrece operaciones como: Factorización LU, Cholesky, QR, etc. Implementación de referencia utiliza BLAS para resolver problemas de base. Se dispone de implementaciones multi-corede la biblioteca (MKL) 5

Conceptos básicos de ALN LINPACK Benchmark basado en operaciones de ALN Factorización LU Utilizado para confeccionar el top500 Lista con las 500 computadoras más potentes del mundo Álgebra dispersa: Conceptos básicos de ALN Amplio uso de bibliotecas (MUMPS, SuperLU). Los métodos directos pueden romper la dispersión. Control del problema del fill-in. Resolución de sub-problemas densos. Los métodos iterativos son más sencillos de implementar Se basan en la multiplicación matriz dispersa vector (spmv). En ocasiones no son lo suficiente precisos. 6

Algo de historia de ALN y GPU Trabajos pioneros Algo de historia de ALN y GPU Multiplicación de matrices [2001, Larseny McAllister] Trabajan con números en la precisión disponible en las GPUsde la época, 8 bits. Resolución de sistemas lineales con métodos iterativos [2001, Rumpfy Strzodka] Resolución de sistemas lineales con Jacobipara la resolución de ecuaciones diferenciales mediante el método de los elementos finitos. 7

Algo de historia de ALN y GPU Multiplicación de matrices (extensión al trabajo previo) [2003, Moravansky] Cambio de acceso. [2004, Fatahalian y otros] Evaluan restricciones en las tranferencias. Resolución de sistemas lineales con métodos iterativos [2003, Bolzy otros] Implementan distintos métodos iterativosde resoluciónde sistemaslineales(multigrid, gradienteconjugado). Factorización LU [2005, Galoppo y otros] Implementaciones pioneras. Algo de historia de ALN y GPU Bases para BLAS [2003, Kruger y Westermann] Primerasideas tendientesa implementaciónde BLAS en GPU. Con CUDA Se incluye CUBLAS Implementación en GPU de BLAS. Comienza en simple precisión, luego evoluciona 8

Algo de historia de ALN y GPU Mejoras a CUBLAS [2008, Volkovy Demmel] Importantesmejorasen la operación gemm. Luego incorporado a CUBLAS. [2008, Barrachinay otros] Uso de paddingy estrategias híbridas(cpu+gpu). Precisión mixta Algo de historia de ALN y GPU Estrategias utilizadas en los primeros años de cálculo numérico. 1. Resolver un problema en una precisión. 2. Refinar el resultado en otra precisión. LU = L U = lu(a) SIMPLE O(n 3 ) x = L\(U\b) SIMPLE O(n 2 ) r = b Ax DOBLE O(n 2 ) WHILE r not small enough z = L\(U\r) SIMPLE O(n 2 ) x = x + z DOBLE O(n 1 ) r = b Ax DOBLE O(n 2 ) END 9

Algo de historia de ALN y GPU Precisión mixta (despertares) [2006, Strzodkay Göddeke] Utilización de técnicas de precisión mixta. Diversos trabajos que permitían alcanzar doble precisión. Diversos trabajos que permitían acelerar el uso de doble precisión. Paulatinamente, se ha perdido interés en el tema ALN densa en GPUs 10

ALN densa en GPUs Uno de los tópicos principales para GPU Relacionado con computación gráfica. Muchos problemas necesitan la resolución de problemas de ALN. Trabajos basados en CUBLAS Permite adaptarse a nuevo hardware fácilmente. Aportes en CUBLAS impactan en los desarrollos automáticamente. ALN densa en GPUs Procesamiento de matrices a bloques A A = A 11 21 A A 12 22 L = L 11 21 0 U L22 0 11 U U 12 22 Permite acceso regular, explotar warps, etc!!!! Utilización de padding 11

ALN densa en GPUs Estrategias híbridas CPU+GPU Cada etapa del problema en la mejor arquitectura. Concurrencia Un trozo en cada arquitectura, LYNPACK (TOP500). Utilización de múltiples GPUs Mayor poder de cómputo. Mayor memoria. ALN dispersa en GPUs 12

ALN dispersa en GPUs Mucho menos trabajo que para matrices densas Implementaciones de problemas particulares. Métodos directos (casi no hay trabajos) Aceleración de etapas densas Métodos iterativos Basados en la operación sparsematrix-vector multiplication (SpMV). Problemas con irregularidades!! Algunos trabajos en FING 13

Algunos trabajos en FING Factorización de matrices generales Implementaciones basadas en LAPACK. Trabajo a bloques Estrategias híbridas (CPU+GPU). Algunos trabajos en FING Inversión de Matrices generales Implementaciones basadas en LAPACK. Implementaciones basadas en Gauss-Jordan. Estrategias híbridas. Estrategias concurrentes. * P. Ezzatti, E. Quintana, A. Remón: Using graphics processors to accelerate the computation of the matrix inverse, Journal of Supercomputing, 2011. 14

Algunos trabajos en FING Inversión de Matrices generales Implementaciones basadas en LAPACK. Implementaciones basadas en Gauss-Jordan. Estrategias híbridas. Estrategias concurrentes. Algunos trabajos en FING Estrategia de resolución 15

Algunos trabajos en FING Algunos trabajos en FING Inversión de matrices generales en multiples GPUs Implementaciones basadas en Gauss-Jordan. Diferentes optimizaciones: Estrategias híbridas Concurrentes Multi-bloque Fusión de operaciones * P. Ezzatti, E. Quintana, A. Remón: High Performance Matrix Inversion on a Multi-core Platform with Several GPUs. Euromicro Int. Conf. on Parallel, Distributed and network-based Processing (PDP), 2011. 16

Algunos trabajos en FING Algunos trabajos en FING 17

Inversión de matrices SDP Estrategias tradicionales con Cholesky. Implementaciones basadas en trabajo de [Bientinesi y otros]. Estrategias a bloque, híbridas, concurrentes. Algunos trabajos en FING * P. Benner, P. Ezzatti, E. S. Quintana, A. Remón. Int. Conf. on High Perf. Comp. & Simulation, Workshop on Exploitation of Hardware Accelerators (WEHA) 2011. Algunos trabajos en FING Resolución de sistemas triangulares Función implementada por CuBLAS. Implementación basada en acceso por bloques. Utilizando herramienta de derivación automática de código (FLAME). Aceleración de hasta 6x. * P. Ezzatti; E. S. Quintana, A. Remón: Resolución de sistemas triangulares en GPU. XXXI CILAMCE - IX MECOM, 2010. 18

Algunos trabajos en FING Resolución de sistemas dispersos A. Zinemanas. Métodos directos Métodos multifrontales. Matrices simétricas y DP. Algunos trabajos en FING Sistemas tridiagonales P. Alfaro y P. Igounet Reducción cíclica (y flia) Thomas. Valores de speedupde 3x. Acceso fusionado, memoria compartida, etc. * P. Alfaro, P. Igounet, P. Ezzatti : A study on the implementation of tridiagonal systems solvers using a GPU. WSDP 2011. 19

Algunos trabajos en FING Sistemas penta y hepta diagonales P. Igounety P. Alfaro Método SIP en GPU. Acceso fusionado, memoria compartida Distintas transferencias Valores de speedupde 4x. * P. Igounet, P. Alfaro, M. Pedemonte, P. Ezzatti: A GPU implementation of the SIP method. SCCC 2011. Algunos trabajos en FING Conclusiones Implementación eficiente de diversas operaciones de ALN. Cuanto mayor es la relación cómputos vs trasferencias mayores las ganancias. Posibilidad de acelerar la resolución de diversos problemas de computación científica. 20

Algunos trabajos en FING Líneas abiertas Inversión de otras familias de matrices Simétricas indefinidas, quasi-definidas, etc Extender a múltiples GPUs varios enfoques. Profundizar en el uso de arquitecturas FERMI. 21