Supercomputadora
Una supercomputadora es una computadora con un alto nivel de rendimiento en comparación con una computadora de propósito general. El rendimiento de una supercomputadora se mide comúnmente en operaciones de punto flotante por segundo (FLOPS) en lugar de millones de instrucciones por segundo (MIPS). Desde 2017, existen superordenadores que pueden realizar más de 1017 FLOPS (cien mil billones de FLOPS, 100 petaFLOPS o 100 PFLOPS). A modo de comparación, una computadora de escritorio tiene un rendimiento en el rango de cientos de gigaFLOPS (1011) a decenas de teraFLOPS (1013). Desde noviembre de 2017, todas las 500 supercomputadoras más rápidas del mundo se ejecutan en sistemas operativos basados en Linux. Se están realizando investigaciones adicionales en los Estados Unidos, la Unión Europea, Taiwán, Japón y China para construir supercomputadoras a exaescala más rápidas, potentes y tecnológicamente superiores.
Las supercomputadoras desempeñan un papel importante en el campo de la ciencia computacional y se utilizan para una amplia gama de tareas computacionalmente intensivas en varios campos, incluida la mecánica cuántica, el pronóstico del tiempo, la investigación climática, la exploración de petróleo y gas, el modelado molecular (computar la estructuras y propiedades de compuestos químicos, macromoléculas biológicas, polímeros y cristales) y simulaciones físicas (como simulaciones de los primeros momentos del universo, aerodinámica de aviones y naves espaciales, detonación de armas nucleares y fusión nuclear). Han sido fundamentales en el campo del criptoanálisis.
Las supercomputadoras se introdujeron en la década de 1960 y, durante varias décadas, las más rápidas fueron fabricadas por Seymour Cray en Control Data Corporation (CDC), Cray Research y las empresas posteriores que llevan su nombre o monograma. Las primeras máquinas de este tipo eran diseños convencionales altamente ajustados que funcionaban más rápido que sus contemporáneos de uso más general. A lo largo de la década, se agregaron cantidades cada vez mayores de paralelismo, siendo típicos de uno a cuatro procesadores. En la década de 1970, dominaron los procesadores vectoriales que operaban con grandes conjuntos de datos. Un ejemplo notable es el exitoso Cray-1 de 1976. Las computadoras vectoriales siguieron siendo el diseño dominante en la década de 1990. Desde entonces hasta hoy, las supercomputadoras paralelas masivas con decenas de miles de procesadores listos para usar se convirtieron en la norma.
EE. UU. ha sido durante mucho tiempo el líder en el campo de las supercomputadoras, primero a través del dominio casi ininterrumpido de Cray en el campo y luego a través de una variedad de empresas de tecnología. Japón hizo grandes avances en el campo en las décadas de 1980 y 1990, y China se volvió cada vez más activa en el campo. En mayo de 2022, la supercomputadora más rápida en la lista de supercomputadoras TOP500 es Frontier, en los EE. UU., con una puntuación de referencia LINPACK de 1,102 ExaFlop/s, seguida de Fugaku. Estados Unidos tiene cinco de los 10 primeros; China tiene dos; Japón, Finlandia y Francia tienen uno cada uno. En junio de 2018, todas las supercomputadoras combinadas en la lista TOP500 rompieron la marca de 1 exaFLOPS.
Historia
En 1960, UNIVAC construyó la computadora de investigación atómica Livermore (LARC), hoy considerada una de las primeras supercomputadoras, para el Centro de Investigación y Desarrollo de la Marina de los EE. UU. Todavía usaba memoria de tambor de alta velocidad, en lugar de la tecnología de unidad de disco emergente. Además, entre las primeras supercomputadoras se encontraba la IBM 7030 Stretch. El IBM 7030 fue construido por IBM para el Laboratorio Nacional de Los Álamos, que en 1955 había solicitado una computadora 100 veces más rápida que cualquier computadora existente. El IBM 7030 usaba transistores, memoria de núcleo magnético, instrucciones canalizadas, datos precargados a través de un controlador de memoria e incluía unidades de disco de acceso aleatorio pioneras. El IBM 7030 se completó en 1961 y, a pesar de no superar el desafío de multiplicar por cien su rendimiento, fue adquirido por el Laboratorio Nacional de Los Álamos. Los clientes de Inglaterra y Francia también compraron la computadora, y se convirtió en la base de la IBM 7950 Harvest, una supercomputadora construida para el criptoanálisis.
El tercer proyecto de superordenador pionero a principios de la década de 1960 fue el Atlas de la Universidad de Manchester, construido por un equipo dirigido por Tom Kilburn. Diseñó el Atlas para que tuviera espacio de memoria para hasta un millón de palabras de 48 bits, pero debido a que el almacenamiento magnético con tal capacidad no era asequible, la memoria central real del Atlas era de solo 16 000 palabras, con un tambor que proporcionaba memoria para otras 96 000. palabras. El sistema operativo Atlas intercambió datos en forma de páginas entre el núcleo magnético y el tambor. El sistema operativo Atlas también introdujo el tiempo compartido en la supercomputación, de modo que se podía ejecutar más de un programa en la supercomputadora en cualquier momento. Atlas fue una empresa conjunta entre Ferranti y la Universidad de Manchester y fue diseñado para operar a velocidades de procesamiento cercanas a un microsegundo por instrucción, alrededor de un millón de instrucciones por segundo.
El CDC 6600, diseñado por Seymour Cray, se terminó en 1964 y marcó la transición de los transistores de germanio a los de silicio. Los transistores de silicio podían funcionar más rápido y el problema del sobrecalentamiento se resolvió introduciendo la refrigeración en el diseño de la supercomputadora. Así, la CDC6600 se convirtió en la computadora más rápida del mundo. Dado que la 6600 superó a todas las demás computadoras contemporáneas unas 10 veces, se la denominó supercomputadora y definió el mercado de las supercomputadoras, cuando se vendieron cien computadoras a $8 millones cada una.
Cray dejó CDC en 1972 para formar su propia empresa, Cray Research. Cuatro años después de dejar CDC, Cray entregó el Cray-1 de 80 MHz en 1976, que se convirtió en una de las supercomputadoras más exitosas de la historia. El Cray-2 se lanzó en 1985. Tenía ocho unidades centrales de procesamiento (CPU), refrigeración líquida y el líquido refrigerante electrónico Fluorinert se bombeaba a través de la arquitectura de la supercomputadora. Alcanzó 1,9 gigaFLOPS, lo que la convirtió en la primera supercomputadora en romper la barrera del gigaflop.
Diseños masivamente paralelos
La única computadora que desafió seriamente el rendimiento del Cray-1 en la década de 1970 fue la ILLIAC IV. Esta máquina fue el primer ejemplo realizado de una verdadera computadora paralela masiva, en la que muchos procesadores trabajaron juntos para resolver diferentes partes de un solo problema más grande. A diferencia de los sistemas vectoriales, que fueron diseñados para ejecutar un solo flujo de datos lo más rápido posible, en este concepto, la computadora alimenta partes separadas de los datos a procesadores completamente diferentes y luego recombina los resultados. El diseño de ILLIAC se finalizó en 1966 con 256 procesadores y ofrece una velocidad de hasta 1 GFLOPS, en comparación con el pico de 250 MFLOPS del Cray-1 de la década de 1970. Sin embargo, los problemas de desarrollo llevaron a que solo se construyeran 64 procesadores, y el sistema nunca podría operar más rápido que alrededor de 200 MFLOPS mientras era mucho más grande y más complejo que el Cray. Otro problema era que escribir software para el sistema era difícil y obtener el máximo rendimiento de él era una cuestión de gran esfuerzo.
Pero el éxito parcial de ILLIAC IV fue ampliamente visto como una indicación del camino hacia el futuro de la supercomputación. Cray argumentó en contra de esto, con la famosa broma de que "si estuvieras arando un campo, ¿cuál preferirías usar?" ¿Dos bueyes fuertes o 1024 gallinas?" Pero a principios de la década de 1980, varios equipos estaban trabajando en diseños paralelos con miles de procesadores, en particular, Connection Machine (CM) que se desarrolló a partir de la investigación en el MIT. El CM-1 utilizó hasta 65 536 microprocesadores personalizados simplificados conectados entre sí en una red para compartir datos. Siguieron varias versiones actualizadas; la supercomputadora CM-5 es una computadora de procesamiento masivo en paralelo capaz de muchos miles de millones de operaciones aritméticas por segundo.
En 1982, el sistema de gráficos por computadora LINKS-1 de la Universidad de Osaka utilizó una arquitectura de procesamiento masivamente paralela, con 514 microprocesadores, incluidos 257 procesadores de control Zilog Z8001 y 257 procesadores de punto flotante iAPX 86/20. Se utilizó principalmente para renderizar gráficos de computadora en 3D realistas. El VPP500 de Fujitsu de 1992 es inusual ya que, para lograr velocidades más altas, sus procesadores usaban GaAs, un material normalmente reservado para aplicaciones de microondas debido a su toxicidad. La supercomputadora Numerical Wind Tunnel de Fujitsu usó 166 procesadores vectoriales para obtener el primer puesto en 1994 con una velocidad máxima de 1,7 gigaFLOPS (GFLOPS) por procesador. El Hitachi SR2201 obtuvo un rendimiento máximo de 600 GFLOPS en 1996 mediante el uso de 2048 procesadores conectados a través de una red de barra cruzada tridimensional rápida. El Intel Paragon podía tener de 1000 a 4000 procesadores Intel i860 en varias configuraciones y fue clasificado como el más rápido del mundo en 1993. El Paragon era una máquina MIMD que conectaba procesadores a través de una malla bidimensional de alta velocidad, lo que permitía que los procesos se ejecutaran en nodos separados., comunicándose a través de la interfaz de paso de mensajes.
El desarrollo de software siguió siendo un problema, pero la serie CM provocó una investigación considerable sobre este tema. Muchas empresas realizaron diseños similares con hardware personalizado, incluido Evans & Sutherland ES-1, MasPar, nCUBE, Intel iPSC y Goodyear MPP. Pero a mediados de la década de 1990, el rendimiento de la CPU de uso general había mejorado tanto que se podía construir una supercomputadora usándolos como unidades de procesamiento individuales, en lugar de usar chips personalizados. A principios del siglo XXI, los diseños con decenas de miles de CPU básicas eran la norma, y las máquinas posteriores agregaron unidades gráficas a la mezcla.
Los sistemas con una gran cantidad de procesadores generalmente toman uno de dos caminos. En el enfoque de computación grid, el poder de procesamiento de muchas computadoras, organizadas como dominios administrativos distribuidos y diversos, se usa de manera oportunista siempre que haya una computadora disponible. En otro enfoque, muchos procesadores se utilizan cerca unos de otros, p. en un clúster de computadoras. En un sistema paralelo masivo tan centralizado, la velocidad y la flexibilidad de la interconexión se vuelve muy importante y las supercomputadoras modernas han utilizado varios enfoques que van desde sistemas Infiniband mejorados hasta interconexiones toroidales tridimensionales. El uso de procesadores de varios núcleos combinados con la centralización es una dirección emergente, p. como en el sistema Cyclops64.
A medida que mejoraron el precio, el rendimiento y la eficiencia energética de las unidades de procesamiento de gráficos de propósito general (GPGPU), varias supercomputadoras petaFLOPS, como Tianhe-I y Nebulae, comenzaron a confiar en ellas. Sin embargo, otros sistemas, como la computadora K, continúan utilizando procesadores convencionales, como los diseños basados en SPARC, y la aplicabilidad general de las GPGPU en aplicaciones informáticas de alto rendimiento de propósito general ha sido objeto de debate, ya que si bien una GPGPU puede ajustarse para obtener una buena puntuación en puntos de referencia específicos, su aplicabilidad general a los algoritmos cotidianos puede ser limitada a menos que se dedique un esfuerzo significativo para ajustar la aplicación. Sin embargo, las GPU están ganando terreno y, en 2012, la supercomputadora Jaguar se transformó en Titan mediante la actualización de las CPU con GPU.
Los equipos de alto rendimiento tienen un ciclo de vida esperado de unos tres años antes de necesitar una actualización. La supercomputadora Gyoukou es única porque utiliza un diseño masivamente paralelo y refrigeración por inmersión líquida.
Supercomputadoras de propósito especial
Se han diseñado varios sistemas de propósito especial, dedicados a un solo problema. Esto permite el uso de chips FPGA especialmente programados o incluso ASIC personalizados, lo que permite mejores relaciones precio/rendimiento al sacrificar la generalidad. Entre los ejemplos de supercomputadoras de propósito especial se incluyen Belle, Deep Blue e Hydra para jugar al ajedrez, Gravity Pipe para astrofísica, MDGRAPE-3 para predicción de estructura de proteínas y dinámica molecular, y Deep Crack para descifrar el cifrado DES.
Uso de energía y gestión del calor
A lo largo de las décadas, la gestión de la densidad del calor ha seguido siendo un tema clave para la mayoría de las supercomputadoras centralizadas. La gran cantidad de calor generado por un sistema también puede tener otros efectos, p. reduciendo la vida útil de otros componentes del sistema. Ha habido diversos enfoques para la gestión del calor, desde bombear Fluorinert a través del sistema, hasta un sistema híbrido de refrigeración por aire líquido o refrigeración por aire con temperaturas normales de aire acondicionado. Una supercomputadora típica consume grandes cantidades de energía eléctrica, casi toda la cual se convierte en calor, lo que requiere enfriamiento. Por ejemplo, Tianhe-1A consume 4,04 megavatios (MW) de electricidad. El costo de alimentar y enfriar el sistema puede ser significativo, p. 4 MW a $0,10/kWh es $400 por hora o alrededor de $3,5 millones por año.
La gestión del calor es un problema importante en los dispositivos electrónicos complejos y afecta a los sistemas informáticos potentes de varias maneras. Los problemas de potencia de diseño térmico y disipación de potencia de la CPU en la supercomputación superan a los de las tecnologías tradicionales de enfriamiento de computadoras. Los premios de supercomputación para la computación verde reflejan este problema.
El empaquetamiento de miles de procesadores genera inevitablemente cantidades significativas de densidad de calor que deben tratarse. El Cray-2 se enfrió con líquido y utilizó una "cascada de enfriamiento" que fue forzado a través de los módulos bajo presión. Sin embargo, el enfoque de refrigeración líquida sumergida no era práctico para los sistemas de gabinetes múltiples basados en procesadores estándar, y en System X se desarrolló un sistema de refrigeración especial que combinaba aire acondicionado con refrigeración líquida junto con la empresa Liebert.
En el sistema Blue Gene, IBM usó deliberadamente procesadores de bajo consumo para lidiar con la densidad del calor. El IBM Power 775, lanzado en 2011, tiene elementos muy compactos que requieren refrigeración por agua. El sistema IBM Aquasar utiliza refrigeración por agua caliente para lograr la eficiencia energética, y el agua también se utiliza para calentar edificios.
La eficiencia energética de los sistemas informáticos generalmente se mide en términos de "FLOPS por vatio". En 2008, Roadrunner de IBM operó a 3,76 MFLOPS/W. En noviembre de 2010, Blue Gene/Q alcanzó 1,684 MFLOPS/W y en junio de 2011 los dos primeros lugares en la lista Green 500 fueron ocupados por máquinas Blue Gene en Nueva York (una que logró 2097 MFLOPS/W) con el clúster DEGIMA en Nagasaki colocando tercero con 1375 MFLOPS/W.
Debido a que los cables de cobre pueden transferir energía a una supercomputadora con densidades de potencia mucho más altas que el aire forzado o los refrigerantes circulantes pueden eliminar el calor residual, la capacidad de los sistemas de refrigeración para eliminar el calor residual es un factor limitante. A partir de 2015, muchas supercomputadoras existentes tienen más capacidad de infraestructura que la demanda máxima real de la máquina: los diseñadores generalmente diseñan de manera conservadora la infraestructura de energía y enfriamiento para manejar más que la potencia eléctrica máxima teórica consumida por la supercomputadora. Los diseños de las futuras supercomputadoras tienen un límite de energía: la potencia de diseño térmico de la supercomputadora en su conjunto, la cantidad que la infraestructura de energía y enfriamiento puede manejar, es un poco más que el consumo de energía normal esperado, pero menos que el consumo de energía máximo teórico de el hardware electrónico.
Administración de software y sistemas
Sistemas operativos
Desde finales del siglo XX, los sistemas operativos de las supercomputadoras han sufrido grandes transformaciones, basadas en los cambios en la arquitectura de las supercomputadoras. Si bien los primeros sistemas operativos se adaptaron a la medida de cada supercomputadora para ganar velocidad, la tendencia ha sido alejarse de los sistemas operativos internos a la adaptación de software genérico como Linux.
Dado que las modernas supercomputadoras paralelas masivas generalmente separan los cálculos de otros servicios mediante el uso de múltiples tipos de nodos, generalmente ejecutan diferentes sistemas operativos en diferentes nodos, p. usando un kernel liviano pequeño y eficiente como CNK o CNL en los nodos de cómputo, pero un sistema más grande como un derivado de Linux en el servidor y los nodos de E/S.
Mientras que en un sistema informático multiusuario tradicional, la programación de trabajos es, en efecto, un problema de asignación de tareas para el procesamiento y los recursos periféricos, en un sistema paralelo masivo, el sistema de gestión de trabajos necesita gestionar la asignación de recursos informáticos y de comunicación, así como tratar con gracia las fallas de hardware inevitables cuando hay decenas de miles de procesadores presentes.
Aunque la mayoría de las supercomputadoras modernas usan sistemas operativos basados en Linux, cada fabricante tiene su propio derivado de Linux específico y no existe un estándar de la industria, en parte debido al hecho de que las diferencias en las arquitecturas de hardware requieren cambios para optimizar el sistema operativo para cada uno. diseño de hardware.
Herramientas de software y paso de mensajes
Las arquitecturas paralelas de las supercomputadoras a menudo dictan el uso de técnicas de programación especiales para explotar su velocidad. Las herramientas de software para el procesamiento distribuido incluyen API estándar como MPI y PVM, VTL y software de código abierto como Beowulf.
En el escenario más común, se utilizan entornos como PVM y MPI para clústeres poco conectados y OpenMP para máquinas de memoria compartida estrechamente coordinadas. Se requiere un esfuerzo significativo para optimizar un algoritmo para las características de interconexión de la máquina en la que se ejecutará; el objetivo es evitar que cualquiera de las CPU pierda tiempo esperando datos de otros nodos. Las GPGPU tienen cientos de núcleos de procesador y se programan utilizando modelos de programación como CUDA u OpenCL.
Además, es bastante difícil depurar y probar programas paralelos. Es necesario utilizar técnicas especiales para probar y depurar dichas aplicaciones.
Supercomputación distribuida
Enfoques oportunistas
La supercomputación oportunista es una forma de computación grid en red mediante la cual una "supercomputadora virtual" de muchas máquinas informáticas voluntarias débilmente acopladas realiza tareas informáticas muy grandes. La computación en malla se ha aplicado a una serie de problemas vergonzosamente paralelos a gran escala que requieren escalas de rendimiento de supercomputación. Sin embargo, los enfoques básicos de computación en red y en la nube que dependen de la computación voluntaria no pueden manejar las tareas tradicionales de supercomputación, como las simulaciones dinámicas de fluidos.
El sistema de computación grid más rápido es el proyecto de computación voluntario Folding@home (F@h). A partir de abril de 2020, F@h informó 2,5 exaFLOPS de potencia de procesamiento x86. De esto, más de 100 PFLOPS provienen de clientes que se ejecutan en varias GPU y el resto de varios sistemas de CPU.
La plataforma Berkeley Open Infrastructure for Network Computing (BOINC) alberga una serie de proyectos informáticos voluntarios. A partir de febrero de 2017, BOINC registró una potencia de procesamiento de más de 166 petaFLOPS a través de más de 762 000 computadoras activas (hosts) en la red.
En octubre de 2016, la búsqueda distribuida de Mersenne Prime de Great Internet Mersenne Prime Search (GIMPS) alcanzó aproximadamente 0,313 PFLOPS en más de 1,3 millones de computadoras. El [1] es compatible con el enfoque de computación en cuadrícula de GIMPS, uno de los primeros proyectos de computación voluntarios, desde 1997.
Enfoques casi oportunistas
La supercomputación cuasi-oportunista es una forma de computación distribuida en la que la "supercomputadora virtual" de muchas computadoras en red geográficamente dispersas realiza tareas informáticas que exigen una gran potencia de procesamiento. La supercomputación cuasi-oportunista tiene como objetivo proporcionar una mayor calidad de servicio que la computación en malla oportunista al lograr un mayor control sobre la asignación de tareas a los recursos distribuidos y el uso de inteligencia sobre la disponibilidad y confiabilidad de los sistemas individuales dentro de la red de supercomputación. Sin embargo, la ejecución distribuida cuasi-oportunista de software de computación paralelo exigente en grids debe lograrse mediante la implementación de acuerdos de asignación de grid-wise, subsistemas de co-asignación, mecanismos de asignación conscientes de la topología de comunicación, bibliotecas de paso de mensajes tolerantes a fallas y preacondicionamiento de datos.
Nubes informáticas de alto rendimiento
La computación en la nube con sus recientes y rápidas expansiones y desarrollos ha captado la atención de los usuarios y desarrolladores de computación de alto rendimiento (HPC) en los últimos años. La computación en la nube intenta proporcionar HPC como servicio exactamente igual que otras formas de servicios disponibles en la nube, como el software como servicio, la plataforma como servicio y la infraestructura como servicio. Los usuarios de HPC pueden beneficiarse de la nube en diferentes ángulos, como escalabilidad, recursos bajo demanda, rápidos y económicos. Por otro lado, las aplicaciones móviles de HPC también presentan una serie de desafíos. Buenos ejemplos de tales desafíos son la sobrecarga de virtualización en la nube, la tenencia múltiple de recursos y los problemas de latencia de la red. Actualmente se está investigando mucho para superar estos desafíos y hacer de la HPC en la nube una posibilidad más realista.
En 2016, Penguin Computing, Parallel Works, R-HPC, Amazon Web Services, Univa, Silicon Graphics International, Rescale, Sabalcore y Gomput comenzaron a ofrecer computación en la nube HPC. La nube Penguin On Demand (POD) es un modelo de computación completo para ejecutar código, pero cada usuario recibe un nodo de inicio de sesión virtualizado. Los nodos informáticos POD se conectan mediante redes Ethernet de 10 Gbit/s no virtualizadas o QDR InfiniBand. La conectividad del usuario al centro de datos POD varía de 50 Mbit/s a 1 Gbit/s. Citando a EC2 Elastic Compute Cloud de Amazon, Penguin Computing argumenta que la virtualización de los nodos de cómputo no es adecuada para HPC. Penguin Computing también ha criticado que las nubes de HPC pueden haber asignado nodos informáticos a clientes que están muy separados, lo que provoca una latencia que afecta el rendimiento de algunas aplicaciones de HPC.
Medición de rendimiento
Capacidad frente a capacidad
Las supercomputadoras generalmente apuntan a la máxima capacidad informática en lugar de la capacidad informática. Por lo general, se considera que la capacidad informática utiliza la máxima potencia informática para resolver un solo problema grande en el menor tiempo posible. A menudo, un sistema de capacidad puede resolver un problema de un tamaño o complejidad que ninguna otra computadora puede, p. una aplicación de simulación meteorológica muy compleja.
La informática de capacidad, por el contrario, se suele considerar como el uso de una potencia informática eficiente y rentable para resolver algunos problemas algo grandes o muchos problemas pequeños. Las arquitecturas que se prestan para soportar a muchos usuarios en las tareas cotidianas de rutina pueden tener mucha capacidad, pero normalmente no se consideran supercomputadoras, dado que no resuelven un solo problema muy complejo.
Métricas de rendimiento
En general, la velocidad de las supercomputadoras se mide y compara en FLOPS (operaciones de punto flotante por segundo) y no en términos de MIPS (millones de instrucciones por segundo), como es el caso de las computadoras de propósito general. Estas medidas se usan comúnmente con un prefijo SI como tera-, combinado en la abreviatura TFLOPS (1012 FLOPS, pronunciado teraflops), o peta-, combinado en la abreviatura PFLOPS (1015 FLOPS, pronunciado petaflops). Las supercomputadoras a petaescala pueden procesar un cuatrillón (1015) (1000 billones) de FLOPS. Exascale es un rendimiento informático en el rango de exaFLOPS (EFLOPS). Un EFLOPS es un quintillón (1018) FLOPS (un millón de TFLOPS).
Ningún número puede reflejar el rendimiento general de un sistema informático; sin embargo, el objetivo de la evaluación comparativa de Linpack es aproximar la rapidez con la que la computadora resuelve problemas numéricos y es ampliamente utilizado en la industria. La medida de FLOPS se cotiza en función del rendimiento teórico de punto flotante de un procesador (derivado de las especificaciones del procesador del fabricante y mostrado como 'Rpeak' en las listas TOP500), que generalmente no se puede lograr cuando se ejecuta en condiciones reales. cargas de trabajo, o el rendimiento alcanzable, derivado de los puntos de referencia de LINPACK y mostrado como "Rmax" en la lista TOP500. El punto de referencia LINPACK normalmente realiza la descomposición LU de una matriz grande. El rendimiento de LINPACK proporciona una indicación del rendimiento para algunos problemas del mundo real, pero no necesariamente coincide con los requisitos de procesamiento de muchas otras cargas de trabajo de supercomputadoras, que, por ejemplo, pueden requerir más ancho de banda de memoria, o pueden requerir un mejor rendimiento de computación de enteros, o pueden necesitar un Sistema de E/S de alto rendimiento para lograr altos niveles de rendimiento.
La lista TOP500
Desde 1993, las supercomputadoras más rápidas se han clasificado en la lista TOP500 según sus resultados de referencia LINPACK. La lista no pretende ser imparcial o definitiva, pero es una definición actual ampliamente citada del "más rápido" superordenador disponible en un momento dado.
Esta es una lista reciente de las computadoras que aparecieron en la parte superior de la lista TOP500, y la "Velocidad máxima" se da como el "Rmax" clasificación. En 2018, Lenovo se convirtió en el proveedor más grande del mundo de las supercomputadoras TOP500 con 117 unidades producidas.
Rank (previous) | Rmax
Rpeak (PetaFLOPS) | Nombre | Modelo | CPU cores | núcleos aceleradores (por ejemplo, GPU) | Interconexión | Fabricantes | Sitio
país | Año | Funcionamiento
sistema |
---|---|---|---|---|---|---|---|---|---|---|
1 | 1,102.00
1,685.65 | Frontier | HPE Cray EX235a | 591,872
(9,248 × 64-core Optimizado 3ra generación EPYC 64C @2.0 GHz) | 36,992 × 220 AMD Instinct MI250X | Slingshot-11 | HPE | Oak Ridge National LaboratoryEstados Unidos | 2022 | Linux (HPE Cray OS) |
2 | 442.010
537.212 | Fugaku | Supercomputer Fugaku | 7.630.848
(158,976 × 48-core Fujitsu A64FX @2.2 GHz) | 0 | Interconexión de tofu D | Fujitsu | RIKEN Center for Computational ScienceJapón | 2020 | Linux (RHEL) |
3 | 309.10
428.70 | LUMI | HPE Cray EX235a | 150.528
(2,352 × 64-core Optimizado 3ra generación EPYC 64C @2.0 GHz) | 9,408 × 220 AMD Instinct MI250X | Slingshot-11 | HPE | EuroHPC JUUnión Europea,
ubicación: Kajaani, Finlandia. | 2022 | Linux (HPE Cray OS) |
4 | 174.70
255.75 | Leonardo | BullSequana XH2000 | 110.592
(3,456 × 32-core Xeon Platinum 8358 @2.6 GHz) | 13,824 × 108 Nvidia Ampere A100 | Nvidia HDR100 Infiniband | Atos | EuroHPC JUUnión Europea,
ubicación: Bolonia, Italia. | 2022 | Linux |
5 4) | 148.600
200,795 | Cumbre | IBM Power SystemAC922 | 202,752
(9,216 × 22 núcleos IBM POWER9 @3.07 GHz) | 27,648 × 80 Nvidia Tesla V100 | InfiniBand EDR | IBM | Oak Ridge National LaboratoryEstados Unidos | 2018 | Linux (RHEL 7.4) |
6 5) | 94.640
125.712 | Sierra | IBM Power SystemS922LC | 190.080
(8,640 × 22 núcleos IBM POWER9 @3.1 GHz) | 17,280 × 80 Nvidia Tesla V100 | InfiniBand EDR | IBM | Lawrence Livermore National LaboratoryEstados Unidos | 2018 | Linux (RHEL) |
7 (6) | 93.015
125.436 | SunwayTaihuLight | Sunway MPP | 10.649.600
(40,960 × 260-core Sunway SW26010 @1.45 GHz) | 0 | Sunway | NRCPC | Supercomputación Nacional Centro en WuxiChina | 2016 | Linux (RaiseOS 2.0.5) |
8 (7) | 70.87
93.75 | Perlmutter | HPE Cray EX235n | ? × ?-core AMD Epyc 7763 64-core @2.45 GHz | ? × 108 Nvidia Ampere A100 | Slingshot-10 | HPE | NERSCEstados Unidos | 2021 | Linux (HPE Cray OS) |
9 (8) | 63.460
79.215 | Selene | Nvidia | 71.680
(1,120 × 64-core AMD Epyc 7742 @2.25 GHz) | 4,480 × 108 Nvidia Ampere A100 | Mellanox HDR Infiniband | Nvidia | NvidiaEstados Unidos | 2020 | Linux (Ubuntu 20.04.1) |
10 (9) | 61.445
100.679 | Tianhe-2A | TH-IVB-FEP | 427,008
(35,584 × 12 núcleos Intel Xeon E5–2692 v2 @2.2 GHz) | 35,584 × Matrix-2000 128-core | TH Express-2 | NUDT | Supercomputadora Nacional Centro en GuangzhouChina | 2018 | Linux (Kylin) |
Aplicaciones
Las etapas de la aplicación de la supercomputadora se pueden resumir en la siguiente tabla:
Decenio | Usos y ordenadores involucrados |
---|---|
1970s | Previsión meteorológica, investigación aerodinámica (Cray-1). |
1980 | Análisis probabilístico, modelado de blindaje de radiación (CDC Cyber). |
1990s | Bruto código de la fuerza rompiendo (EFF DES cracker). |
2000s | Las simulaciones de ensayos nucleares en 3D como sustituto del Tratado sobre la no proliferación de las armas nucleares (ASCI Q). |
2010s | simulación de dinámica molecular (Tianhe-1A) |
2020s | Investigación científica para la prevención de brotes/Investigación de reacción electroquímica |
La computadora IBM Blue Gene/P se ha utilizado para simular una cantidad de neuronas artificiales equivalente a aproximadamente el uno por ciento de la corteza cerebral humana, que contiene 1600 millones de neuronas con aproximadamente 9 billones de conexiones. El mismo grupo de investigación también logró usar una supercomputadora para simular una cantidad de neuronas artificiales equivalente a la totalidad del cerebro de una rata.
El pronóstico del tiempo moderno también depende de las supercomputadoras. La Administración Nacional Oceánica y Atmosférica utiliza supercomputadoras para procesar cientos de millones de observaciones para ayudar a que los pronósticos meteorológicos sean más precisos.
En 2011, los desafíos y las dificultades para ampliar los límites de la supercomputación se pusieron de relieve con el abandono de IBM del proyecto de petaescala Blue Waters.
El Programa de computación y simulación avanzada actualmente usa supercomputadoras para mantener y simular el arsenal nuclear de los Estados Unidos.
A principios de 2020, el COVID-19 estaba al frente y al centro del mundo. Las supercomputadoras utilizaron diferentes simulaciones para encontrar compuestos que potencialmente podrían detener la propagación. Estas computadoras funcionan durante decenas de horas utilizando varias CPU en ejecución en paralelo para modelar diferentes procesos.
Desarrollo y tendencias
En la década de 2010, China, Estados Unidos, la Unión Europea y otros compitieron para ser los primeros en crear una supercomputadora de 1 exaFLOP (1018 o un quintillón de FLOPS). Erik P. DeBenedictis de Sandia National Laboratories ha teorizado que se requiere una computadora zettaFLOPS (1021 o un sextillón de FLOPS) para lograr un modelo de clima completo, que podría cubrir un lapso de tiempo de dos semanas con precisión. Dichos sistemas podrían construirse alrededor de 2030.
Muchas simulaciones de Monte Carlo utilizan el mismo algoritmo para procesar un conjunto de datos generado aleatoriamente; en particular, las ecuaciones integro-diferenciales que describen los procesos de transporte físico, las trayectorias aleatorias, las colisiones y las deposiciones de energía y cantidad de movimiento de neutrones, fotones, iones, electrones, etc. El siguiente paso para los microprocesadores puede ser la tercera dimensión; y especializándose en Monte Carlo, las muchas capas podrían ser idénticas, simplificando el proceso de diseño y fabricación.
El costo de operación de las supercomputadoras de alto rendimiento ha aumentado, principalmente debido al aumento del consumo de energía. A mediados de la década de 1990, una de las 10 mejores supercomputadoras requería en el rango de 100 kilovatios, en 2010 las 10 mejores supercomputadoras requerían entre 1 y 2 megavatios. Un estudio de 2010 encargado por DARPA identificó el consumo de energía como el desafío más generalizado para lograr la computación Exascale. En ese momento, un megavatio por año en consumo de energía costaba alrededor de 1 millón de dólares. Se construyeron instalaciones de supercomputación para eliminar de manera eficiente la cantidad cada vez mayor de calor producido por las modernas unidades centrales de procesamiento multinúcleo. Según el consumo de energía de la lista de supercomputadoras Green 500 entre 2007 y 2011, una supercomputadora con 1 exaFLOPS en 2011 habría requerido casi 500 megavatios. Los sistemas operativos se desarrollaron para el hardware existente para conservar energía siempre que sea posible. Los núcleos de CPU que no se usaban durante la ejecución de una aplicación paralelizada se pusieron en estados de bajo consumo de energía, lo que produjo ahorros de energía para algunas aplicaciones de supercomputación.
El costo cada vez mayor de operar supercomputadoras ha sido un factor impulsor en una tendencia hacia la agrupación de recursos a través de una infraestructura de supercomputadora distribuida. Los centros nacionales de supercomputación surgieron por primera vez en los EE. UU., seguidos de Alemania y Japón. La Unión Europea lanzó la Asociación para la Computación Avanzada en Europa (PRACE) con el objetivo de crear una infraestructura de supercomputadora paneuropea persistente con servicios para ayudar a los científicos de toda la Unión Europea a portar, escalar y optimizar aplicaciones de supercomputación. Islandia construyó la primera supercomputadora de cero emisiones del mundo. Ubicada en el Thor Data Center en Reykjavík, Islandia, esta supercomputadora depende de fuentes completamente renovables para su energía en lugar de combustibles fósiles. El clima más frío también reduce la necesidad de refrigeración activa, lo que la convierte en una de las instalaciones más ecológicas del mundo de las computadoras.
Financiar el hardware de las supercomputadoras también se volvió cada vez más difícil. A mediados de los 90, un top 10 de superordenadores costaba unos 10 millones de euros, mientras que en 2010 los top 10 superordenadores requerían una inversión de entre 40 y 50 millones de euros. En la década de 2000, los gobiernos nacionales implementaron diferentes estrategias para financiar las supercomputadoras. En el Reino Unido, el gobierno nacional financió por completo las supercomputadoras y la computación de alto rendimiento se puso bajo el control de una agencia de financiación nacional. Alemania desarrolló un modelo de financiación mixto, combinando financiación estatal local y financiación federal.
En la ficción
Muchos escritores de ciencia ficción han representado supercomputadoras en sus obras, tanto antes como después de la construcción histórica de dichas computadoras. Gran parte de esa ficción trata sobre las relaciones de los humanos con las computadoras que construyen y sobre la posibilidad de que eventualmente se desarrolle un conflicto entre ellos. Los ejemplos de supercomputadoras en la ficción incluyen HAL 9000, Multivac, The Machine Stops, GLaDOS, The Evitable Conflict, Vulcan's Hammer, Colossus, WOPR y Deep Thought.
Contenido relacionado
Multicasco
Artillería autopropulsada
Material de película