Mostrar el registro sencillo del ítem

dc.creatorTorres, Giovane de Oliveirapt_BR
dc.date.accessioned2019-04-24T17:42:26Z
dc.date.available2019-04-24T17:42:26Z
dc.date.issued2018-04-20
dc.identifier.citationTORRES, Giovane de Oliveira. An Evaluation of Memory Controllers for Non-Volatile Memories. 2018. 77 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós-Graduação em Computação, Centro de Desenvolvimento Tecnológico, Universidade Federal de Pelotas, Pelotas, 2018.pt_BR
dc.identifier.urihttp://guaiaca.ufpel.edu.br/handle/prefix/4350
dc.description.abstractMany demands which include performance and energy consumption are present in current computational systems. In this context, actual memory technologies are critical components which affect directly both performance and energy cost of a system. Thus, memory needs improvements since they could be reaching its scalability limit. One of the alternatives to improve memory subsystems is the use of non-volatile memories (NVMs). These memories have overall low energy consumption and better scalability when comparing with volatile memories. However, NVMs still have issues which need to be overcome in order to allow large-scale use. Those issues include costly write operations (both on latency and energy) and lower material endurance if compared to current memory technologies. Parallel to that, one difficulty to adopt NVMs as main memories in computational systems is related to providing a proper scheduling of memory operations – as it should cope with the particular characteristics of NVMs. With that issues in mind, this work presents a memory controller implementation – in addition to that, a runtime analysis of memory operations in NVM-based systems is performed. To implement a memory controller, we use Gem5 and NVMain simulators, since their combination could reach runtime evaluations that this work aims. Then, the implemented controller was tested by running applications from MediaBench and MiBench benchmark set. With that, the controller was analyzed under different configurations. Tests were performed using the three most well-known and studied NVMs (PCRAM – Phase Change Random Access Memory, RRAM – Resistive Random Access Memory and STT-RAM – Spin Transfer Torque Random Access Memory). The main observations that could be highlighted in this work were: (i) while running the benchmarks in isolation, the time spent in serving memory requests is very low, not surpassing 2% of the total execution time of any application tested, (ii) when running the memory controller under different NVM technologies, latencies of read and write operations in overall were mostly impacted by the different type of memories used, (iii) when using queues with variable sizes to hold memory requests, it made negligible difference in overall performance, due to applications having small busy periods, i.e., generating and serving a small number of memory requests in detriment of other operations. Lastly, a comparison between the implemented memory controller and NVMain default memory controllers was performed, which pointed out that in the majority of the studied cases, the proposed memory controller may need extra techniques to get better performance.pt_BR
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESpt_BR
dc.languageporpt_BR
dc.publisherUniversidade Federal de Pelotaspt_BR
dc.rightsOpenAccesspt_BR
dc.subjectHierarquias de memóriapt_BR
dc.subjectArquitetura de computadorespt_BR
dc.subjectMemórias não voláteispt_BR
dc.subjectMemory hieararchiespt_BR
dc.subjectComputer architecturespt_BR
dc.subjectNon-volatile memoriespt_BR
dc.titleAn evaluation of memory controllers for non-volatile memoriespt_BR
dc.title.alternativeUma avaliação de controladoras de memória para memórias não voláteispt_BR
dc.typemasterThesispt_BR
dc.contributor.authorLatteshttp://lattes.cnpq.br/1133406353527050pt_BR
dc.contributor.advisorLatteshttp://lattes.cnpq.br/5401660213198750pt_BR
dc.contributor.advisor-co1Pilla, Laercio Lima
dc.contributor.advisor-co1Latteshttp://lattes.cnpq.br/2020489905881170pt_BR
dc.description.resumoExistem atualmente diversas demandas nas questões de desempenho e consumo energético em sistemas computacionais. Dentro deste contexto, as tecnologias de memórias usadas atualmente são consideradas componentes críticos que afetam diretamente tanto desempenho quanto consumo energético dentro em um sistema. Com isto, existe a necessidade de que memórias apresentem melhorias, já que estas talvez estejam chegando no seu limite de escalabilidade. Uma das alternativas para melhorar o subsistema de memória é o uso de memórias não voláteis (NVMs). Estas memórias têm em geral baixo consumo energético e melhor escalabilidade ao comparar com tecnologias voláteis. Porém, NVMs apresentam problemas que precisam ser superados para que estas possam ser utilizadas em larga escala. Estes problemas remetem ao alto custo de operações de escrita em memória tanto em latência quanto em consumo energético, além de durabilidade do material usado nas NVMs sendo inferior se comparado à tecnologias de memória atuais. Paralelo a isto, uma das dificuldades para adotar uma NVM como memória principal em sistemas computacionais também inclui dificuldades em propor um escalonamento de operações de memórias, já que torna-se necessário lidar com as características de NVMs. Com estes problemas em mente, esse trabalho apresenta uma implementação de controladora de memória, juntamente com uma análise em tempo de execução em sistemas baseados em NVMs. Para implementação de uma controladora de memória, são utilizados os simuladores Gem5 e NVMain, visto que a combinação destas atende ao desejo do trabalho de efetuar avaliações em tempo de execução. Com isto, a controladora implementada passou por testes com aplicações do conjunto de benchmarks Media-Bench e MiBench. Assim, a controladora foi analisada sobre diferentes configurações. Testes foram feitos usando as três tecnologias de NVMs mais conhecidas e estuadas (PCRAM – Phase Change Random Access Memory, RRAM – Resistive Random Access Memory e STT-RAM – Spin Transfer Torque Random Access Memory). As principais observações feitas por este trabalho foram: (i) executando os benchmarks isoladamente, o tempo gasto em atender requsições de memória foi baixo, não superando 2% do tempo total de execução de qualquer aplicação, (ii) ao executar a controladora de memória com diferentes NVMs, as latências de operações de memória foram impactadas fortemente pelo tipo de tecnologia utilizada, (iii) ao utilizar diferentes tamanhos de filas para atender requisições de memórias, o impacto causado por esta variação foi considerado desprezível, já que as aplicações executadas geraram e atenderam poucas operações de memórias em detrimento de outras operações. Por fim, uma análise de desempenho da controladora implementada com as controladoras de memória fornecidas pelo NVMain, sendo observado que na maioria dos casos a controladora proposta e avaliada talvez necessite de inclusão de outras técnicas para a extração de melhor desempenho.pt_BR
dc.publisher.departmentCentro de Desenvolvimento Tecnológicopt_BR
dc.publisher.programPrograma de Pós-Graduação em Computaçãopt_BR
dc.publisher.initialsUFPelpt_BR
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOpt_BR
dc.publisher.countryBrasilpt_BR
dc.contributor.advisor1Pilla, Maurício Limapt_BR


Ficheros en el ítem

Thumbnail
Thumbnail
Thumbnail
Thumbnail

Este ítem aparece en la(s) siguiente(s) colección(ones)

Mostrar el registro sencillo del ítem