Improving the effective use of multithreaded architectures: implications on compilation, thread assignment, and timing analysis

Tesis doctoral de Petar Radojkovic

Esta tesis presenta soluciones a distinto nivel que mejoran el uso efectivo de arquitecturas multinúcleo/multihilo. Las contribuciones de la tesis pueden ser clasificadas en tres grupos. En el primero, proponemos varios métodos para la asignación de aplicaciones de red que funcionan en servidores multinúcleo/multihilo. En el segundo, analizamos el problema de la partición de gráfos que es una parte del proceso de compilación de las aplicaciones multihilo. Finalmente, presentamos un método que mejora el análisis de tiempo de ejecución de las aplicaciones en el entorno de tiempo real. A continuación realizamos un resumen de cada una de las contribuciones: (1) asignación de aplicaciones en procesadores multinúcleo/multihilo: la última generación de procesadores multinúcleo/multihilo tiene distintos niveles de reparto de recursos (p.Ej. Entre aplicaciones funcionando en el mismo núcleo o recursos compartidos entre todas las aplicaciones funcionando en el procesador). Así pues, el modo en que las aplicaciones de determinada carga de trabajo son asignadas a los hilos de un procesador determina qué recursos comparten las aplicaciones. Por consiguiente, ese tipo de asignación puede afectar significativamente al rendimiento del sistema. En esta tesis, demostramos la importancia de la asignación de aplicaciones de red que funcionan en servidores multinucleo/multihilo. También presentamos tsbsched y blackbox scheduler, métodos para la asignación de aplicaciones de red que funcionan en procesadores con varios niveles de reparto de recursos. Finalmente, proponemos un punto de vista estadístico al problema de la asignación de aplicaciones. En particular, demostramos que realizar una muestra de varios cientos o varios miles de asignaciones de aplicaciones de forma aleatoria supondrá, con una alta probabilidad, capturar al menos una asignación de entre el 1% de las mejores asignaciones. También describimos el método que estima el rendimiento óptimo del sistema para una determinada carga de trabajo. (2) partición kernel en aplicaciones streaming un paso importante en la compilación de un programa streaming a una aplicación multihilo es la partición de los kernels. Encontrar la partición de los kernels óptima es, sin embargo, un problema insuperable. Nosotros proponemos abordar el problema de la partición de los kernels desde un punto de vista estadístico. Describimos un método que estima estadísticamente el rendimiento de la partición óptima. Demostramos que el método de tomar muestras es una parte importante del análisis, y que no todos los métodos que generan muestras aleatorias proveen buenos resultados. También demostramos que las propias muestras aleatorias pueden ser utilizadas para encontrar una buena partición de los kernels, las cuales podrían ser una alternativa a los métodos heurísticos. (3) procesadores multinúcleo/multihilo en entornos de tiempo real a pesar de los beneficios que los procesadores multinúcleo/multihilo pueden ofrecer, el entorno de tiempo real todavía no ha aceptado un cambio hacia este tipo de arquitecturas. El principal reto con las arquitecturas multinúcleo/multihilo es la dificultad de predecir el tiempo de ejecución cuando varias tareas funcionan a la vez. En las arquitecturas multinúcleo/multihilo el tiempo de ejecución de la tarea, y por tanto el peor tiempo de ejecución, depende de la interferencia con otras tareas ejecutadas al mismo tiempo en un mismo procesador. Nosotros proponemos una metodología que cuantifica la desaceleración que una tarea puede experimentar debido a la colisión con otras tareas que están siendo ejecutadas al mismo tiempo en el procesador multinúcleo/multihilo. La metodología ha sido aplicada a un estudio de caso en el cual distintas aplicaciones de tiempo real fueron ejecutadas en varios procesadores multinúcleo/multihilo.

 

Datos académicos de la tesis doctoral «Improving the effective use of multithreaded architectures: implications on compilation, thread assignment, and timing analysis«

  • Título de la tesis:  Improving the effective use of multithreaded architectures: implications on compilation, thread assignment, and timing analysis
  • Autor:  Petar Radojkovic
  • Universidad:  Politécnica de catalunya
  • Fecha de lectura de la tesis:  19/07/2013

 

Dirección y tribunal

  • Director de la tesis
    • Francisco Javier Cazorla Almeida
  • Tribunal
    • Presidente del tribunal: Jaime Abella ferrer
    • jochen Behrens (vocal)
    • (vocal)
    • (vocal)

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio