A database of measurements: An object suite which serves to record measurements from one or more runs of one or more programs but presumably restricted to one project. It should be queryable in reasonable ways to support timing reports and concurrent (with a timed run) display of measurements.
A clock : A low-level clock, an object which returns measurements of some concept of time. It is required that successive readings of the clock will reflect nondecreasing values of the "time" measured. If we wish to discuss displays that look like familiar physical clocks we will disambiguate by referring to "display clocks" or "high level clocks" or "gui clocks". For this project, a no-adjective "clock" is a low level clock.
Time : Any function guaranteed to be nondecreasing during the course of a program run. We expect that we will be able to design the system without any more assumption than that, though we expect the user will interpret the data using beliefs about the clocks used that go beyond our assumption. In particular we make no assumptions about the behaviour of "real" time clocks on different processors or as read by different processes on the same processor.