Los puntos clave no están disponibles para este artículo en este momento.
Los sistemas modernos de computación de alto rendimiento son diversos, con diseños de hardware que varían desde CPU multinúcleo homogéneas hasta sistemas acelerados por GPU o FPGA. Lograr un rendimiento deseable de la aplicación a menudo requiere elegir un modelo de programación que se adapte mejor a una plataforma particular. Para grandes códigos utilizados diariamente en producción que están en continua evolución, los puertos específicos de arquitectura son insostenibles. La mantenibilidad requiere un código de aplicación de origen único que sea portable en rendimiento a través de una variedad de arquitecturas y modelos de programación. En este artículo describimos RAJA, una capa de portabilidad que permite a las aplicaciones C++ aprovechar varios modelos de programación y, por lo tanto, arquitecturas, con una base de código de origen único. Describimos resultados preliminares utilizando RAJA en tres grandes códigos de producción en el Laboratorio Nacional Lawrence Livermore, observando aceleraciones de 17×, 13× y 12× en nodos solo de GPU sobre nodos solo de CPU con código de aplicación de origen único en cada caso.
Beckingsale et al. (Fri,) estudiaron esta cuestión.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: