Agile development of Domain-Specific solutions for emerging mobile systems
Emerging mobile systems such as robots or Augmented Reality glasses increasingly interact with their physical surroundings. This means they require efficient computing platforms to continuously process a high volume of sensory information in a limited-energy battery-powered device. Highly specialized Domain-Specific System on Chips (DSSoCs) have been recently proposed as a solution to provide this efficiency. However, although efficient, the complexity of DSSoCs driven by a high count of hardware intellectual property (IP) blocks results in a long development time, concretely a long design exploration and implementation time. This is because a high IP count enlarges the design space, makes the search for optimal design difficult, and thus lengthens the exploration time. In addition, each new IP in the system increases the implementation time, i.e., the time associated with converting an algorithm to a hardware IP, verification, and integration. These two problems only worsen as the future system’s intelligence and, thus, computational need expands. This dissertation demonstrates how to mitigate the DSSoC’s long exploration and implementation time by employing efficient resource selection and resource management techniques. We demonstrate how to lower the exploration time using an agile design space exploration (DSE) framework that efficiently selects system resources. Similar to other DSEs, our framework consists of a simulator and an exploration heuristic. In contrast to the state-of-the-art simulators that are either too slow or inaccurate and thus infeasible for sufficient coverage of DSSoCs’ large design space, our simulator is highly suited for DSSoCs as it combines the agility of analytical models and the accuracy of the phase-driven models. Our result shows that this methodology speeds up the state-of-the-art transactional models by 8400x while only incurring a small 1.5% error for a host of complex SoCs. Our DSE also lowers the exploration time by deploying an agile search heuristic that efficiently navigates DSSoCs’ large design space. In this dissertation, we highlight two features for an efficient search heuristic, namely 1) joint-optimization capability to exploit cross-boundary optimizations and 2) architectural awareness to prevent blind traversal of the design space. State-of-the-art solutions either lack the former or the latter. In contrast, our methodology combines the two and speeds up the convergences of the baseline, i.e., the classic simulated annealing (SA) and more modern Multi-Objective optimistic Search (MOOS) by 62× and 35×, respectively. It also improves their Quality Gain and Pareto Hyper Volume. We also demonstrate how to lower the implementation time by replacing high-effort IP customization solutions with low-effort environment-aware resource management ones. Our solution uses the physical environment’s heterogeneity, a prominent characteristic of the mobile edge domain, to its advantage and dynamically manages system resources to improve efficiency. To this end, first, we show that various spatial heterogeneity factors, such as environment congestion, impact the processing payload. Then, we establish that designs that ignore this heterogeneity incur system-level performance and energy degradation and thus require specialized IPs to solve their efficiency problem; However, introducing IPs increases the implementation time and effort. Thus, to address this problem, we provide a resource management runtime that dynamically exploits said compute-environment synergy and improves the system efficiency without introducing customized IPs. We implement our runtime in Robot Operating System (ROS) middleware and evaluate it for autonomous drones without the loss of generality. We compare our runtime with a spatially oblivious system, typical of traditional commercial deployments, whose parameters are statically set at design time. We show that exploiting spatial heterogeneity leads to 4.5x improvement in mission time, 4x improvement in energy efficiency, and 36% reduction in CPU utilization. The contributions made in this dissertation will likely have a long-term impact as, with the end of Moore’s law, highly specialized DSSoCs have shown promise to address general systems’ lack of efficiency. Thus, understanding and further providing techniques to mitigate DSSoCs’ design and development issues are of high importance.