Architectural support for approximate computing [recurso eletrônico] = Suporte arquitetural para computação aproximada
Isaías Bittencourt Felzmann
TESE
Inglês
T/UNICAMP F349a
[Suporte arquitetural para computação aproximada]
Campinas, SP : [s.n.], 2023.
1 recurso online (105 p.) : il., digital, arquivo PDF.
Orientador: Lucas Francisco Wanner
Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação
Resumo: A Computação Aproximada é uma metodologia que proporciona ganhos em eficiência energética ao relaxar requisitos de qualidade em aplicações resilientes. Várias técnicas de hardware, desenvolvidas sem vínculo com uma aplicação, têm potencial de proporcionar grandes benefícios em cenários...
Ver mais
Resumo: A Computação Aproximada é uma metodologia que proporciona ganhos em eficiência energética ao relaxar requisitos de qualidade em aplicações resilientes. Várias técnicas de hardware, desenvolvidas sem vínculo com uma aplicação, têm potencial de proporcionar grandes benefícios em cenários favoráveis, mas a integração delas em uma arquitetura de propósito geral traz novos desafios para seu controle, tais como determinar, em tempo de execução, que regiões de aplicação se beneficiam de aproximações, que tipos de aproximações são essas, e até que ponto elas são vantajosas. Nesta tese, apresentamos extensões para a arquitetura RISC-V que implementam mecanismos de controle para coordenar múltiplas técnicas de aproximação coexistentes no mesmo sistema. Através dessas extensões, as habilidades de um hardware de aproximação são expostas ao software por meio de registradores para identificação, estruturas de dados e drivers que descrevem a natureza e parâmetros de configuração para cada elemento do sistema aproximado. Isso permite que a pilha de software controle o que e quanto é aproximado em uma aplicação. As aproximações podem ser configuradas e combinadas em tempo de execução, ampliando os horizontes de exploração. Para expor ao software os mecanismos de controle, nós também construímos uma interface em nível de software supervisório contendo uma camada de abstração e permitindo a coexistência de diferentes configurações de aproximação dentre as aplicações que compartilham o processador. Os elementos necessários para esse nível de controle foram implementados em dois níveis: um simulador em software e um protótipo sintetizado para FPGA, que possibilitaram uma demonstração da funcionalidade do sistema e estimativas de custo energético. Nos nossos resultados, selecionamos aproximações para avaliação tanto no simulador como no protótipo em FPGA. Esses resultados destacam a necessidade de integração em nível de arquitetura de aproximações em hardware para melhor avaliação de como aplicações se comportam quando expostas a aproximação. Nesse sentido, esta tese propõe uma nova ferramenta que preenche a lacuna entre o software e hardware de aproximação, permitindo que desenvolvedores avaliem os benefícios e custos de técnicas de aproximação em um ambiente controlado e configurável
Ver menos
Abstract: Approximate Computing offers enhanced energy efficiency by exploring quality relaxation on resilient applications. Application-agnostic hardware-level techniques can provide high benefits under certain scenarios, but their integration on a general-purpose architecture presents novel...
Ver mais
Abstract: Approximate Computing offers enhanced energy efficiency by exploring quality relaxation on resilient applications. Application-agnostic hardware-level techniques can provide high benefits under certain scenarios, but their integration on a general-purpose architecture presents novel control challenges, such as determining, at runtime, what application regions benefit from approximation, which approximations are favorable, and by how much. In this thesis, we present extensions to the RISC-V architecture that implement control mechanisms to orchestrate multiple coexisting approximation techniques within an architecture. Through these extensions, approximate hardware capabilities are exposed to software through identification registers, data structures, and drivers that describe the nature and configuration parameters for each approximate design. Approximations may be configured and combined at runtime, allowing for simplified design space exploration. To allow high-level software to take control of the approximate state of the system, we also built a supervisor-level software interface that provides the hardware abstraction layer of the approximation and supports the coexistence of different levels of reliability within applications that share the processor. The underlying hardware needed to support the control of approximations was implemented in two levels, a software simulator and a prototype synthesized for FPGA, which allowed the functional demonstration of the system and energy estimation. In our experiments, we selected approximations for evaluation both in the simulator and in the FPGA prototype. Our results highlight the need for architectural integration of hardware approximations in order to provide an accurate evaluation of how applications behave when subjected to approximations. To this end, this thesis proposes a novel hardware-software framework that bridges the gap between software and hardware approximations, allowing designers to easily evaluate energy-quality trade-offs of approximation techniques in a controlled and configurable environment
Ver menos
Wanner, Lucas Francisco, 1981-
Orientador
Castro-Godínez, Jorge
Avaliador
Lejbman, Alfredo Goldman Vel
Avaliador
Araújo, Guido Costa Souza de, 1962-
Avaliador
Rigo, Sandro, 1975-
Avaliador
Architectural support for approximate computing [recurso eletrônico] = Suporte arquitetural para computação aproximada
Isaías Bittencourt Felzmann
Architectural support for approximate computing [recurso eletrônico] = Suporte arquitetural para computação aproximada
Isaías Bittencourt Felzmann