The profiling facility makes it possible to analyse the execution of a program and determine where most time was spent, possibly revealing sources of inefficiently. As well as time spent, the profiler maintains information on number of calls, choice points and redos for each predicate. It also records the callers of each predicate, thus building an extensive execution profile.
Note that the profiler shares some low level internal resources with the debugger in the development system and therefore debugging is disallowed when profiling and vice versa.
The profiler is not available under Windows.