Skip to content

Instantly share code, notes, and snippets.

@chockenberry
Last active May 31, 2026 00:59
Show Gist options
  • Select an option

  • Save chockenberry/1d08129bdf41bfb70e98c3a75ce74578 to your computer and use it in GitHub Desktop.

Select an option

Save chockenberry/1d08129bdf41bfb70e98c3a75ce74578 to your computer and use it in GitHub Desktop.
Super vs. Performance vs. Efficiency Cores on Apple Silicon M5
# run the following commands from a Terminal window on an M5, M5 Pro, or M5 Max:
% sysctl -a | grep "machdep.cpu.brand_string"
% sysctl -a | grep "hw.perflevel"
% ioreg -l -b -p "IODeviceTree" -r -n "cpus" | grep "cluster-type"
% ioreg -l -b -p "IODeviceTree" -r -n "cpus" | grep "logical-cpu-id"
# paste the results below - thank you!
@kylebshr

Copy link
Copy Markdown

M5 Max

machdep.cpu.brand_string: Apple M5 Max
hw.perflevel0.physicalcpu: 6
hw.perflevel0.physicalcpu_max: 6
hw.perflevel0.logicalcpu: 6
hw.perflevel0.logicalcpu_max: 6
hw.perflevel0.l1icachesize: 196608
hw.perflevel0.l1dcachesize: 131072
hw.perflevel0.l2cachesize: 16777216
hw.perflevel0.cpusperl2: 6
hw.perflevel0.name: Super
hw.perflevel1.physicalcpu: 12
hw.perflevel1.physicalcpu_max: 12
hw.perflevel1.logicalcpu: 12
hw.perflevel1.logicalcpu_max: 12
hw.perflevel1.l1icachesize: 131072
hw.perflevel1.l1dcachesize: 65536
hw.perflevel1.l2cachesize: 8388608
hw.perflevel1.cpusperl2: 6
hw.perflevel1.name: Performance
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
        "cluster-type" = <"P">
  |     "logical-cpu-id" = 0
  |     "logical-cpu-id" = 1
  |     "logical-cpu-id" = 2
  |     "logical-cpu-id" = 3
  |     "logical-cpu-id" = 4
  |     "logical-cpu-id" = 5
  |     "logical-cpu-id" = 6
  |     "logical-cpu-id" = 7
  |     "logical-cpu-id" = 8
  |     "logical-cpu-id" = 9
  |     "logical-cpu-id" = 10
  |     "logical-cpu-id" = 11
  |     "logical-cpu-id" = 12
  |     "logical-cpu-id" = 13
  |     "logical-cpu-id" = 14
  |     "logical-cpu-id" = 15
  |     "logical-cpu-id" = 16
        "logical-cpu-id" = 17

@subecho

subecho commented Apr 28, 2026

Copy link
Copy Markdown

From my M5 Pro, hope this helps!

Tanager in ~
❯ sysctl -a | grep "machdep.cpu.brand_string"
machdep.cpu.brand_string: Apple M5 Pro

Tanager in ~
❯ sysctl -a | grep "hw.perflevel"
hw.perflevel0.physicalcpu: 6
hw.perflevel0.physicalcpu_max: 6
hw.perflevel0.logicalcpu: 6
hw.perflevel0.logicalcpu_max: 6
hw.perflevel0.l1icachesize: 196608
hw.perflevel0.l1dcachesize: 131072
hw.perflevel0.l2cachesize: 16777216
hw.perflevel0.cpusperl2: 6
hw.perflevel0.name: Super
hw.perflevel1.physicalcpu: 12
hw.perflevel1.physicalcpu_max: 12
hw.perflevel1.logicalcpu: 12
hw.perflevel1.logicalcpu_max: 12
hw.perflevel1.l1icachesize: 131072
hw.perflevel1.l1dcachesize: 65536
hw.perflevel1.l2cachesize: 8388608
hw.perflevel1.cpusperl2: 6
hw.perflevel1.name: Performance

Tanager in ~
❯ ioreg -l -b -p "IODeviceTree" -r -n "cpus" | grep "cluster-type"
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"M">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
  |     "cluster-type" = <"P">
        "cluster-type" = <"P">

Tanager in ~
❯ ioreg -l -b -p "IODeviceTree" -r -n "cpus" | grep "logical-cpu-id"
  |     "logical-cpu-id" = 0
  |     "logical-cpu-id" = 1
  |     "logical-cpu-id" = 2
  |     "logical-cpu-id" = 3
  |     "logical-cpu-id" = 4
  |     "logical-cpu-id" = 5
  |     "logical-cpu-id" = 6
  |     "logical-cpu-id" = 7
  |     "logical-cpu-id" = 8
  |     "logical-cpu-id" = 9
  |     "logical-cpu-id" = 10
  |     "logical-cpu-id" = 11
  |     "logical-cpu-id" = 12
  |     "logical-cpu-id" = 13
  |     "logical-cpu-id" = 14
  |     "logical-cpu-id" = 15
  |     "logical-cpu-id" = 16
        "logical-cpu-id" = 17

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment