Estudos de técnicas de virtualização de memória em arquiteturas multi-core - Vivencio, Diego Pagliarini (Universidade Federal de São Carlos, 2010)
The use of computer virtualization has grown rapidly in recent years, motivating the research for software and hardware improvements to optimize performance and reduce the bottlenecks inherent of virtualization. In the middle of this decade, the processors has added support for CPU virtualization, simplifying the design of virtual machine monitors, but the employed approach had performance limitations when combined with the virtualization of memory using shadow page tables. Adding support for nested paging hardware was the answer to this problem, providing performance closer to the native, ie, without the virtual abstraction. The multicore processors were the solution to keep the microprocessors' performance growth , as the monolithic architectures were close to their limit. The use of virtualization allows exploiting parallelism offered by them through the simultaneous execution of multiple virtual machines. This study evaluates the virtualization of memory subsystem and its interaction with the multicore architectures, to determine the set of features that maximize performance. We evaluated shadow and nested paging, comparing the use of conventional and large pages to map virtualized memory. We also analyzed the influence due to the presence of a level of cache shared among cores. The results showed that in the evaluated scenario the best performance was achieved by using nested paging using large pages to map memory, while the additional level of cache didn't bring any specific benefits to virtualization.
Keywords: Arquitetura de computador; Virtualização; Multicore; Paginação aninhada; Análise de desempenho; Virtualization; Nested paging and performance analysis; CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO