Static WCET Analysis vs. Measurement: What is the Right Way to Access Real-Time Task Timing? David Fleeman { Center for Intelligent, Distributed & Dependable Systems Ohio University Athens, OH Panel Session WPDRTS 2004 April 26, 2004
2 Organization of the Panel Introduction –David Fleeman Center for Intelligent, Distributed & Dependable Systems (CIDDS), Ohio University, USA. Speakers –Christian Ferdinand “Worst Case Execution Time Prediction by Static Program Analysis” –Charles Cavanaugh “On Static WCT Analysis vs. Run-time Monitoring of Execution Time” –Frank Mueller “Timing Analysis: In Search of Multiple Paradigms” Panel Discussion –Peter Puschner Technische Universitat, Vienna, Austria.
3 Introduction Two common methods to calculate/collect resource usage profiles: –Static WCET Analysis –Measurement Compiler-time analysis of the code can be used to determine the longest execution sequence. Simulation of an application can be used to gather measured execution time. If you have resource usage profiles for all applications (and some additional information), then you can estimate/calculate the execution time of a particular application when deployed. This panel will explore the methods and the benefits / drawbacks of both Static WCET Analysis and Measurement.
4 What Types of Applications? Hard Real-Time: Can not miss deadlines. Firm Real-Time: Acceptable to temporarily miss deadlines. Soft Real-Time: Acceptable to miss deadlines, but not desirable. Non Real-Time: Batch jobs and best-effort
5 What Types of Applications? Multiple Levels of Fidelity Affected by Environmental Factors NoFixedDynamic YesAdaptableDynamic, Adaptable Fixed: Execution requirements do not change Dynamic: Execution requirements are dependent on environmental conditions such as load. Adaptable: Execution requirements are dependent on the current level of fidelity such as at a lower frame rate for the UAV system.
6 A Motivating Application System Extrinsic Attributes (QARMA terminology) –Environmental conditions that are out of the control of the system that may affect both the resource usage and the “benefit / utility” of the system. Service Attributes (QARMA terminology) –Control knobs that can be adjusted to affect both the resource usage and the “benefit / utility” of the system. Image Processing System –EA: Camera Capture Rate from 0 images/sec to 3 images/sec –EA: Cloud Cover of the Earth’s atmosphere from 0-100% –SA: Pixel Percentage to be processed (discrete set) –SA: Compression algorithm (discrete set) The cyclic execution time dependent on the pixel percentage and compression algorithm. The total resource usage also dependent upon the camera rate.
7 Issues With Measurement Profile the cyclic execution time of each application at the various settings for service and extrinsic attributes. –May be difficult to simulate appropriate extrinsic attributes that will cover all run-time situations. –May be difficult to isolate the application from the rest of the system in order to avoid unwanted contention. –May not capture actual WCET resulting in possible missed deadlines at run-time. –Must repeat this process for a lot of profiling points.
8 Issues With Static WCET Analysis Profile the cyclic execution time of each application at the various settings for service and extrinsic attributes. –We defer this question to the panel?
9 Interesting Questions Can Static WCET Analysis be used to capture WCET for a particular configuration and/or environment for a dynamic and adaptable system? In normal execution, how much of the CPU resource is under-utilized while reserving cycles for the WCET scenario? Can Static WCET Analysis and Measurement be used in tandem to improve system performance?
10 Perhaps Another Discussion: Run-Time Issues Operating System –Interrupts –Scheduling Algorithm –Real-time or not Contention for Shared Resources Affects Execution Time –Disk accesses –Bandwidth through network channels –Memory paging How do you calculate the execution time for the actual deployed application when we have all these run-time issues? How useful are these WCET and measured profiles?