Worst-Case Execution Time Calculation for Query-Based Monitors by Witness Generation

by   Márton Búr, et al.

Runtime monitoring plays a key role in the assurance of modern intelligent cyber-physical systems, which are frequently data-intensive and safety-critical. While graph queries can serve as an expressive yet formally precise specification language to capture the safety properties of interest, there are no timeliness guarantees for such auto-generated runtime monitoring programs, which prevents their use in a real-time setting. The main challenge is that the worst-case execution time (WCET) bounds provided by current static WCET computation methods for such programs can only provide very conservative and impractical estimations, which would result in wasteful resource allocation or inadequate scheduling of monitors. This paper presents a WCET analysis method for data-driven monitoring programs derived from graph queries. The method incorporates results obtained from low-level timing analysis into the objective function of a modern graph solver. This allows the systematic generation of input graph models up to a specified size (referred to as witness models) for which the monitor is expected to take the most time to complete. Hence the estimated execution time of the monitors on these graphs can be considered as safe WCET. Moreover, in case the runtime graph model outgrows the size that was used to determine WCET at design time, our approach provides a fast but more conservative recomputation of safe execution time bounds on-the-fly using runtime model statistics. The benefit is that such on-line WCET estimation is still comparable to the one which solely relies on traditional approaches. Finally, we perform experiments with query-based programs executed in a real-time platform over a set of generated models to investigate the relationship between execution times and their estimates, and we compare WCETs obtained with the different approaches.



There are no comments yet.


page 1

page 2

page 3

page 4


FPGA Stream-Monitoring of Real-time Properties

An essential part of cyber-physical systems is the online evaluation of ...

Scalable and Precise Estimation and Debugging of the Worst-Case Execution Time for Analysis-Friendly Processors

Estimating the Worst-Case Execution Time (WCET) of an application is an ...

Adaptive Safety Margin Estimation for Safe Real-Time Replanning under Time-Varying Disturbance

Safe navigation in real-time is challenging because engineers need to wo...

Estimating Latencies of Task Sequences in Multi-Core Automotive ECUs

The computation of a cyber-physical system's reaction to a stimulus typi...

Designing Neural Networks for Real-Time Systems

Artificial Neural Networks (ANNs) are increasingly being used within saf...

On the benchmarking of partitioned real-time systems

Avionic software is the subject of critical real time, determinism and s...

BUNDLEP: Prioritizing Conflict Free Regions in Multi-Threaded Programs to Improve Cache Reuse -- Extended Results and Technical Report

In BUNDLE: Real-Time Multi-Threaded Scheduling to Reduce Cache Contentio...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.