Defesa de Mestrado de Maurício Gagliardi Palma

Título do Trabalho
Simulation-driven exploration of NVM as a substitute for DRAM in the main memory
Candidato(a)
Maurício Gagliardi Palma
Nível
Mestrado
Data
Add to Calender 2017-09-18 00:00:00 2017-09-18 00:00:00 Defesa de Mestrado de Maurício Gagliardi Palma Simulation-driven exploration of NVM as a substitute for DRAM in the main memory Sala 85 IC 2 INSTITUTO DE COMPUTAÇÃO mauroesc@ic.unicamp.br America/Sao_Paulo public
Horário
14:00
Local
Sala 85 IC 2
Orientador(a)
Rodolfo Jardim de Azevedo
Banca Examinadora
Banca Examinadora
Titulares (Professores Doutores) Unidade / Instituição
Rodolfo Jardim de Azevedo  IC/UNICAMP
Alexandro José Baldassin  IGCE/UNESP
Luiz Eduardo Buzato  IC/UNICAMP
Suplentes (Professores Doutores) Unidade / Instituição
Edson Borin  IC/UNICAMP
Ricardo Ribeiro dos Santos  FACOM/UFMS
Resumo

O sistema de memória dos computadores tem se baseado fortemente no uso de memórias voláteis para prover um bom desempenho. A tecnologia SRAM é utilizada como um intermediário que acelera o acesso à memória principal, comumente composta pela tecnologia DRAM. Memórias não-voláteis são colocadas como memórias secundárias. Pelo fato dos dados persistentes estarem armazenados no nível de memória mais distante do processador, eles normalmente são manipulados de maneira indireta através de cópias transientes. Tais cópias transientes, além de possívelmente estarem presentes em mais de um nível de memória volátil, podem não ter a mesma forma de suas formas persistentes, o que leva à necessidade de uma tradução entre essas formas. Tecnologias emergentes de memórias não-voláteis (NVMs) prometem possibilitar a existência de dados persistentes na memória principal, permitindo que os mesmos sejam manipulados diretamente, e potencialmente reduzindo a quantidade de cópias transientes. Infelizmente, NVMs ainda não estão amplamente disponíveis no mercado, e pesquisas em seu uso são normalmente feitas através de simulação. Neste documento é apresentado um simulador que tem como fim explorar o uso de NVMs na memória principal. Por enquanto, a tecnologia DRAM provê um tempo de acesso inferior ao das NVMs, restringindo o uso de NVMs na memória principal em questão de desempenho. São mostrados aqui dois cenários para o uso do simulador. No primeiro caso, há a utilização de uma memória principal composta apenas de NVM. Como NVM é mais lenta, são observados certos \textit{slowdows} de até 5,3, mas em alguns programas o desempenho é marginalmente afetado. Em um segundo caso, há a exploração da memória híbrida, onde DRAM e NVM coexistem na memória principal. Uma API, chamada NVMalloc, é fornecida para permitir que programas consigam utilizar a não volatilidade presente na memória principal. É mostrado que há casos onde a manipulação direta dos dados persistentes é vantajosa, mas existem outros em que ainda é preferível trabalhar com cópias transientes na DRAM. É esperado que esse simulador seja utilizado como um ponto de partida para futuras pesquisas sobre o uso de NVMs.