Resumen:
|
[EN] The process of translate virtual adresses to physical addresses made by the processor's MMU requires multiple memory acceses to retrieve the input of each of the levels of the tree in the page table structure. The ...[+]
[EN] The process of translate virtual adresses to physical addresses made by the processor's MMU requires multiple memory acceses to retrieve the input of each of the levels of the tree in the page table structure. The TLBs (Translaton Lookaside Buffers) avoids these accesses storing the addresses of pages that have been translated more recently. However, whenever the TLB have a failure, is required complete the entire translation procces accesing multiple times to the page table in memory. The translation process was initially supported by software via the OS (exception handler made by each TLB miss), which greatly slowed the resolution of TLB misses. Fortunately, current processor have hardware support for the translation proccess by an automata called Page Table Walker, which is responsible to access in memory to each translation levels of page table. However, each of these memory accesses involves high latency compared to the access in cache levels, which appear increagsenly faster in relative terms. An effective way to acelerate this translation process is introduce a cache whitin (or near) to the MMU to store partial translations corresponding to each of translation levles of the page tables. Current proposal in this regard show the advantages to use the Page Table Walk Cache (PTWC) in each core. In this paper, in adittion to analyzing these adavantges employment settings of a shared PTWC configuration among dofferent cores make up the CMP. This analysis attemps to show the advantages of using a shared PTWC versus private PTWC
[-]
[ES] El proceso de traducción de direcciones virtuales a direcciones físicas llevado a cabo por la MMU de los procesadores requiere varios accesos a memoria para recuperar la entrada de cada uno de los niveles del árbol ...[+]
[ES] El proceso de traducción de direcciones virtuales a direcciones físicas llevado a cabo por la MMU de los procesadores requiere varios accesos a memoria para recuperar la entrada de cada uno de los niveles del árbol en que se estructura la tabla de páginas. Las TLBs (Translation Lookaside Buffers) evitan estos accesos almacenando las direcciones de páginas que se han traducido mhave been translate ás recientemente. Sin embargo, cada vez que se produce un fallo en la TLB, se requiere llevar a cabo el proceso completo de traducción accediendo múltiples veces a la tabla de páginas en memoria. El proceso de traducción estaba inicialmente soportado por software a cargo del SO (manejador de excepción producida con cada fallo de TLB), lo cual ralentizaba enormemente la resolución de los fallos de TLB. Afortunadamente, los procesadores actuales incorporan soporte hardware al proceso de traducción, mediante un autómata denominado Page Table Walker el cual se encarga de ir accediendo a memoria a los distintos niveles de traducción de la tabla de páginas. No obstante, cada uno de estos accesos a memoria principal entraña una elevada latencia en comparación con los accesos a los niveles de cache, los cuales aparecen cada vez más rápidos en términos relativos. Una manera efectiva para acelerar este proceso de traducción es introducir una cache dentro (o cerca) de la MMU para almacenar las traducciones parciales correspondientes con cada uno de los niveles de traducción de la tabla de páginas. Las propuestas actuales en este sentido ponen de manifiesto las ventajas del uso de la Page Table Walk Cache (PTWC) en cada núcleo. En este trabajo, además de analizar dichas ventajas, analiza las que se deriva del empleo de una configuración de PTWC compartida entre los distintos núcleos que componen el CMP. Dicho análisis trata de mostrar las ventajas del empleo de una PTWC compartida frente a una configuración de PTWC privadas
[-]
|