Kepler. 1. Presentación de la arquitectura. Índice de contenidos [25 diapositivas] Kepler, Johannes (1571-1630)

Documentos relacionados
Inside Kepler. I. Presentación de la arquitectura. Índice de contenidos [25 diapositivas] Kepler, Johannes ( )

Descubriendo Kepler. 1. Presentación de la arquitectura. Agradecimientos. Indice de contenidos [46 diapositivas]

Kepler. 1. Presentación de la arquitectura. Contenidos de la charla. Kepler, Johannes ( )

FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS. CNCA Abril 2013

Ejemplos de optimización para Kepler. 1. Balanceo dinámico de la carga. Contenidos de la charla [18 diapositivas]

Modelo de aplicaciones CUDA

Contenidos [62 diapositivas] Málaga, del 15 al 24 de Julio, 2015

Arquitecturas GPU v. 2013

Kepler. Contenidos de la charla. Kepler, Johannes ( ) 1. Presentación de la arquitectura

Arquitectura de aceleradores. Carlos Bederián IFEG CONICET GPGPU Computing Group FaMAF UNC

Intel Tera-Scale Computing Alumno: Roberto Rodriguez Alcala

Programando con memoria unificada. Contenidos [15 diapositivas] Aportaciones de la memoria unificada. I. Descripción

Tema: Historia de los Microprocesadores

Leyes de movimiento. Leyes del movimiento de Newton. Primera ley de Newton o ley de la inercia. Segunda ley de Newton

TEMA 4. Unidades Funcionales del Computador

Leyes de Kepler Enzo De Bernardini Astronomía Sur

La GPU. I. La tarjeta gráfica y su GPU. Indice de contenidos [36 diapositivas] El diagrama de bloques de la tarjeta gráfica

Examen de Física I. Dinámica, Energía, Leyes de Kepler, L.G.U. Soluciones

Catedrático: Alumna:

Intel XeonPhi Workshop

Organización de Computadoras. Turno Recursantes Clase 8

TEMA 4: SISTEMAS MULTIPROCESADOR (MEMORIA COMPARTIDA) BLOQUE 2 Arquitecturas de computación paralela

Arquitectura basica de un computador

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

ITT-327-T Microprocesadores

... partes internas del computador!...

SEMINARIO PRÁCTICO Cómo elegir el sistema de cálculo científico ideal para mi investigación. Raúl Díaz

nforce Serie 600i Características y beneficios de MCP NVIDIA nforce 680i SLI

Figura 1.4. Elementos que integran a la Tecnología de Información.

SISTEMAS DE MULTIPROCESAMIENTO

Capitulo V Administración de memoria


Int. a las ciencias computacionales

MÁQUINA PARA ENSAYOS A TRACCIÓN MODELO: MT-60-SDC

Nivel Tercer año Medio Diferenciado. Tema: Gravitación Universal. Repaso.

INTERACCIÓN GRAVITATORIA

SurfCop. Libro blanco técnico

GPU IMPLEMENTATIONS OF SCHEDULING HEURISTICS FOR HETEROGENEOUS COMPUTING ENVIRONMENTS

Manual IOCard USB DimControl. Fecha:19/08/15 Rev.:1.1

COMPUTADORES MULTINUCLEO. Stallings W. Computer Organization and Architecture 8ed

Examen de Arquitectura de Computadores

COMPONENTES INTERNOS DE UN ROUTER CISCO 1900 JESUS DAVID SIERRA ARANGO INSTRUCTOR JUAN DAVID LONDOÑO MARTINEZ

GANETEC SOLUTIONS HPC Banca / Aseguradoras

La revolución del contenido multimedia de pies a cabeza.

UNIVERSIDAD DE ORIENTE FACULTAD DE ICIENCIAS ECONOMICAS LAS REDES I. Licda. Consuelo Eleticia Sandoval

TRABAJO Y ENERGÍA. W = F d [Joule] W = F d cos α. Donde F y d son los módulos de la fuerza y el desplazamiento, y α es el ángulo que forman F y d.

2. KEPLER: LAS LEYES PLANETARIAS. Una herencia maravillosa

Oferta de Trabajos en Grupo. Arquitectura y Tecnología de Computadores

1. Aplicación de la conmutación de circuitos y la conmutación de paquetes. 1.1 Sistema de señalización número 7 (SS7).

Laboratorio de Herramientas Computacionales

