Skip to content

Add roofline data for Apple M1 (MacBook Pro 17,1) - #148

Closed
diegobauavi wants to merge 2 commits into
sbryngelson:mainfrom
diegobauavi:roofline-m1-macbookpro17-1
Closed

Add roofline data for Apple M1 (MacBook Pro 17,1)#148
diegobauavi wants to merge 2 commits into
sbryngelson:mainfrom
diegobauavi:roofline-m1-macbookpro17-1

Conversation

@diegobauavi

Copy link
Copy Markdown
Contributor

Summary

  • Adds bench/results/rooflines/roofline-apple-m1-MacBookPro17_1-dcf5b8a7dd09-b1ab0125.json, produced by bench/roofline_suite.py --perf on an Apple M1 MacBook Pro (MacBookPro17,1), AC power.
  • Regenerates bench/results/ROOFLINES.md via bench/aggregate_rooflines.py to include this machine.

Contributes to the crowdsourced ANE roofline effort in #137.

Test plan

  • bench/roofline_suite.py --perf completed successfully (numeric cliffs + fast headline perf rooflines: saturation sweep, bandwidth roofline, decode measurement, roofline analysis)
  • bench/aggregate_rooflines.py regenerated ROOFLINES.md without errors

diegobauavi and others added 2 commits August 1, 2026 16:35
Contributes fp16 numeric cliffs and fast-headline perf rooflines
(GEMM/conv saturation, bandwidth) for issue sbryngelson#137.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
sbryngelson added a commit that referenced this pull request Aug 1, 2026
…148) (#150)

_perf_headline now falls back to the raw saturation + bandwidth sweeps for GEMM /
bandwidth / ridge when roofline_analysis is absent or errored -- so a submission
from before #147 (where roofline_analysis KeyError'd on a device a sweep could not
measure) still shows a full headline row instead of three blanks. Also widen the
bandwidth cell format so sub-1 GB/s ANE values read correctly (0.86, not 1).

Incorporates the Apple M1 (MacBook Pro 17,1) submission from #148 (@diegobauavi);
its roofline_analysis errored the same way M2 Pro's did, now recovered by the
fallback. Table now spans M1 / M2 Pro / M5 Pro, and the slice-x16 clamp shows
present on M1+M2, exact on M5 -- the pre-A16 -> A16 transition bracketed by data.

Co-authored-by: diegobauavi <diegobauavi@users.noreply.github.com>
@sbryngelson

Copy link
Copy Markdown
Owner

Thank you, @diegobauavi -- first fully-external roofline datapoint, and a valuable one: your M1 confirms the slice-x16 crop-DMA clamp at 4094 is present on M1 (matching M2 Pro, and contrasting M5 where it is exact), which brackets that cliff across the pre-A16 -> A16 boundary.

Your M1 data is now on main in ROOFLINES.md, credited to you on the row and as a co-author. I incorporated it via #150 rather than merging this PR directly, because after the M2 Pro submission (#145) landed, both PRs regenerate ROOFLINES.md and so conflicted on that generated file -- a mechanical collision, not anything wrong with your submission. #150 also carries a fix (_perf_headline fallback) that recovers your headline GEMM/bandwidth/ridge numbers: your run predates #147, so its roofline_analysis step errored and those columns would otherwise have been blank.

Closing as incorporated in #150. Thanks again -- please keep them coming, and sorry for the extra step on your end.

@sbryngelson sbryngelson closed this Aug 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants