If you have read my other blog posts, you will already know that I’m pretty enamored with the new M1 Macs. The first one that entered my life was the 2020 M1 MacBook Air I purchased for my daughter, who is taking classes remotely for her first year of college. She kept raving about the battery life because she could get through an entire day of classes and study sessions without having to plug in the power adapter. This was a pretty dramatic change from her previous Intel MacBook Air, which struggled to get through a couple of classes on Zoom.
My next surprise came when I realized that the two Thunderbolt ports on these M1 Macs have nearly the same combined bandwidth of four ports on the Intel Macs they replaced. I wrote about this in a blog posted last week.
Can I code with an M1 Mac?
Then I started to wonder if these new Macs were speedy enough to use for writing code and building applications. Would they have the horsepower required to create Mac and iOS applications, or are the processors too underpowered? Should I purchase an M1 MacBook Pro for our new programmer who starts next week?
My concern was that an M1 MacBook Pro would be underpowered. After all, they only contain four high-performance CPU cores and four low-performance cores, whereas my 2019 16 inch MacBook Pro has six high-performance cores. The Intel CPU in my Intel MacBook Pro also has hyper-threading, Intel’s technology that allows each core to behave as two virtual core. Using applications with many threads, like those I use for building applications, two of these virtual cores can perform about 30-50% more work than a single core. This is why the CPU thermometer window in the Activity Monitor application shows 12 cores on my 2019 16-inch MacBook Pro.
So I expected my Intel MacBook Pro, with 12 virtual cores, to handily outperform the M1 chip, which only has four high-performance cores along with its four low-performance, energy-efficient cores.
Testing the speed
When I get a new computer and want to know how fast it is, I usually run one of the scripts we use to build a shipping application, timing how long it takes. Imagine my surprise when I tried this on the 2020 13 inch M1 MacBook Pro and found that it was faster than the Intel MacBook Pro I use every day. An application that takes 158 seconds to build on my 16-inch MacBook Pro takes 90 seconds on the new 2020 M1 MacBook Pro – 75% faster!! I saw a similar speed improvement over and over with each application I built.
The M1 MacBook Pro didn’t even seem to be breaking a sweat. Unlike my Intel MacBook Pro, I couldn’t hear the fan spin up, and the bottom of the case didn’t get warm, even after I ran the same build script ten times in a row. The M1 MacBook Pro—which at first looked and felt a bit like a toy—is ready for serious work. I connected it up to my OWC Thunderbolt dock, which attaches my 27-inch monitor, scanner, and Ethernet network, and I was ready to go back to work on SoftRAID version 6.
The start of a new era
On the way home after running these tests, I had a feeling of deja vu. Writing code with the new M1 Mac gave me the same feeling I had when first seeing other technologies I knew were going to change the way we use computers: when I first used a Mac, when I saw an Airport Base Station with WiFi, and when I first picked up an iPhone. Here is a technology that will forever alter what we expect of our computers. No longer is a powerful laptop going to have to make loud fan noises, get warm, and need to be plugged in after an hour or two.
Now that I think of it, maybe I should just give my 2019 MacBook Pro to our new programmer.