Pascal es el nombre en clave de una microarquitectura de GPU desarrollada por Nvidia , como sucesora de la arquitectura Maxwell . La arquitectura se introdujo por primera vez en abril de 2016 con el lanzamiento de la Tesla P100 (GP100) el 5 de abril de 2016, y se utiliza principalmente en la serie GeForce 10 , comenzando con la GeForce GTX 1080 y GTX 1070 (ambas con la GPU GP104), que se lanzaron el 27 de mayo de 2016 y el 10 de junio de 2016, respectivamente. Pascal se fabricó utilizando el proceso FinFET de 16 nm de TSMC , [1] y más tarde el proceso FinFET de 14 nm de Samsung . [2]
La arquitectura lleva el nombre del matemático y físico francés del siglo XVII, Blaise Pascal .
En abril de 2019, Nvidia habilitó una implementación de software de DirectX Raytracing en tarjetas basadas en Pascal a partir de la GTX 1060 de 6 GB, y en las tarjetas de la serie 16 , una característica reservada a la serie RTX basada en Turing hasta ese momento. [3] [4]
Detalles
En marzo de 2014, Nvidia anunció que el sucesor de Maxwell sería la microarquitectura Pascal; se anunció el 6 de mayo de 2016 y se lanzó el 27 de mayo del mismo año. El Tesla P100 (chip GP100) tiene una versión diferente de la arquitectura Pascal en comparación con las GPU GTX (chip GP104). Las unidades de sombreado en GP104 tienen un diseño similar al de Maxwell . [5]
Las mejoras arquitectónicas de la arquitectura GP100 incluyen las siguientes: [6] [7] [8]
En Pascal, un SM (multiprocesador de transmisión por secuencias) consta de entre 64 y 128 núcleos CUDA, dependiendo de si es GP100 o GP104. Maxwell contenía 128 núcleos CUDA por SM; Kepler tenía 192, Fermi 32 y Tesla 8. El SM GP100 está dividido en dos bloques de procesamiento, cada uno con 32 núcleos CUDA de precisión simple, un búfer de instrucciones, un planificador de tramas, 2 unidades de mapeo de texturas y 2 unidades de despacho.
Memoria de alto ancho de banda 2: algunas tarjetas cuentan con 16 GiB HBM2 en cuatro pilas con un ancho de bus total de 4096 bits y un ancho de banda de memoria de 720 GB/s.
Memoria unificada: una arquitectura de memoria donde la CPU y la GPU pueden acceder tanto a la memoria principal del sistema como a la memoria de la tarjeta gráfica con la ayuda de una tecnología llamada "Page Migration Engine".
NVLink : un bus de gran ancho de banda entre la CPU y la GPU, y entre varias GPU. Permite velocidades de transferencia mucho más altas que las que se pueden lograr con PCI Express; se estima que proporciona entre 80 y 200 GB/s. [9] [10]
Las operaciones de punto flotante de 16 bits ( FP16 ) (coloquialmente "media precisión") se pueden ejecutar al doble de velocidad que las operaciones de punto flotante de 32 bits ("precisión simple") [11] y las operaciones de punto flotante de 64 bits (coloquialmente "doble precisión") se ejecutan a la mitad de la velocidad de las operaciones de punto flotante de 32 bits. [12]
Más registros: el doble de cantidad de registros por núcleo CUDA en comparación con Maxwell.
Más memoria compartida.
Sistema de programación de equilibrio de carga dinámico. [13] Esto permite al programador ajustar dinámicamente la cantidad de GPU asignada a múltiples tareas, lo que garantiza que la GPU permanezca saturada con trabajo excepto cuando no haya más trabajo que se pueda distribuir de manera segura. [13] Por lo tanto, Nvidia ha habilitado de manera segura el cómputo asincrónico en el controlador de Pascal. [13]
Prelación a nivel de instrucción y a nivel de subproceso. [14]
Las mejoras arquitectónicas de la arquitectura GP104 incluyen las siguientes: [5]
Capacidad de cómputo CUDA 6.1.
GDDR5X : nuevo estándar de memoria que admite velocidades de datos de 10 Gbit/s, controlador de memoria actualizado. [15]
Proyección múltiple simultánea: generación de múltiples proyecciones de un solo flujo de geometría, a medida que ingresa al motor SMP desde las etapas de sombreado ascendentes. [16]
Compatibilidad con HDCP 2.2 para reproducción y transmisión de contenido protegido por DRM 4K (Maxwell GM200 y GM204 no son compatibles con HDCP 2.2, GM206 es compatible con HDCP 2.2). [17]
Prelación a nivel de instrucción. [14] En las tareas gráficas, el controlador restringe la prelación a nivel de píxel, porque las tareas de píxeles suelen finalizar rápidamente y los costos generales de realizar la prelación a nivel de píxel son menores que la prelación a nivel de instrucción (que es costosa). [14] Las tareas de cómputo obtienen prelación a nivel de subproceso o de instrucción, [14] porque pueden tardar más tiempo en finalizar y no hay garantías de cuándo finaliza una tarea de cómputo. Por lo tanto, el controlador habilita la costosa prelación a nivel de instrucción para estas tareas. [14]
Descripción general
Clúster de procesadores gráficos
Un chip se divide en clústeres de procesadores gráficos (GPC). En el caso de los chips GP104, un GPC comprende 5 SM.
Multiprocesador de transmisión "Pascal"
Un "Multiprocesador de transmisión" es análogo a la Unidad de cómputo de AMD . Un SM comprende 128 ALU de precisión simple ("núcleos CUDA") en chips GP104 y 64 ALU de precisión simple en chips GP100. Si bien todas las versiones de CU constan de 64 procesadores shader (es decir, 4 unidades vectoriales SIMD, cada una de 16 carriles de ancho), Nvidia experimentó con cantidades muy diferentes de núcleos CUDA:
En Fermi , 1 SM combina 32 procesadores de sombreado de precisión simple (FP32)
En Kepler , 1 SM combina 192 procesadores de sombreado de precisión simple (FP32) y 64 unidades de precisión doble (FP64) (en GPU GK110)
En Maxwell , 1 SM combina 128 procesadores de sombreado de precisión simple (FP32)
En Pascal, depende:
En GP100, 1 SM combina 64 procesadores de sombreado de precisión simple (FP32) y también 32 de precisión doble (FP64) que proporcionan una relación de 2:1 de rendimiento de precisión simple a doble. El GP100 utiliza núcleos FP32 más flexibles que pueden procesar un número de precisión simple o dos de media precisión en un vector de dos elementos. [18] Esto tiene como objetivo servir mejor a las tareas de aprendizaje automático .
En GP104, 1 SM combina 128 ALU de precisión simple, 4 ALU de precisión doble (que proporcionan una relación de 32:1) y una ALU de media precisión que contiene un vector de dos flotantes de media precisión que pueden ejecutar la misma instrucción en ambos flotantes, lo que proporciona una relación de 64:1 si se utiliza la misma instrucción en ambos elementos.
GP100: el acelerador de GPU Tesla P100 de Nvidia está orientado a aplicaciones GPGPU como computación de doble precisión FP64 y entrenamiento de aprendizaje profundo que utiliza FP16. Utiliza memoria HBM2 . [20] Quadro GP100 también utiliza la GPU GP100.
GP102: Esta GPU se utiliza en la Titan Xp, [21] Titan X Pascal [22] y la GeForce GTX 1080 Ti. También se utiliza en la Quadro P6000 [23] y la Tesla P40. [24]
GP104: Esta GPU se utiliza en las GeForce GTX 1070, GTX 1070 Ti, GTX 1080 y algunas GTX 1060 de 6 GB. La GTX 1070 tiene 15/20 y la GTX 1070 Ti tiene 19/20 de sus SM habilitados; ambos utilizan memoria GDDR5. La GTX 1080 es un chip completamente desbloqueado y utiliza memoria GDDR5X. Algunas GTX 1060 de 6 GB utilizan GP104 con 10/20 SM habilitados y memoria GDDR5X. [25] También se utiliza en Quadro P5000, Quadro P4000, Quadro P3200 (aplicaciones móviles) y Tesla P4.
GP106: Esta GPU se utiliza en la GeForce GTX 1060 con memoria GDDR5 [26] . [27] [28] También se utiliza en la Quadro P2000.
GP107: Esta GPU se utiliza en las GeForce GTX 1050 y 1050 Ti. También se utiliza en las Quadro P1000, Quadro P600, Quadro P620 y Quadro P400.
GP108: esta GPU se utiliza en la GeForce GT 1010 y la GeForce GT 1030.
Actuación
La potencia de procesamiento teórica de precisión simple de una GPU Pascal en GFLOPS se calcula como 2 × operaciones por instrucción FMA por núcleo CUDA por ciclo × número de núcleos CUDA × velocidad de reloj del núcleo (en GHz).
La potencia de procesamiento teórica de doble precisión de una GPU Pascal es la mitad del rendimiento de precisión simple de Nvidia GP100 y 1/32 de Nvidia GP102, GP104, GP106, GP107 y GP108.
La potencia de procesamiento teórica de media precisión de una GPU Pascal es el doble del rendimiento de precisión simple en GP100 [12] y 1/64 en GP104, GP106, GP107 y GP108. [18]
^ "TSMC fabricará GPU de próxima generación de 7 nm de NVIDIA". Wccftech . 24 de junio de 2018 . Consultado el 6 de julio de 2019 .
^ "Samsung reducirá ópticamente la densidad de NVIDIA "Pascal" a 14 nm" . Consultado el 13 de agosto de 2016 .
^ "Aceleración del ecosistema de trazado de rayos en tiempo real: DXR para GeForce RTX y GeForce GTX". NVIDIA .
^ "El trazado de rayos llega a las GPU Nvidia GTX: aquí te explicamos cómo habilitarlo". 11 de abril de 2019.
^ ab "NVIDIA GeForce GTX 1080" (PDF) . International.download.nvidia.com . Consultado el 15 de septiembre de 2016 .
^ Gupta, Sumit (21 de marzo de 2014). "NVIDIA actualiza la hoja de ruta de la GPU; anuncia Pascal". Blogs.nvidia.com . Consultado el 25 de marzo de 2014 .
^ "Parallel Forall". NVIDIA Developer Zone . Devblogs.nvidia.com. Archivado desde el original el 26 de marzo de 2014 . Consultado el 25 de marzo de 2014 .
^ "NVIDIA Tesla P100" (PDF) . International.download.nvidia.com . Consultado el 15 de septiembre de 2016 .
^ "Dentro de Pascal: la plataforma informática más nueva de NVIDIA". 5 de abril de 2016.
^ Denis Foley (25 de marzo de 2014). "NVLink, Pascal y memoria apilada: alimentando el apetito por los macrodatos". nvidia.com . Consultado el 7 de julio de 2014 .
^ "La arquitectura de GPU Pascal de próxima generación de NVIDIA proporcionará una aceleración 10 veces mayor para aplicaciones de aprendizaje profundo". El blog oficial de NVIDIA . Consultado el 23 de marzo de 2015 .
^ ab Smith, Ryan (5 de abril de 2015). "NVIDIA anuncia el acelerador Tesla P100: potencia Pascal GP100 para HPC". AnandTech . Consultado el 27 de mayo de 2016. Cada uno de esos SM también contiene 32 núcleos CUDA FP64, lo que nos da la tasa de 1/2 para FP64, y una novedad en la arquitectura Pascal es la capacidad de incluir 2 operaciones FP16 dentro de un solo núcleo CUDA FP32 en las circunstancias adecuadas.
^ abc Smith, Ryan (20 de julio de 2016). "Revisión de las NVIDIA GeForce GTX 1080 y GTX 1070 Founders Editions: el puntapié inicial de la generación FinFET". AnandTech . p. 9 . Consultado el 21 de julio de 2016 .
^ abcde Smith, Ryan (20 de julio de 2016). "Revisión de las NVIDIA GeForce GTX 1080 y GTX 1070 Founders Editions: el puntapié inicial de la generación FinFET". AnandTech . p. 10 . Consultado el 21 de julio de 2016 .
^ "Tarjeta gráfica GTX 1080". GeForce . Consultado el 15 de septiembre de 2016 .
^ Carbotte, Kevin (17 de mayo de 2016). "Nvidia GeForce GTX 1080 Simultaneous Multi-Projection & Async Compute". Tomshardware.com . Consultado el 15 de septiembre de 2016 .
^ "Nvidia Pascal HDCP 2.2". Página de hardware de Nvidia . Consultado el 8 de mayo de 2016 .
^ ab Smith, Ryan (20 de julio de 2016). "Revisión de las NVIDIA GeForce GTX 1080 y GTX 1070 Founders Editions: el puntapié inicial de la generación FinFET". AnandTech . p. 5 . Consultado el 21 de julio de 2016 .
^ Smith, Ryan (20 de julio de 2016). "Revisión de las NVIDIA GeForce GTX 1080 y GTX 1070 Founders Editions: el puntapié inicial de la generación FinFET". AnandTech . p. 4 . Consultado el 21 de julio de 2016 .
^ Harris, Mark (5 de abril de 2016). "Inside Pascal: NVIDIA's Newest Computing Platform". Parallel Forall . Nvidia . Consultado el 3 de junio de 2016 .
^ "Tarjeta gráfica NVIDIA TITAN Xp con arquitectura Pascal". NVIDIA .
^ "Tarjeta gráfica NVIDIA TITAN X con Pascal". GeForce . Consultado el 15 de septiembre de 2016 .
^ "Nuevas tarjetas gráficas Quadro basadas en la arquitectura Pascal". NVIDIA . Consultado el 15 de septiembre de 2016 .
^ "Aceleración de cargas de trabajo en centros de datos con GPU". NVIDIA . Consultado el 15 de septiembre de 2016 .
^ Zhiye Liu (22 de octubre de 2018). "Nvidia GeForce GTX 1060 obtiene GDDR5X en su quinto cambio de imagen". Tom's Hardware . Consultado el 2 de febrero de 2024 .
^ "Tarjetas gráficas NVIDIA GeForce serie 10". NVIDIA .
^ "La NVIDIA GeForce GTX 1060 se lanzará el 7 de julio". VideoCardz.com . 29 de junio de 2016 . Consultado el 15 de septiembre de 2016 .
^ "Tarjetas gráficas GTX 1060". GeForce . Consultado el 15 de septiembre de 2016 .
^ Smith, Ryan (12 de noviembre de 2012). "NVIDIA lanza Tesla K20 y K20X: llega por fin la GK110". AnandTech . p. 3 . Consultado el 24 de julio de 2016 .
^ abcdef Nvidia (1 de septiembre de 2015). «CUDA C Programming Guide» . Consultado el 24 de julio de 2016 .
^ abcdefghijklmno Triolet, Damien (24 de mayo de 2016). "¡Nvidia GeForce GTX 1080, la principal GPU de 16 nm en prueba!". Hardware.fr (en francés). pag. 2 . Consultado el 24 de julio de 2016 .
^ ab Smith, Ryan (26 de enero de 2015). "GeForce GTX 970: Corrección de las especificaciones y exploración de la asignación de memoria". AnandTech . p. 1 . Consultado el 24 de julio de 2016 .
^ "Fecha de lanzamiento de NVIDIA Turing". Techradar . 2 de febrero de 2021.