Worst-Case Execution Time
Worst-case execution time (WCET) is the longest possible time a software task can take to execute on a specific hardware platform, measured from release to completion. It is the foundational number upon which all hard real-time schedulability analysis rests: a scheduler can only guarantee that deadlines will be met if it knows, with certainty, the worst-case duration of every task. WCET is not a benchmark or a profile; it is a mathematical upper bound that must hold for all possible inputs, all cache states, and all execution paths.
Computing WCET for modern processors is notoriously difficult because architectural features — caches, pipelines, branch predictors, out-of-order execution — make execution time depend on history in ways that are data-dependent and therefore combinatorially explosive. Static analysis techniques, including abstract interpretation and model checking, attempt to derive safe upper bounds without executing the program on all inputs. The alternative, measurement-based WCET, is easier but produces only probabilistic guarantees, which is an oxymoron in the context of hard real-time verification.
See also: Real-Time System, Rate-Monotonic Scheduling, Abstract Interpretation, Cache Timing Analysis