Download Innovaciones y futuro de la GPU Contenidos de la charla [30
Document related concepts
no text concepts found
Transcript
Innovaciones y futuro de la GPU Curso de Verano de la UMA “Programación de GPUs con CUDA” Contenidos de la charla [30 diapositivas] Málaga, del 15 al 24 de Julio, 2015 1. 2. 3. 4. 5. 6. 7. Proyectos con Volta [3] El nuevo hardware [7] Un desarrollo prometedor de Stacked DRAM: HMC [7] Mejoras del HMC 1.0 respecto a la DRAM actual [5] HBM (High Bandwidth Memory) [1] Impacto sobre las GPUs mediante el modelo roofline [3] Conclusiones y referencias [3] Manuel Ujaldón Profesor Titular @ Universidad de Málaga Conjoint Senior Lecturer @ Univ. de Newcastle (Australia) CUDA Fellow @ Nvidia 2 Estados Unidos construirá dos supercomputadores insignia SUMMIT 150-300 PFLOPS de rendimiento pico SIERRA > 100 PFLOPS PFLOPS de rendimiento pico CPU: IBM POWER9 + GPU: NVIDIA Volta Interconexión de alta velocidad NVLink >40 TFLOPS/Nodo >3,400 Nodos 2017 I. Proyectos con Volta Paso adelante esencial en la ruta hacia Exascale 4 Sólo 4 nodos de Summit entrarían en el Top500 de los supercomputadores Consumo similar a Titan 5-10x más rápido 5 veces más pequeño Sistemas acelerados en ruta hacia Exascale Rendimiento pico comparado con el supercomputador Jaguar La potencia de Summit 150 PF = 3M Laptops Un portátil por cada hogar andaluz Rendimiento pico de los supercomputadores: 2009-2018 450x SUPERCOMPUTADOR EXASCALE 338x n ció ec oy Pr SUMMIT 225x 113x TITAN JAGUAR 1x 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 * Proyección basada en los 3 supercomputadores 5 6 II. El nuevo hardware GFLOPS en doble precisión por cada vatio consumido Hoja de ruta de las GPUs de Nvidia [GTC’14] 24 22 Pascal 20 Memoria 3D NVLink 18 16 14 Maxwell 12 Memoria unificada DX12 10 8 Kepler Paralelismo dinámico 6 4 2 Tesla Fermi FP64 CUDA 2008 2010 2012 2014 2016 8 La tarjeta gráfica de 2014: GPU Kepler con memoria de vídeo GDDR5 La tarjeta gráfica de 2016/17: GPU Pascal con memoria Stacked (3D) DRAM 9 Nvidia ya ha fabricado un prototipo de Pascal 10 Pascal: Multiprocesadores SXM 2.0 140 . mm 78 . m m SMX 2.0*: 3 veces mejores prestaciones en densidad de circuitos 11 (* Nombre provisional para márketing). 12 Desarrollos comerciales: Prototipos de Micron (arriba) y productos de Viking (abajo) Aspectos preliminares Nuestro estudio 3D no está relacionado con los transistores tri-gate de Intel (aunque ambos son compatibles). Nuestros chips 3D son también compatibles con las tecnologías 2D existentes (no sacrificamos nada de lo ya logrado en otras memorias). Nos centramos en el procesador, y sobre todo, la memoria (pero la fabricación 3D puede aplicarse a CPU-GPU, SRAMDRAM, ASIC, DSP, ..., ¡casi a cualquier cosa!). El disipador de calor permanece en los niveles externos (los internos serán probablemente ocupados por las celdas de memoria, por una vez la tecnología favorece a SDRAMDRAM). 13 14 Novedades de Nvidia en el GTC’14 Integración chip-en-oblea 3D. Multiplicidad en ancho de banda. Capacidad 2.5x. Eficiencia energética 4x. III. Un desarrollo prometedor de 3D DRAM: HMC 15 Miembros desarrolladores del HMCC (a fecha Julio de 2013) Hybrid Memory Cube Consortium (HMCC) Logros y objetivos del HMCC Fecha Primeros artículos publicados sobre Stacked DRAM (basados en proyectos de investigación) 2003-2006 Primer desarrollo comercial de la tecnología, a cargo de Tezzaron Semiconductors Enero de 2005 Micron Technologies y Samsung Electronics lanzan el HMCC Octubre de 2011 Nvidia adopta Stacked DRAM para su GPU Pascal Marzo de 2013 Disponible la especificación HMC 1.0 Primeras muestras de producción basadas en el estándar Configuración 2.5 disponible Abril de 2013 Mediados de 2014 Fundadores del consorcio Finales de 2014 17 Adopción por un amplio número de compañías del sector 18 El Hybrid Memory Cube a grandes rasgos La iniciativa HMC se orientó inicialmente a HPC y redes, pero también tiene su utilidad para tecnología móvil y como alternativa a DDR. HMC se encuentra ligada a las CPUs, GPUs y ASICs en configuraciones punto a punto, donde el rendimiento de HMC ofrece el ancho de banda de la memoria óptica. Aproximación revolucionaria para flanquear el “Memory Wall” La hoja de ruta de la DRAM tiene limitaciones en ancho de banda y eficiencia energética. ► Micron introduce una nueva clase de memoria: Hybrid Memory Cube. ► Combinación peculiar de DRAMs sobre lógica adicional. ► Aspectos clave ► ► ► Rendimiento sin precedentes Controlador de lógica diseñado por Micron. Enlace de alta velocidad con la CPU. Conexión a DRAM “Through Silicon Via” masivamente paralela. ► ► ► Prototipos finalizados en silicio HOY 19 Hasta 15 veces superior en ancho de banda a un módulo DDR3 [pero sólo 2x vs. GDDR5 unidireccionalmente]. Consumo energético por bit inferior en un 70% a las tecnologías actuales[medido en número de señales activas, el ahorro energético sale del 50%]. Ocupa un 90% menos de espacio que los módulos RDIMM actuales [se ahorra hasta el 95%, y midiendo el área de los módulos, superior al de los zócalos]. Eminentemente orientados a HPC y redes, aunque eventualmente pueden dirigirse productos a la computación doméstica 20 La integración en silicio ¿Cómo revierte todo esto en un chip DRAM? Duplicando su velocidad (*), con 3 responsables básicos: Las celdas de DRAM se organizan en torres gemelas (vaults), que suscriben el entrelazado matricial de los chips de memoria DRAM coetánea. El controlador DRAM se sitúa en la capa inferior, y las matrices de celdas en las capas superiores. Controlador y datos se conectan con vías TSV (through-silicon vias) verticales, con surcos esculpidos en silicio de entre 4 y 50 micras (según el fabricante), y cuya latencia vertical es de sólo 12 picosg. para recorrer la altura de 20 capas. Las conexiones más cortas entre el controlador de memoria y las matrices de celdas DRAM mejora un tercio la velocidad. La expansión del bus hasta los 512 bits gracias a la mayor densidad de las conexiones revierte en otro tercio de mejora. La menor latencia gracias a las conexiones TSV más rápidas y los mayores entrelazados en una geometría 3D mejoran el otro tercio. Chips DRAM (celdas) 3D DRAM (celdas) Respuesta Menor latencia Controlador de memoria Envío de dirección Recepción de datos Controlador de memoria 21 Envío de dirección Recepción de datos Mayor ancho de banda (*) Estimaciones aproximadas, basadas en simulaciones de G. Loh [ISCA'08] que demostraron mejoras de 2.17x. Integración junto al procesador en estructuras 3D (HMC 1.0) Paso 5: Se incorporan los buses que conectan el chip de memoria 3D con el procesador. Controlador del interfaz Controlador del interfaz Red de interconexión Controlador del interfaz Controlador del interfaz Los chips DRAM dedican el 74% del área de silicio a las matrices de celdas. DRAM7 DRAM6 DRAM5 DRAM4 DRAM3 DRAM2 DRAM1 DRAM0 Lógica de control Control de la memoria Tecnología 3D para la memoria DRAM Lógica de base Paso 2: Situamos la lógica común en la base Control de torre Paso 3: Apilamos las capas DRAM Control de torre Paso 4: Trazamos las TSVs Control de torre Control de torre Paso 1: Particionamos la matriz de celdas en 16 (futuras torres) Enlaces al procesador, que puede ser otro chip 3D, pero más heterogéneo: - Base: CPU y GPU. - Capas: Caché (SRAM). Un multi-core usa >50% del área en SRAM. Y sus transistores conmutan más lentos a voltajes más bajos. Las cachés se entralazarán y apilarán siguiendo a la DRAM. Tecnología 3D para el procesador SRAM7 SRAM6 SRAM5 SRAM4 SRAM3 SRAM2 SRAM1 SRAM0 CPU+GPU 23 IV. Mejoras del HMC 1.0 respecto a la DRAM actual 22 HMC soporta stacked DRAM en dos configuraciones diferentes: Cercana y lejana Memoria cercana: Memoria cercana Memoria lejana: Todos los enlaces son directos entre el procesador y la capa de lógica HMC de la base. Maximiza el ancho de banda por cada GB. de capacidad. Orientado a sistemas como: Servidores y HPC. Plataformas híbridas CPU/GPU. Gráficos profesionales. Redes. Equipos de testeo. 25 Una comparativa en ancho de banda con las tecnologías existentes en la actualidad Memoria lejana Algunos enlaces conectan al host, otros a módulos HMCs hermanos. Escalable para cumplir con los requerimientos del sistema. Se puede fabricar en módulos (a insertar en zócalos como DDR) o en chips de soldadura directa (como la memoria de vídeo). Interfaces futuros considerados: Eléctricos de alta velocidad (SERDES). Ópticos. Cualquiera adecuado para otras tareas. 26 En un PC con memoria de cuádruple canal (256 bits): [2013] Una CPU con DDR3 a 4 GHz (2x 2000 MHz): 128 Gbytes/s. [2014] Una CPU con HMC 1.0 (primera generación): 320 Gbytes/s. [2015] Una CPU con HMC 2.0 (segunda generación): 448 Gbytes/s. En una tarjeta gráfica con un bus de 384 bits: [2013] Una GPU con GDDR5 a 7 GHz (2x 3500 MHz): 336 Gbytes/s. [2014] Una GPU con 12 chips de 32 bits integrados con near-mem. HMC 1.0 llegaría a 480 Gbytes/s. (6 canales HMC 1.0 de 80 GB/s.). [2015] Una GPU con HMC 2.0 (112 GB/s.) lograría 672 Gbytes/s., lo que duplica el ancho de banda frente a la tecnología GDDR5 más avanzada de finales de 2013. 27 (*) Tomando las estimaciones de ancho de banda dadas por el HMCC 1.0 y 2.0 (20 y 28 GB/s., respectivamente, por cada enlace de 16 bits en cada sentido de la transmisión). Nvidia ya anunció en GTC'13 anchos de banda de 1 TB/s. para Pascal. 28 Lo que cuesta a cada tecnología alcanzar 640 GB/s. Circuitería necesaria DDR3L-1600 DDR4-3200 Stacked DRAM HMC 1.0 Ancho de banda unidirecc. (GB/s.) 12.8 por módulo 25.6 por módulo 20 por enlace de 16 bits Items necesarios para 640 GB/s. Actividad eléctrica 50 módulos 25 módulos 32 enlaces (8 chips 3D) DDR3L-1600 DDR4-3200 Stacked DRAM HMC 1.0 Líneas eléctricas activas necesarias 143 por módulo 148 por módulo Número total de líneas activas Consumo energético Vatios (W.) Consumo total para 640 GB/s. Espacio ocupado en placa base Área del módulo (ancho x alto) Area total ocupada para 640 GB/s. 270 por chip 7150 3700 2160 (ahorro el 70%) DDR3L-1600 DDR4-3200 Stacked DRAM HMC 1.0 6.2 por módulo 8.4 por módulo 5 por enlace 310 W. 210 W. 160 W. (ahorro el 50%) DDR3L-1600 DDR4-3200 2 165 mm. x 10 mm. = 1650 mm 825 cm2 412.5 cm2 Stacked DRAM HMC 1.0 V. High Bandwidth Memory (HBM) 1089 mm2 por chip 43.5 cm2 (ahorro 95%) 29 HBM (High Bandwidth Memory) versus DDR3 and GDDR5 HBM1 de 4 capas HBM2 de 4 capas DDR3 GDDR5 Pines de datos 8 por chip 32 por chip Prebúsqueda (por cada pin) 8 8 2 2 8 bytes 32 bytes 32 bytes 64 bytes 1.2 GB/s (1.2 Gbps/pin) 28 GB/s (7 Gbps/pin) 128 GB/s (1 Gbps/pin) 256 GB/s (2 Gbps/pin) 1.2v. 1.2v. Granularidad de acceso Ancho de banda máximo Voltaje 1.5v., 1.35v. 1.6v., 1.5v., 1.35v. 1024 (128 bytes) 1024 (128 bytes) VI. Impacto sobre las GPUs 31 217,6 (DP) 0,235 AMD Souther Islands Radeon HD7970 288 1010 (DP) 0,285 Intel Sandy Bridge Xeon E5-2690 51,2 243,2 (DP) 0,211 Intel MIC Xeon Phi 300 1024 (DP) 0,292 Fermi GF110 Tesla M2090 (16 SMs) 177 665 (DP) 1331 (SP) 0,266 0,133 Kepler GK110 Tesla K20X (14 SMXs) 250 1310 (DP) 3950 (SP) 0,190 0,063 Pascal GPU con Stacked 3D DRAM 1024 4000 (DP) 12000 (SP) 0,256 0,085 Nvidia Nvidia El modelo Roofline: Análisis de códigos. Hardware vs. Software Tesla K20X: 1310 GFLOPS en doble precisión 2048 1024 512 256 128 64 32 16 8 1/16 2x z MH 00 26 1/8 GD 1/4 5 DR @ 4 38 1/2 bit 1 C EC s( 2 f) of 8 4 16 32 64 128 256 512 1024 33 Códigos saturados en memoria 16384 (memory bound kernels) 8192 La gráfica sitúa a Xeon Phi 225 un 30% más lenta que K20X, pero en nuestras ejecuciones, K20X is: 50% más rápida en DP. 70% más rápida en SP. Códigos saturados en computación (compute bound kernels) Pascal 4096 2048 1024 512 256 S ed ck ta : AM DR 1 TB /s Kepler Xeon Phi Radeon Fermi . Xeon 128 64 32 16 8 1/16 2048 FLOP/byte (intensidad operacional) = GFLOP/s / GB/s escala log/log 32768 1/8 1/4 1/2 1 2 Opteron MxM (DGEMM en BLAS) 59,7 Opteron 6284 Zona de equilibrio Byte/ FLOP Bulldozer Nvidia 4096 GFLOP/s. AMD 16384 8192 GB/s. FFT 3D Modelo Stencil 32768 Microarquit. SpMxV Marca GFLOP/s (rendimiento en doble precisión) GFLOP/s (rendimiento en doble precisión) Plataformas a comparar 4 8 16 32 Procesador GB/s. GFLOP/s. B/FLOP Opteron 60 217 (DP) 0,235 Radeon 288 1010 (DP) 0,285 51 243 (DP) 0,211 Xeon Phi 300 1024 (DP) 0,292 Fermi 177 665 (DP) 1331 (SP) 0,266 0,133 Kepler 250 1310 (DP) 3950 (SP) 0,190 0,063 4000 (DP) 1024 12000 (SP) 0,256 0,085 Xeon 64 128 FLOP/byte (intensidad operacional) 256 Pascal A pesar de todos los esfuerzos de programación, el 70% de los códigos científicos siguen siendo memory-bound (18 de 31 en benchmark Parboil). 32768 16384 8192 Pascal 4096 2048 Kepler 1024 512 64 32 16 8 1/16 1/8 1/4 1/2 1 2 4 8 16 FMM M2L P2P FMM M2L (Esférico) 128 FMM M2L (Cartesiano) 256 Stencil GFLOP/s (rendimiento en doble precisión) El modelo Roofline: Evolución del software. Caso estudio: FMM (Fast Multipole Method) 32 64 128 FLOP/byte (intensidad operacional) VII. Conclusiones y bibliografía 256 35 34 Conclusiones Para más información La mayoría de códigos acelerados en GPU tienen su limitador de rendimiento en el acceso a memoria y han evolucionado protegiéndose frente a ella. Aparece la integración 3D que favorece sobre todo a la memoria, permitiéndole: El consorcio Hybrid Memory Cube: http://www.hybridmemorycube.org (especificación 1.0 disponible). Un completo índice de empresas ligadas a la memoria 3D (productos, materiales, equipos, investigación, etc): http://www.tezzaron.com/technology/3D_IC_Summary.html Reducir la latencia de su estructura de celdas, que llevaba dos décadas estancada. Mejorar la saga DDR#, aumentando: Capacidad (3D), comunicaciones (TSVs) y entrelazado (torres). Las especificaciones del módulo de memoria 3D DRAM de Viking Technology, ya disponible comercialmente: http://www.vikingtechnology.com/uploads/dram_stacking_technology.pdf El modelo Roofline, una delicia de artículo: La próxima generación de chips 3D será más heterogénea, para migrar hacia el SoC (System-on-Chip) integrando ya juntos todos los protagonistas: CPU, GPU, SRAM y DRAM. S. Williams, A. Waterman, D. Patterson. "Roofline: An Insightful Visual Performance Model for Multicore Architectures". Communications of the ACM, Abril, 2009. 37 Agradecimientos 38 Muchas gracias por vuestra atención A los ingenieros de Nvidia, por compartir ideas, material, diagramas, presentaciones. Y a la firma, por su financiación. A Lorena Barba (CUDA Fellow), por su gran aportación al modelo Roofline y su aplicación al algoritmo FMM. A Scott Stevens y Susan Platt (Micron) por el acceso a material técnico del HMCC, incorporado a esta presentación bajo su explícito permiso. Siempre a vuestra disposición en el Dpto. de Arquitectura de Computadores de la Universidad de Málaga: e-mail: ujaldon@uma.es Teléfono: +34 952 13 28 24 Página Web: http://manuel.ujaldon.es 39 40