{"id":112171,"date":"2012-09-01T00:00:00","date_gmt":"2012-09-01T00:00:00","guid":{"rendered":"https:\/\/www.deberes.net\/tesis\/sin-categoria\/hardware-and-software-support-for-distributed-shared-memory-in-chip-multiprocessors\/"},"modified":"2012-09-01T00:00:00","modified_gmt":"2012-09-01T00:00:00","slug":"hardware-and-software-support-for-distributed-shared-memory-in-chip-multiprocessors","status":"publish","type":"post","link":"https:\/\/www.deberes.net\/tesis\/tecnologia-de-los-ordenadores\/hardware-and-software-support-for-distributed-shared-memory-in-chip-multiprocessors\/","title":{"rendered":"Hardware and software support for distributed shared memory in chip multiprocessors"},"content":{"rendered":"<h2>Tesis doctoral de <strong> Carlos Villavieja Prados <\/strong><\/h2>\n<p>Esta tesis propone mecanismos hardware y software para permitir la ejecuci\u00f3n eficiente de aplicaciones sin acceso a su c\u00f3digo 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\u00f3neo 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 automaticamente por hardware.  esta tesis propone el uso de un espacio \u00fanico de direcciones global para permitir el acceso a memorias  dentro del chip con una simple instrucci\u00f3n load\/store. De este modo, no se requiere el uso de extensas librerias (api) para la gesti\u00f3n de estas memorias. Tambien se propone la extensi\u00f3n de las llamadas de gesti\u00f3n de memoria din\u00e1mica para permitir al programador, si lo requiere, especificar  donde quiere ubicar los datos de su aplicaci\u00f3n  en el chip.  para aplicaciones sin acceso al c\u00f3digo fuente, proponemos  una serie de mecanismos basados en la migraci\u00f3n  de p\u00e1ginas denomicados feli (fitting everyhing local in), para autom\u00e1ticamente mover los datos m\u00e1s 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. Tambien se ha propuesto anadir una cache de nivel o para reducir la caga de accesos y de consumo energ\u00e9tico 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\u00e1sica basada en caches. Nuestros experimentos  muestran que podemos conseguir un tiempo de acceso medio similar en ambas arquitecturas  y que mediante migracion  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\u00e9tico 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 mu!Tichip e! 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 sincronizacion de las tlbs de un multicore, conocido  como tlb shootdown. en arquitecturas con multiprocesadores nos encontramos  con un gran n\u00famero de situacions donde hay que migrar p\u00e1ginas o cambiar los permisos de una entrada en la tabla de p\u00e1ginas del sistema operativo. Para mantener las tlbs coherentes es necesario  una transacci\u00f3n  que las invalide. En este sentido, debido a la gran penalizaci\u00f3n 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\u00e1s, hemos a\u00f1adido 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\u00e1quinas con un gran numero de procesadores.<\/p>\n<p>&nbsp;<\/p>\n<h3>Datos acad\u00e9micos de la tesis doctoral \u00ab<strong>Hardware and software support for distributed shared memory in chip multiprocessors<\/strong>\u00ab<\/h3>\n<ul>\n<li><strong>T\u00edtulo de la tesis:<\/strong>\u00a0 Hardware and software support for distributed shared memory in chip multiprocessors <\/li>\n<li><strong>Autor:<\/strong>\u00a0 Carlos Villavieja Prados <\/li>\n<li><strong>Universidad:<\/strong>\u00a0 Polit\u00e9cnica de catalunya<\/li>\n<li><strong>Fecha de lectura de la tesis:<\/strong>\u00a0 09\/01\/2012<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3>Direcci\u00f3n y tribunal<\/h3>\n<ul>\n<li><strong>Director de la tesis<\/strong>\n<ul>\n<li>Nacho Navarro Mas<\/li>\n<\/ul>\n<\/li>\n<li><strong>Tribunal<\/strong>\n<ul>\n<li>Presidente del tribunal: yale Patt <\/li>\n<li>abraham Mendelson (vocal)<\/li>\n<li>xavier Martorell bofill (vocal)<\/li>\n<li>dimitris s. Nikolopoulos (vocal)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tesis doctoral de Carlos Villavieja Prados Esta tesis propone mecanismos hardware y software para permitir la ejecuci\u00f3n eficiente de aplicaciones [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"footnotes":""},"categories":[4810,15596,2535],"tags":[223273,223271,221029,194998,105598,223272],"class_list":["post-112171","post","type-post","status-publish","format-standard","hentry","category-arquitectura-de-ordenadores","category-politecnica-de-catalunya","category-tecnologia-de-los-ordenadores","tag-abraham-mendelson","tag-carlos-villavieja-prados","tag-dimitris-s-nikolopoulos","tag-nacho-navarro-mas","tag-xavier-martorell-bofill","tag-yale-patt"],"_links":{"self":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts\/112171","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/comments?post=112171"}],"version-history":[{"count":0,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/posts\/112171\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/media?parent=112171"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/categories?post=112171"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.deberes.net\/tesis\/wp-json\/wp\/v2\/tags?post=112171"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}