Mostrar registro simples

dc.contributor.advisorCarro, Luigipt_BR
dc.contributor.authorLima, João Paulo Cardoso dept_BR
dc.date.accessioned2025-05-15T06:51:19Zpt_BR
dc.date.issued2025pt_BR
dc.identifier.urihttp://hdl.handle.net/10183/291703pt_BR
dc.description.abstractThe integration of AI/ML methods across various domains has been fueled by the vast amount of accumulated data over the past years. However, the energy-intensive nature of data-centric applications, compounded by the limitations of current computing models rooted in von Neumann’s design principle, poses significant challenges. As data volumes continue to rise, the demand for compute power escalates, necessitating the exploration of energy-efficient platforms. In response, data-centric processing, also known as computing-in-memory (CIM), seeks to minimize data movement by computing at the most appropriate location in the memory hierarchy. Emerging memory technologies and brain-inspired hardware have emerged as promising solutions, offering reduced power consumption, high parallelism, and the emulation of a variety of computational primitives at the memory device. Content-Addressable Memories (CAMs) are versatile storage structures inspired by the brain’s associative structure, accessing memory based on content rather than location. This thesis provides a comprehensive overview of CAMs, exploring their evolution, strengths, challenges, and applications within CIM systems. Demonstrating their versatility, we employ CAMs to efficiently implement a variety of crucial compute primitives, in both exact and approximate manner, underscoring their potential for advancing data-driven processing. Through cross-level design and evaluation, we identify efficient transformations and mapping solutions, tailored to technology-specific characteristics and limitations. Then, we present hardware/software co-optimization techniques applied to non-volatile CAMs, considering intrinsic characteristics of emerging technologies like RRAM, FeFET, and spintronics. To automate these optimizations, we develop design tools for seamless integration with CAM-based simulated systems. We highlight the versatility of CAM-based systems in efficiently implementing reconfigurable logic, associative processing, automata processing, similarity search, and dot-product engines, making them highly applicable to AI/ML workloads. Ultimately, our efforts aim to facilitate the integration of device-specific optimizations into compiler frameworks tailored for CAM systems, thereby enhancing the programmability of CIM systems.en
dc.description.abstractA integração de IA/ML em diversas áreas tem sido impulsionada pela vasta quantidade de dados acumulados ao longo dos últimos anos. No entanto, as aplicações centradas em dados são tipicamente energeticamente ineficientes por conta das limitações dos atuais modelos de computação baseados na arquitetura de von Neumann. À medida que os volumes de dados continuam aumentando, a demanda por poder de computação também cresce, motivando a busca por sistemas mais eficientes. Em resposta a essa demanda, o processamento centrado nos dados, também conhecido como computação em memória (CIM), busca minimizar a transferência de dados ao realizar cálculos na localização mais apropriada na hierarquia de memória. Tecnologias de memória emergentes e hardware inspirado no cérebro surgiram como soluções promissoras, oferecendo menor consumo de energia, alto paralelismo e a emulação de uma variedade de primitivas computacionais diretamente no dispositivo de memória. As Memórias Endereçáveis por Conteúdo (CAMs) são estruturas de armazenamento versáteis inspiradas na estrutura associativa do cérebro, acessando dados com base no conteúdo em vez de sua localização. Esta tese fornece uma visão abrangente das CAMs, explorando sua evolução, pontos fortes, desafios e aplicações em sistemas de CIM. Para demonstrar sua versatilidade e potencial para o avanço do processamento orientado a dados, este trabalho usa CAMs para implementar de maneira eficiente uma variedade de primitivas computacionais cruciais. Através de design e avaliação em múltiplos níveis, esta tese apresenta transformações e soluções de mapeamento adaptadas às características e limitações específicas de cada tecnologia de memória emergente, como RRAM e spintronics. Para automatizar essas otimizações, foram desenvolvidas ferramentas de design para mapear diversas aplicações em sistemas reconfiguráveis baseados em CAMs, destacando sua versatilidade na implementação de lógica reconfigurável, processamento associativo, processamento de autômatos, busca por similaridade e acceleradores de produto escalar, tornando-os altamente aplicáveis ao domínio de IA/ML. Em última análise, nossos esforços visam facilitar a integração de otimizações específicas do dispositivo em frameworks de compiladores adaptados para sistemas CAM, aprimorando assim a programabilidade dos sistemas CIM.pt_BR
dc.format.mimetypeapplication/pdfpt_BR
dc.language.isoengpt_BR
dc.rightsOpen Accessen
dc.subjectComputação na memóriapt_BR
dc.subjectReconfigurable computingen
dc.subjectMemória de conteúdo endereçávelpt_BR
dc.subjectAssociative processingen
dc.subjectDesign toolsen
dc.subjectSistemas reconfiguráveispt_BR
dc.subjectAprendizado de máquinapt_BR
dc.subjectEmerging non-volatile memoryen
dc.subjectProcessamento de dadospt_BR
dc.subjectMemória não volátilpt_BR
dc.titleArchitecture optimization and design tools for CAM-based accelerators : from general-purpose to machine learningpt_BR
dc.typeTesept_BR
dc.identifier.nrb001257094pt_BR
dc.degree.grantorUniversidade Federal do Rio Grande do Sulpt_BR
dc.degree.departmentInstituto de Informáticapt_BR
dc.degree.programPrograma de Pós-Graduação em Computaçãopt_BR
dc.degree.localPorto Alegre, BR-RSpt_BR
dc.degree.date2025pt_BR
dc.degree.leveldoutoradopt_BR


Thumbnail
   

Este item está licenciado na Creative Commons License

Mostrar registro simples