Imagina que pudieras resolver un problema 50 veces más rápido de lo que puedes hacerlo ahora. Con esta habilidad, tienes el potencial de encontrar respuestas incluso a los problemas más complejos más rápido que nunca.
Los investigadores detrás del Proyecto de Computación Exascale del Departamento de Energía de los Estados Unidos DOE quieren hacer realidad esta capacidad, y lo están haciendo mediante la creación de herramientas y tecnologías para supercomputadoras exascale - sistemas informáticos al menos 50 veces más rápidos que los utilizados en la actualidad.Las herramientas mejorarán la capacidad de los investigadores para analizar y visualizar fenómenos complejos como el cáncer y los reactores nucleares, lo que acelerará el descubrimiento científico y la innovación.
El desarrollo de capas de software que admiten y conectan hardware y aplicaciones es fundamental para hacer realidad estos sistemas de próxima generación.
"Estos entornos de software tienen que ser lo suficientemente robustos y flexibles como para manejar un amplio espectro de aplicaciones, y estar bien integrados con el hardware y el software de aplicación para que las aplicaciones puedan ejecutarse y funcionar sin problemas", dijo Rajeev Thakur, un científico informático del DOE'sArgonne National Laboratory y el director de tecnología de software para el Exascale Computing Project ECP.
Los investigadores de la División de Matemáticas e Informática de Argonne están colaborando con colegas de otros cinco laboratorios nacionales centrales del ECP DOE: Lawrence Berkeley, Lawrence Livermore, Sandia, Oak Ridge y Los Alamos, además de otros laboratorios y universidades.
Su objetivo es crear nuevas tecnologías de software existentes y adaptarlas para operar a exascala superando los desafíos encontrados en varias áreas clave, como la memoria, el poder y los recursos computacionales.
Punto de control / reinicio
El informático de Argonne, Franck Cappello, lidera un proyecto de ECP centrado en el punto de control / reinicio avanzado, un mecanismo de defensa para soportar fallas que suceden cuando se ejecutan las aplicaciones.
"Dada su complejidad, las fallas en los sistemas de alto rendimiento son una ocurrencia común, y algunas de ellas conducen a fallas que hacen que las aplicaciones paralelas se bloqueen", dijo Cappello.
"Muchas aplicaciones de ECP ya cuentan con un punto de control / reinicio, pero debido a que estamos avanzando hacia un sistema aún más complejo en exascale, necesitamos métodos más sofisticados para ello. Para nosotros, eso significa proporcionar un punto de control / reinicio efectivo y eficiente para ECPaplicaciones que carecen de él y que proporcionan a otras aplicaciones un punto de control / reinicio más eficiente y escalable "
Cappello también lidera un proyecto que se enfoca en reducir la gran cantidad de datos que generan estas máquinas, lo cual es costoso de almacenar y comunicar de manera efectiva.
"Estamos desarrollando técnicas que pueden reducir el volumen de datos en al menos un factor de 10. El problema con esto es que agrega un margen de error cuando reduce los datos", dijo Cappello.
"El foco está entonces en controlar el margen de error; desea controlar el error para que no afecte el resultado científico al final mientras sigue siendo eficiente en la reducción, y este es uno de los desafíos que estamos viendo"
memoria
Para la información que se almacena en los sistemas exascale, los investigadores necesitan controles de gestión de datos para memoria, potencia y núcleos de procesamiento. El científico informático de Argonne, Pete Beckman, está investigando métodos para gestionar los tres a través de un proyecto conocido como Argo.
"La eficiencia de la memoria y el almacenamiento tiene que mantenerse al día con el aumento en las tasas de cómputo y los requisitos de movimiento de datos que existirán en la exascala", dijo Beckman.
"Pero cómo está organizada la memoria en los sistemas y la tecnología utilizada también está cambiando y tiene más capas", dijo. "Así que tenemos que dar cuenta de estos cambios, además de anticipar y diseñar las necesidades futuras delas aplicaciones que usarán estos sistemas "
Con capas adicionales de memoria en los sistemas de exascale, los investigadores deben desarrollar un software complementario para regular estas tecnologías de memoria que brindan a los usuarios control sobre el proceso.
"Tener controles en su lugar es importante porque el lugar donde elige almacenar la información afecta la rapidez con la que puede recuperarla", dijo Beckman.
potencia
Otro recurso clave que los investigadores de Beckman y Argo Project están estudiando es el poder. Al igual que con la memoria, los métodos para asignar recursos de energía podrían acelerar o ralentizar la computación dentro de un sistema de alto rendimiento. Los investigadores están interesados en desarrollar tecnologías de software que puedan mejorar los usuarioscontrol sobre este recurso.
"Los límites de potencia pueden no estar en la parte superior de la lista cuando se trata de sistemas más pequeños, pero cuando se habla de decenas de megavatios de potencia, que es lo que necesitaremos en el futuro, cómo una aplicaciónusa ese poder se convierte en una característica distintiva importante ", dijo Beckman.
"El objetivo para nosotros es lograr un nivel de control que maximice las habilidades del usuario mientras mantiene la eficiencia y minimiza los costos", dijo.
Procesando núcleos
También se necesitan controles ultrafinos para administrar núcleos dentro de un sistema de exascala.
"Con cada generación de supercomputadoras seguimos agregando núcleos de procesamiento, pero el software del sistema que los hace funcionar necesita formas de particionar y administrar todos los núcleos", dijo Beckman. "Y dado que estamos tratando con millones de núcleos, incluso haciendo pequeñoslos ajustes pueden tener un tremendo impacto en lo que podemos hacer; mejorar el rendimiento, por ejemplo, del dos al tres por ciento, es equivalente al cálculo de miles de computadoras portátiles ".
Un concepto que Beckman y otros investigadores están explorando para administrar mejor los núcleos es la contenedorización, un método para agrupar un número selecto de núcleos y tratarlos como una unidad o "contenedor" que se puede controlar de forma independiente.
"Las herramientas que tenemos ahora para administrar los núcleos no son tan precisas, lo que hace que sea más difícil regular la cantidad de trabajo que está haciendo un conjunto de núcleos sobre otro", dijo Beckman. "Pero estamos tomando prestados y adaptando conceptos de contenedores encomputación de alto rendimiento para brindar a los usuarios la capacidad de operar y administrar cómo están usando esos núcleos de manera más cuidadosa y directa ".
Bibliotecas de software
Las aplicaciones se basan en bibliotecas de software colecciones de software reutilizables de alta calidad para admitir simulaciones y otras funcionalidades. Para hacer que estas capacidades sean accesibles a escala exesencial, los investigadores de Argonne están trabajando para escalar las bibliotecas existentes.
"Las bibliotecas proporcionan capacidades importantes, incluidas soluciones a problemas numéricos", dijo el matemático de Argonne Barry Smith, quien lidera un proyecto centrado en escalar dos bibliotecas conocidas como PETSc y TAO.
PETSc y TAO se utilizan ampliamente para simulaciones numéricas a gran escala. PETSc es una biblioteca que brinda soluciones a cálculos numéricos específicos. TAO es una biblioteca que brinda soluciones a problemas de optimización a gran escala, como el cálculo de la estrategia más rentablepara recargar barras de combustible en un reactor nuclear.
Además de escalar diversas bibliotecas de software, los científicos de ECP también están buscando formas de mejorar su calidad y compatibilidad.
"Las bibliotecas se han desarrollado tradicionalmente de forma independiente, y debido a las diferentes estrategias utilizadas para diseñarlas e implementarlas, ha sido difícil usar varias bibliotecas en combinaciones. Pero las aplicaciones grandes, como las que se ejecutarán a escala exas, necesitan poderusar todas las capas de la pila de software en combinación ", dijo la científica computacional de Argonne Lois Curfman McInnes.
McInnes es co-líder del proyecto xSDK, que está determinando las políticas comunitarias para regular la implementación de paquetes de software. Dichas políticas facilitarán que diversas bibliotecas sean compatibles entre sí.
"Estos esfuerzos nos acercan un paso más a la realización de un entorno de exascala robusto y ágil que puede ayudar a los científicos a enfrentar grandes desafíos", dijo McInnes.
Fuente de la historia :
Materiales proporcionado por Laboratorio Nacional de Argonne . Original escrito por Joan Koka. Nota: El contenido puede ser editado por estilo y longitud.
Cite esta página :