# Performance

> The performance global, marks, measures, and PerformanceObserver.

`performance`, `PerformanceObserver`, and the `PerformanceEntry` classes are globals and follow the
[User Timing](https://w3c.github.io/user-timing/) and
[Performance Timeline](https://w3c.github.io/performance-timeline/) specs.

## Differences from browsers

- `performance` and [node:perf_hooks](https://elide.help/docs/api-node-perf-hooks) share one timeline.
- `PerformanceObserver.supportedEntryTypes` is `mark`, `measure`, `node`, and `function`.
- Mark and measure `detail` values are cloned as in [Web Messaging](https://elide.help/docs/api-wintercg-messaging); functions throw
  `DataCloneError`.