Cada computadora conectada a la red suele recibir el nombre de estación de trabajo o nodo de la red.

MineSight y la Tecnología Informática de última Generación

EL MOVIMIENTO DE LOS CUERPOS CELESTES FISICA TERCERO MEDIO PROFESORA: GRACIELA LOBOS

Estado actual de los procesadores

Se encarga de realizar las funciones básicas de manejo y configuración del ordenador. La BIOS tiene más tareas fundamentales: Chequearse a sí misma.

Servidores blade. AGUILERA FERNANDO [Escribir el nombre de la compañía] 14/04/2011

PROBLEMAS DE FUNDAMENTOS DE TECNOLOGÍA DE COMPUTADORES T5. MEMORIAS

PARTES DE UNA COMPUTADOR

Nuevas tendencias: Virtualización de computadores / servidores

Resumen Ejecutivo. Sistemas de Gestión, Conversión y Difusión de Contenidos Audiovisuales 3D para Pantallas Autoestereoscópicas

Procesadores Gráficos: OpenCL para programadores de CUDA

ANÁLISIS DE FORMAS DE GESTIÓN EMPRESARIAL PARA EL TRABAJADOR AUTÓNOMO

1.2 Análisis de los Componentes. Arquitectura de Computadoras Rafael Vazquez Perez

Arquitecturas basadas en computación gráfica (GPU)

UNIVERSIDAD TECNOLOGICA ECOTEC DIEGO BARRAGAN MATERIA: Sistemas Operativos 1 ENSAYO: Servidores BLADE

Conclusiones. Particionado Consciente de los Datos

picojava TM Características

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

I NTRODUCCIÓN 1. ORDENADOR E INFORMÁTICA

CPU. Unidad central de procesamiento

Memoria La memoria es la parte del ordenador en la que se guardan o almacenan los programas (las instrucciones y los datos).

Se puede obtener energía de diferentes fuentes. Hay distintos tipos de energía. La energía causa cambios en los cuerpos que la reciben.

Talleres CLCAR. CUDA para principiantes. Título. Mónica Liliana Hernández Ariza, SC3UIS-CRC NVIDIA Research Center

Procesamiento de imágenes en GPUs mediante CUDA. I. Introducción. Indice de contenidos

Sistemas Operativos. Curso 2016 Procesos

PLATAFORMAS SALVAESCALERAS INCLINADAS SUPRA CURVA

Tema 3. Buses. Arquitectura de computadores. Plan 96. Curso Jerarquía de buses

ACTIVACIÓN DE SERVICIOS BANCARIOS A TUC PARA ALUMNOS

MÓDULO OPTATIVO e Bussines

USB (Universal Serial Bus)

El Computador. Software


UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

SIGAN 1.0 SISTEMA DE INFORMACIÓN DE GESTIÓN ADMINISTRATIVA DE NÓMINA

Movimiento de los Planetas

Las leyes de Kepler y la ley de la Gravitación Universal

ESQUEMAS DE SISTEMAS VOIP CON ALTA DISPONIBILIDAD Y ALTO RENDIMIENTO

PUERTOS DE COMUNICACIÓN EXTERNOS TIPO VELOCIDAD DESCRIPCION GRAFICO

BUSES GRUPO 8 Miguel París Dehesa Ricardo Sánchez Arroyo

cpbackup le protege frente a cualquier eventualidad: virus, averías de hardware, incendios, desastres naturales...

CAPITULO 3: SISTEMAS ADICIONALES PARA EL CENTRO DE LLAMADAS DE EMERGENCIA

Tutorial CUDA Univ. de Santiago. 6 y 7 de Agosto, 2013

Planificación de Procesos. Módulo 5. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco

Necesidad, Ámbito y Aéreas de Aplicación: Clientes Potenciales

AUTORES: OBREGON CARLA ROMERO MARIA MARACAIBO FEBRERO 2012

Heterogénea y Jerárquica

Conceptos básicos de Ingeniería de Software

Sistemas operativos. Tema 9: Gestión n de E/S

MICROPROCESADORES. Conrado Perea

Arquitecturas de computadoras

Transcripción:

