Analysis of performance, power consumption, and energy efficiency of modern fpgas and microprocessors
- Olivito del Ser, Francisco Javier
- Jesús Javier Resano Ezcaray Director/a
Universidad de defensa: Universidad de Zaragoza
Fecha de defensa: 29 de junio de 2017
- Hortensia Mecha López Presidenta
- Víctor Viñals Yufera Secretario/a
- Antonio Plaza Vocal
Tipo: Tesis
Resumen
The irruption of mobile computing in the last years has highlighted energy efficiency more than ever. The computational requirements for battery-dependent devices are becoming more and more demanding while the power budget remains tight. Heterogeneous computing has emerged as the mainstream to satisfy the increasingly computational requirements while keeping power consumption low. Systems-on-chip (SoCs) include not only general-purpose processors (GPPs) but also many specific processors to efficiently manage frequent tasks in mobile computing, such as communications, security, location, and others. However, those tasks that do not fit any of these specific processors rely on the GPP, where efficiency plummets. Programmable logic is hardware whose functionality is not defined at the time of manufacture, and can be configured as many times as required, even at runtime. The main manufacturers have released SoCs that include programmable logic tightly coupled with the processing system, allowing the developers to improve efficiency by dynamically including specific processors for any computationally-intensive task. In this dissertation, we explore the tradeoffs of this approach taking the artificial intelligence (AI) on board games as a case study. Board games are frequently found in mobile devices, and in fact, games as Chess are part of the benchmarks used to measure the performance of mobile SoCs. Board games are not only popular but also computationally-demanding. Thus, they are good candidates to benefit from hardware acceleration. As a first contribution, we designed bare hardware implementations for three different board games (Reversi, Connect6, and Blokus Duo) that increase energy efficiency by several orders of magnitude compared to delegating the work to the GPP. However, the design of complex hardware systems such as the AI for these games noticeably prolongs time-to-market. As a second contribution, we designed solutions based on hardware/software codesign for these games, where only computationally-intensive tasks are delegated to hardware while the remaining functionality continues in software. This approach increases efficiency by an order of magnitude while keeping time-to-market acceptable. Finally, as a third contribution, we measured the additional overheads caused by the configuration process needed to load the hardware accelerators in the SoC, and we have designed a hardware reconfiguration controller that drastically improves the efficiency of this process. The results demonstrate the huge potential of SoCs that include programmable logic. This scheme improves performance and power consumption, and drastically increases energy efficiency, while the penalty in design complexity is affordable. We believe that it is very likely that, in the near future, SoCs that include programmable logic will be frequently found in mobile devices.