A web page learns the number of logical processors from the browser, through navigator.hardwareConcurrency.
- Safari caps that figure at 8 on desktop and at 2 on iOS. Firefox caps it at 16, and at 2 with fingerprinting resistance on.
- SystemCheck starts one worker per reported processor, so in Safari a machine with more cores is measured with at most 8 workers.
- A multi-thread figure from a browser describes the threads the browser admitted to, not every core in the machine.
The short answer
Safari tells web pages that a desktop machine has at most 8 logical processors, whatever it really has. SystemCheck can only start as many workers as the browser reports, so on a Mac with more cores the multi-thread figures in Safari cover 8 threads. Single-thread figures are not affected.
Where the number comes from
There is no web interface that names a processor or counts its cores. The only count a page gets is navigator.hardwareConcurrency, the number of logical processors the browser chooses to report. Browsers limit it because an exact core count helps identify a device. Chrome reports the full logical count, including threads from simultaneous multithreading. Safari caps it at 8 on desktop and 2 on iOS. Firefox caps it at 16.
What it does to your report
The CPU stage runs one worker per reported processor, and the memory bandwidth stage uses up to six, so a capped count lowers the CPU stage's all-thread figure on a machine with more cores than the cap. The report shows the thread count it used. Compare Safari runs with Safari runs; a run in another browser on the same Mac is a different measurement.
Terms used here
Questions
- Is my Mac slower in Safari?
- Not the machine. The browser admits fewer threads to the page, so the multi-thread figure covers fewer cores. Single-thread work is measured the same way.
- Should I test my Mac in Chrome instead?
- If you want the multi-thread figure to use every logical processor, a browser that reports the full count will. Keep each comparison within one browser.