Data-Driven Approach to Estimate WCET for Real-Time Systems
Abstract
Estimating Worst-Case Execution Time (WCET) is paramount for developing Real-Time and Em- bedded systems. The operating system’s scheduler uses the estimated WCET to schedule each task of these systems before the assigned deadline, and failure may lead to catastrophic events such as resource damage or even life loss. These systems must satisfy the timing constraints. For instance, it is essential to know that car airbags open fast enough to save lives. The major components required to estimate WCET are architecture or platform, application, and worst-case data. In this regard, we propose novel methods for these components using machine learning techniques to estimate WCET safely and precisely to make these systems more predictable and reliable than traditional approaches.
• Estimation of WCET on GPU architecture: With the advances in machine learning and artificial intelligence in every field of life, due to its tendency to solve many problems with accuracy, it requires Graphics Processing Units (GPUs) to provide massive parallelism for computation. GPUs are designed to provide high-performance throughput, but their integration into real-time systems focuses on predictability because most safety-critical applications have strict deadlines that need to be followed to avoid unwanted situations. We propose a machine-learning approach to estimate the WCET of the GPU kernel from the binary of the applications. The approach helps reduce the significant design of space exploration in a short time. We use a measurement-based approach to train the machine-learning model using different kernel instructions, which can predict the WCET of the GPU kernel to detect timing misconfiguration in the later development phase of the systems.
• Estimation of WCET on Mixed-Criticality Systems: In Mixed-Criticality (MC) Systems, there is a trend of having multiple functionalities upon a single shared computing platform for better cost and power efficiency. In this regard, estimating the suitable optimistic WCET based on the different system modes is essential to provide these functions. A single application has assigned multiple WCETs based on the criticality of the system, such as safety-critical, mission-critical, and non-critical. We propose ESOMICS, a novel method to estimate suitable optimistic WCET using a Machine Learning model. Our approach is based on the application’s source, and the model is trained based on the large data set. To prove the effectiveness of our approach, we evaluated it with a newly defined metric EDT using an analytical solution that allows us to compute the optimum value in a mixed-criticality system based on experimentation. Our experimental results outperform all the previous state-of-the-art approaches.
• Estimation of Worst-Case Data for WCET: Worst-Case Data, which gives maximum execution time, plays a vital role in the estimation of WCET. An evolutionary algorithm, such as the Genetic Algorithm, has been employed to generate the Worst-Case Data. The complexity of an evolutionary algorithm requires the use of several computational resources. We propose a method to replace the hardware and simulator used in the evolution process with Machine Learning models. This
method reduces the overall time required to generate Worst-Case Data. Different machine learning models are trained to integrate with genetic algorithms. The feasibility of the proposed approach is validated using benchmarks from different domains. The results show the speedup in the generation of Worst-Case Data.
• Estimation of Early WCET: WCET is available to us in the last stage of systems development when the hardware is available and the application code is compiled. Different methodologies mea- sure the WCET, but none give early insights into WCET, which is crucial for system development. If the system designers overestimate WCET in the early stage, then it would lead to an overquali- fied system, which will increase the cost of the final product, and if they underestimate WCET in the early stage, then it would lead to financial loss as the system would not perform as expected. We propose to estimate early WCET using machine learning and deep neural networks as approx- imate predictor models for hardware architecture and compilers. This model predicts the WCET based on the source code without compiling and running on the hardware architecture. The result of the WCET needs to be revised to be used as an upper bound on the WCET. However, getting these results in the early stages of system development is an essential prerequisite for the system’s dimensions and hardware setup configuration.