Índice de contenidos [25 diapositivas] Manuel Ujaldón Nvidia CUDA Fellow Dpto. Arquitectura de Computadores Universidad de Málaga 1. Presentación de la arquitectura [3] 2. Los cores y su organización [7] 3. La memoria y el transporte de datos [4] 4. Programabilidad: Nuevas prestaciones [11] 2 1. Presentación de la arquitectura 3, Johannes (1571-1630) Autor de las leyes del movimiento planetario. Primera ley: Las órbitas de los planetas son planas. El sol está en el plano de la órbita. La trayectoria del planeta respecto del sol es una elipse en la que el sol ocupa uno de los fotos. Segunda ley: El radio vector que une al sol y el planeta barre áreas iguales en tiempos iguales. Un planeta se mueve más rápidamente en su perihelio que en su afelio, y mientras más excéntrica sea su órbita, mayor será la diferencia de velocidad entre sus extremos. Tercera ley: Los cuadrados de los períodos de revolución en torno al sol son proporcionales a los cubos de los semiejes mayores de las órbitas. La velocidad media con que un planeta recorre su órbita disminuye a medida que el planeta está más lejos del sol. La influencia que el sol ejerce sobre los planetas disminuye con la distancia. 4

Nuestra también tiene 3 leyes Resumen de sus rasgos más sobresalientes Fabricación: 7100 Mt. integrados a 28 nm. por TSMC. Arquitectura: Entre 7 y 15 multiprocesadores SMX, dotados de 192 cores cada uno. El número de multiprocesadores depende de la versión [GKxxx]. Consumo Aritmética: Más de 1 TeraFLOP en punto flotante de doble precisión (formato IEEE-754 de 64 bits). Rendimiento Los valores concretos dependen de la frecuencia de reloj de cada modelo (normalmente, más en las GeForce y menos en las Tesla). Con sólo 10 racks de servidores, podemos alcanzar 1 PetaFLOP. Programabilidad Diseño: Paralelismo dinámico. Planificación de hilos. 5 6 Un breve recordatorio de CUDA GPU 2. Los cores y su organización Hilo Multiprocesador N Multiprocesador 2 Bloque de hilos Multiprocesador 1 Memoria compartida Registros Registros Procesador 1 Procesador 2 Registros Procesador M Unidad de Control SIMD Caché para constantes Caché para texturas Memoria global 7 Memoria integrada en la GPU Memoria externa a la GPU (pero dentro de la tarjeta gráfica) Malla 0 (grid) Malla 1 (grid) 8

... y de cómo va escalando la arquitectura Ubicación de cada modelo en el mercado: Marco temporal, gama y aplicaciones Arquitectura G80 GT200 GF100 GF104 GK104 GK110 Marco temporal 2006-07 2008-09 2010 2011 2012 2013 CUDA Compute Capability (CCC) 1.0 1.2 2.0 2.1 3.0 3.5 N (multiprocs.) 16 30 16 7 8 15 M (cores/multip.) 8 8 32 48 192 192 Número de cores 128 240 512 336 1536 2880 9 10 Su precursora GF100 vs. GF104! GF100: Emite 2 instrs. a la vez, selecciona entre 6 cauces de ejec.! GF104: Emite 4 instrs. a la vez, selecciona entre 7 cauces de ejec. 11 12

Del multiprocesador SM de GF100 al multiprocesador SMX de GK110 GK110: Disposición física de las UFs 13 14 Mejoras en la memoria y el transporte de datos 3. La memoria y el transporte de datos Memoria integrada en cada SMX. Respecto a los multiprocesadores SM de, kepler duplica: Tamaño y ancho de banda del banco registros. Ancho de banda de la memoria compartida. Tamaño y ancho de banda de la memoria caché L1. Memoria interna (caché L2): 1.5 Mbytes. Memoria externa (DRAM): GDDR5 y anchura de 384 bits (frecuencia y tamaño dependerán de la tarjeta gráfica). Interfaz con el host: Versión 3.0 de PCI-express (el a. banda dependerá de la placa base). Diálogos más directos entre la memoria de vídeo de varias GPUs. 15 16

