Predicción de perfiles de comportamiento de aplicaciones científicas en nodos multicore
Con la llegada de una amplia variedad de arquitecturas multicore (NUMA, UMA), seleccionar la mejor configuración del nodo de cómputo para una cierta aplicación paralela de memoria compartida, se convierte en la actualidad en un gran reto. Nuestro trabajo hace frente a este tema caracterizando los no...
| Autor: | |
|---|---|
| Tipo de recurso: | tesis doctoral |
| Fecha de publicación: | 2013 |
| País: | España |
| Institución: | Universitat Autònoma de Barcelona |
| Repositorio: | Dipòsit Digital de Documents de la UAB |
| Idioma: | español |
| OAI Identifier: | oai:ddd.uab.cat:113976 |
| Acceso en línea: | https://ddd.uab.cat/record/113976 |
| Access Level: | acceso abierto |
| Palabra clave: | Ordinadors Programari d'aplicació |
| Sumario: | Con la llegada de una amplia variedad de arquitecturas multicore (NUMA, UMA), seleccionar la mejor configuración del nodo de cómputo para una cierta aplicación paralela de memoria compartida, se convierte en la actualidad en un gran reto. Nuestro trabajo hace frente a este tema caracterizando los nodos de cómputo y las aplicaciones. Los nodos se caracterizan ejecutando pequeños programas (o microbenchmarks, μB), que contienen núcleos de estructuras representativas del comportamiento de programas paralelos de memoria compartida. Los μBs ejecutados en cada uno de los nodos nos proporcionan perfiles de rendimiento, o datos medidos del comportamiento, que se almacenan en una base de datos y se utilizan para estimar el comportamiento de nuevas aplicaciones. La aplicación es ejecutada sobre un nodo base para identificar sus fases representativas. Para cada fase se extrae información de rendimiento comparable con la de los μBs, con el fin de caracterizar dicha fase. En la base de datos de los perfiles de rendimiento se localizan aquellos μBs que tienen características similares en comportamiento a cada fase de la aplicación, ejecutados todos sobre el nodo base. Finalmente, se usan los perfiles seleccionados, pero ejecutados sobre los otros nodos candidatos, para comparar el rendimiento de los nodos de cómputo y seleccionar el nodo de cómputo apropiado para la aplicación. |
|---|