Single thread consumes > 100% CPU usage, according to XCode Instruments Profiler?

Viewed 104

I profiled an app (Mac OS) using CPU Profiler, part of the XCode Instruments tools.

I expect that each thread (of my process) can at the most consume 100% CPU usage. It cannot consume more than 100% of a hyperthread/core, since a thread can only ever run on a single core at a time, not two.

However, I am surprised to see ~290% CPU usage reported for a thread in the XCode CPU Profiler!

This makes me take a step back and wonder -

  1. What is the unit of the CPU usage shown in the "timeline" view for a thread in the XCode profiler?
  2. What does a value over 100 (for a single thread) indicate?

See this example screenshot from XCode Instruments' CPU Profiler, showing a single thread: Example screenshot from XCode CPU Sampler, showing a single thread

0 Answers
Related