Diferencias en la jerarquía de memoria: vs. La jerarquía de memoria en cifras 17 Generación de GPU Modelo hardware CUDA Compute Capability (CCC) Tope de registros de 32 bits / hilo Regs. de 32 bits / Multiprocesador Mem. compartida / Multiprocesador Caché L1 / Multiprocesador Caché L2 / GPU Todos los modelos de y incorporan: Corrección de errores ECC en DRAM. GF100 GF104 GK104 GK110 Limitación 2.0 2.1 3.0 3.5 Anchura de 64 bits en el bus de direcciones. Impacto 63 63 63 255 SW. Working set 32 K 32 K 64 K 64 K HW. Working set 16-48KB 16-48KB 16-32-48KB 16-32-48 KB HW. Tile size 48-16KB 48-16KB 48-32-16KB 48-32-16 KB Anchura de 64 bits en el bus de datos por cada controlador (todos presentan 6 controladores para 384 bits, salvo GF104 que tiene 4). HW. 768 KB. 768 KB. 1536 KB. 1536 KB. HW. Velocidad de acceso Velocidad de acceso 18 GPUDirect ahora soporta RDMA [Remote Direct Memory Access] Esto permite transferencias directas entre GPUs y dispositivos de red, y degrada menos el extraordinario ancho de banda de la memoria de vídeo GDDR5. 4. Programabilidad: Nuevas prestaciones 19 20

Limitadores del paralelismo a gran escala vs. : Computación a gran escala, paralelismo dinámico y planificación de hilos Generación de GPU Generación de GPU Modelo hardware GF100 GF104 GK104 GK110 Modelo hardware GF100 GF104 GK104 GK110 Limitación Impacto CUDA Compute Capability (CCC) 2.0 2.1 3.0 3.5 Compute Capability (CCC) 2.0 2.1 3.0 3.5 Número de hilos / warp (tamaño del warp) 32 32 32 32 Máxima dimensión X de la malla 2^16-1 2^16-1 2^32-1 2^32-1 Software Tamaño del problema Máximo número de warps / Multiprocesador Máximo número de bloques / Multiprocesador 48 48 64 64 8 8 16 16 Paralelismo dinámico No No No Sí Hardware Estructura del problema Máximo número de hilos / Bloque 1024 1024 1024 1024 Planificación de mallas (Hyper-Q) No No No Sí Hardware Planificación de hilos Máximo número de hilos / Multiprocesador 1536 1536 2048 2048 21 22 Mejorando la programabilidad Qué es el paralelismo dinámico? Llamadas a librerías desde los kernels La habilidad para lanzar nuevos procesos (mallas de bloques de hilos) desde la GPU de forma: Simplificar la división CPU/GPU Programabilidad Dinámica. Simultánea. Desdoble de colas para ocupar más y mejor la GPU Balanceo dinámico de la carga Ocupación Paralelismo dinámico Independiente. CPU GPU CPU GPU Ejecución dependiente de los datos Ejecución : Sólo la CPU puede generar trabajo en GPU. : La GPU puede generar trabajo por sí sola. Algoritmos paralelos recursivos 23 24

Así se hacían las cosas hasta ahora: La GPU era un mero esclavo del host o CPU Gran ancho de banda en las comunicaciones: Externas: Superior a 10 GB/s (PCI-express 3). Internas: Superior a 100 GB/s (memoria de vídeo GDDR5 y anchura de bus en torno a 384 bits, que es como un séxtuple canal en CPU). Y así se pueden hacer a partir de ahora: Las GPUs lanzan sus propios kernels CPU GPU CPU GPU Función Lib Lib Función Función Init Alloc GPU CPU Operación 1 Operación 2 Operación 3 25 La GPU como co-procesador GPU autónoma: Paralelismo dinámico 26 Paralelismo dependiente del volumen de datos o de la "calidad computacional" de cada región Generación dinámica de la carga Facilita la computación en GPU. Amplía el ámbito de las aplicaciones en que puede ser útil. La potencia computacional se asocia a las regiones según su interés CUDA hasta 2012 CUDA sobre 27 28

% utilización de la GPU % utilización de la GPU Hyper-Q Planificación de kernels con Hyper-Q En, diversos procesos de CPU ya podían enviar sus mallas de bloques de hilos sobre una misma GPU, pero un kernel no podía comenzar hasta que no acabase el anterior. En, pueden ejecutarse hasta 32 kernels procedentes de varios procesos de CPU de forma simultánea, lo que incrementa el porcentaje de ocupación temporal de la GPU. Veámoslo con un sencillo ejemplo... 29 30 Con Hyper-Q, una malla no ocupa toda la GPU, sino los multiprocesadores necesarios Sin Hyper-Q: Multiproceso por división temporal 100 A B C D E 50 0 A B C D E F Tiempo Con Hyper-Q: Multiproceso simultáneo 100 50 C B E A D C D C F B F F 0 F E A B A E Tiempo ganado...mapeados sobre GPU 31 Procesos en CPU... 32 D 0