<story><title>Counting cycles and instructions on the Apple M1 processor</title><url>https://lemire.me/blog/2021/03/24/counting-cycles-and-instructions-on-the-apple-m1-processor/</url></story><parent_chain></parent_chain><comment><author>dougall</author><text>Great post - glad some of that code has been useful!&lt;p&gt;If it&amp;#x27;s of interest, these performance events (and the whitelist for this API), are described by Apple at &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;apple&amp;#x2F;darwin-xnu&amp;#x2F;blob&amp;#x2F;main&amp;#x2F;osfmk&amp;#x2F;arm64&amp;#x2F;kpc.c&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;apple&amp;#x2F;darwin-xnu&amp;#x2F;blob&amp;#x2F;main&amp;#x2F;osfmk&amp;#x2F;arm64&amp;#x2F;kp...&lt;/a&gt;&lt;p&gt;Instruments.app is the official way to access performance counters. I believe it can use a few more (non-whitelisted) events, which are described in &amp;#x2F;usr&amp;#x2F;share&amp;#x2F;kpep&amp;#x2F;a14.plist - I couldn&amp;#x27;t figure out how to hijack the single-consumer API that I think it&amp;#x27;s using. (Edit: it seems it just shows non-whitelisted events in the GUI, but doesn&amp;#x27;t let me use them.)&lt;p&gt;(And, for my own measurements, I use a kernel module to bypass the whitelist, which is even more likely to blow up the computer, and definitely not recommended: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;dougallj&amp;#x2F;applecpu&amp;#x2F;tree&amp;#x2F;main&amp;#x2F;timer-hacks&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;dougallj&amp;#x2F;applecpu&amp;#x2F;tree&amp;#x2F;main&amp;#x2F;timer-hacks&lt;/a&gt; )</text></comment>
<story><title>Counting cycles and instructions on the Apple M1 processor</title><url>https://lemire.me/blog/2021/03/24/counting-cycles-and-instructions-on-the-apple-m1-processor/</url></story><parent_chain></parent_chain><comment><author>genmud</author><text>I was skeptical about the m1 processors, specifically around performance on something like a desktop where you expect snappy performance.&lt;p&gt;I have definitely changed my thoughts and if apple can solve getting more ram in their systems (it’s pretty shameful that in 2021 you max out at 16gb on a MacBook Pro), I feel like they are going to knock it out of the park with their new architecture.</text></comment>