Ayuda
Ir al contenido

Dialnet


Hardware and software support for distributed shared memory in chip multiprocessors

  • Autores: Carlos Villavieja Prados
  • Directores de la Tesis: Josep Ignasi Navarro Mas (dir. tes.), Alejandro Ramírez Bellido (codir. tes.)
  • Lectura: En la Universitat Politècnica de Catalunya (UPC) ( España ) en 2012
  • Idioma: español
  • Tribunal Calificador de la Tesis: Yale N. Patt (presid.), Julita Corbalán González (secret.), Xavier Martorell Bofill (voc.), Dimitrios S. Nikolopoulos (voc.), Abraham Mendelson (voc.)
  • Materias:
  • Texto completo no disponible (Saber más ...)
  • Resumen
    • Esta tesis propone mecanismos hardware y software para permitir la ejecución eficiente de aplicaciones sin acceso a su código fuente (legacy applications) en mullicares que incluyen memorias scratchpad dentro del chip.

      El bajo consumo y su tiempo de acceso hacen de las memorias scratchpad un candidato idóneo para incluirlas dentro del chip. Sin embargo, las aplicaciones parallelas ya existentes no hacen uso de estas memorias para mejorar su rendimiento porque no se programaron para usarlas.

      Las memorias scratchpad son direccionables y tienen que ser gestionadas por software a diferencia de las memorias cache que son manejadas automáticamente por hardware.

      Esta tesis propone el uso de un espacio único de direcciones global para permitir el acceso a memorias dentro del chip con una simple instrucción load/store. De este modo, no se requiere el uso de extensas librerías (API) para la gestión de estas memorias. También se propone la extensión de las llamadas de gestión de memoria dinámica para permitir al programador, si lo requiere, especificar donde quiere ubicar los datos de su aplicación en el chip.

      Para aplicaciones sin acceso al código fuente, proponemos una serie de mecanismos basados en la migración de páginas denominados FELI (Fitting Everyhing Local In), para automáticamente mover los datos más usados por las aplicaciones a las memorias on-chip. De este modo, promovemos la localidad de las aplicaciones reduciendo el tiempo de acceso medio a memoria Entre los mecanismos que propone en esta tesis se ha introducido una serie de contadores en las TLBs de los procesadores para monitorizar el acceso a los datos. También se ha propuesto añadir una cache de nivel O para reducir la caga de accesos y de consumo energético de la MMU.

      Los experimentos desarrollados comparan la propuesta de esta tesis de una arquitectura sin caches y con scratchpads exclusivamente como memorias internas en un multicore contra una arquitectura clásica basada en caches. Nuestros experimentos muestran que podemos conseguir un tiempo de acceso medio similar en ambas arquitecturas y que mediante migración de paginas, los mecanismos consiguen guardar el 95% de los datos de las aplicaciones en el chip. De esta forma, reducimos considerablemente el consumo energético de las aplicaciones debido al bajo consumo de las memorias usadas. Adicionalmente, hemos extendido los mecanismos para explorar sus resultados en una arquitectura compuesta por varios chips. Los resultados muestran que cuando utilizamos estos mecanismos en una arquitectura multichip el rendimiento de las aplicaciones baja debido al incremento de accesos fuera del chip a otras memorias.

      Finalmente, esta tesis propone una mejora del proceso de sincronización de las TLBs de un multicore, conocido como TLB Shootdown.

      En arquitecturas con multiprocesadores nos encontramos con un gran número de situaciones donde hay que migrar páginas o cambiar los permisos de una entrada en la tabla de páginas del Sistema Operativo. Para mantener las TLBs coherentes es necesario una transacción que las invalide. En este sentido, debido a la gran penalización que sufren las aplicaciones en este escenario, hemos propuesto un directorio de segundo nivel, DiDi (Dictionary Directory), que almacena en un mapa de bits que procesadores tienen cada entrada de TLB. Además, hemos añadido un mecanismo hardware para evitar el uso de interrupciones entre procesadores en invalidaciones de TLB remotas. Los resultados muestran que usando dichos mecanismos el proceso de TLB shootdown no es tan costoso y podemos mejorar el rendimiento de algunas aplicaciones hasta 3 veces cuando se usan máquinas con un gran numero de procesadores.


Fundación Dialnet

Dialnet Plus

  • Más información sobre Dialnet Plus

Opciones de compartir

Opciones de entorno