2020 has been a year of many firsts, but one of the more exciting of these was the announcement of Arm's first-ever DevSummit, held October 6th-8th. Beyond the virtualization mandated by the global pandemic, the new conference reflects a shift in Arm as an organization: from the hardware-heavy TechCon (née DevCon) of the past decade and a half, to a vastly more software-centric event. As Arm's own internal ratio of hardware to software engineers has shifted from 4-to-1 down to 1-to-1, so must their efforts to engage the community shift, in order to attract the breadth of developers that the Arm ecosystem touches in 2020.
One of my favorite moments from early in the event was Mark Hambleton's (Vice President, Open Source Software at Arm) keynote speech, which grabbed my attention with his description of Arm as a "reverse TARDIS" — i.e. appearing much bigger on the outside than its relatively small 6,500-person workforce might imply. In his keynote, Hambleton described an "Arm dev-spec machine" — an abstract computer for developers, consisting of four-plus fast Arm cores, 16GB of RAM, 512GB of storage and a standard clamshell design. I had a chance to sit down with Hambleton to discuss the Arm developer experience, as well as find out a little more about his history and Arm's future.
Hambleton's keynote expressed the tension between Arm's history as a hardware company, and its future as a software company — in our 1:1 talk he gave amusing arguments for both:
Hardware without software is just expensive and yet software without hardware is the greatest movie you'll never see.
And this set the stage for a theme that emerged throughout the other keynotes, as well as workshops, tech talks and office hours: the fluency between traditionally disparate platforms that the Arm hardware and software of today and tomorrow enables.
Hambleton's attempt to realize the "Arm dev spec machine" with current hardware is with the Surface Pro X — Microsoft's Arm-based PC which offers instant-on, all-day battery, and continual connection via LTE for when Wi-Fi is out of reach. I had related my experience of waiting 20 minutes for an Android app to build and launch in an ARMv8 architecture emulator, which he envisioned running natively on an Arm development machine — stripping away the layers — and slowness — of emulation and cross-compilation (though losing with it a nice long coffee break!).
The notion of interoperability was extended further on the second day Keynote by Rene Hass, who envisions the empowerment of developers from embedded to mobile to servers and the cloud using a common architecture and skillset. This vision was driven home once more during the final day's keynote featuring a roundtable discussion between Hambleton, Jem Davies (Vice President, General Manager and Fellow, Machine Learning Group), and Richard Grisenthwaite (Senior Vice President, Chief Architect & Fellow), facilitated by Ian Smythe (Vice President, Marketing). Highlights from this conversation included the notion of building on Arm's security experience "crowdsourced" from the billions of devices in the field, adoption of the new Memory Tagging Extension, the ability to execute code from 20 years ago on current architectures ("a feature is for life, not for Christmas!"), and the notion of running the same machine learning code on tiny Arm MCUs embedded in shoes as in data centers or even supercomputers!
Another highlight of DevSummit was the office hour sessions. After attending Massimo Banzi's technical session on low-code AIoT development, during which he announced the Arduino Portenta Vision Shield, attendees had the chance to ask the always-affable Arduino co-founder anything, as well as hear anecdotes from Arduino past, present, and future. Wednesday's office hour session with Eben Upton, the founder of Raspberry Pi was incredibly insightful and enjoyable. I had the chance to ask whether Raspberry Pi were ever approached by the BBC about being a continuation of the Computer Literacy Project — an honor that went instead to the BBC micro:bit — only to learn that the Raspberry Pi Foundation had proposed such a scheme — gratis — just to be told that the BBC could never support a hardware project!
I was lucky enough to attend three hands-on hardware workshops. The first focused on secure device management with Arm's Pelion IoT Platform, targeting Infineon (née Cypress) PSoC 64 Secure MCUs. Participants used Arm's glorious new Mbed Studio IDE, along with Cypress' cysecuretools package to provision and update their devices securely. Despite being virtual, the experience was extremely convivial, with participants and Arm staff all working together when problems were encountered.
The second workshop I attended was a fun introduction to balena's balenaCloud fleet management platform, lead by David Tischler. Participants learned how a single button click from a GitHub repository could deploy a sophisticated environmental monitoring system and dashboard to a Raspberry Pi, or how to do it "the hard way" with a few simple balenaCLI commands.
Finally, Kwabena W. Agyeman showed workshop attendees how to train an image recognition CNN from scratch using the new OpenMV Cam H7 Plus. In case that wasn't exciting enough already, participants used OpenMV's new RPC lib to connect their Cams to Arduino Nano 33 BLE boards over SPI, allowing them to output the Cam's classification to the Arduino serial. I was lucky enough to work with Agyeman on the prep for this one, so it was extra special to see (or... I guess read in chat) participants' minds being blown by their own AI accomplishments in a 90-minute workshop.
The number of lengthy workshops that I was lucky enough to attend rather cut into my ability to attend other sessions (there were 143 sessions total across four hours a day for three days — often meaning literally a dozen choices vying for your time!), but the handful I was able to squeeze in were mostly excellent.
Arduino's Massimo Banzi built an end-to-end tinyML IoT application on the new Arduino Portenta board (and unveiled the even newer Vision Shield!) using a "low code" approach powered by Arduino and its Pelion-based IoT Cloud.
Finally, in one of my favorite sessions, Arm's James Greenhalgh told you everything you need to know to get the most out of the GCC compiler — which boiled down to using the
-mcpu=native flag (plus maybe
-O3 -flto) and trusting the engineers to have optimized the heck out of everything for you!
In addition to Arm's copious announcements, Arm partners shared a number of exciting new and upcoming technologies. In addition to the Portenta Vision Shield announcement from Arduino, one of the technologies that caught my attention the most was the Mojo Lens — a smart contact that provides an AR experience akin to many headsets, without any of the bulk.
Microsoft was present in a big way — not just with the aforementioned Arm-based Surface Pro X, which was refreshed with a new SQ2 processor, but with numerous Azure collaborations, including Project Santa Cruz, an Azure-based solution for rapid machine learning development, and an Azure-based toolchain targeting Arm-based silicon in AI-enabled devices. In a timely release, Visual Studio Code shipped ARMv7/ARM64 builds on the last day of the event, meaning that at long last devs can use Microsoft's superb code editor on a Raspberry Pi or other SBCs without requiring community-sourced workarounds.
A compelling case was made for Ampere's Altra cloud-native processors, whose 80 single-threaded cores allow up to 3,200 threads to be crammed into a standard 42U rack, compared to just 2240 with traditional processors.
Continuing the emerging theme of interoperability across all manner of hardware, Arm announced their SystemReady program — expanding the existing ServerReady program from the cloud to the edge. Four "bands:" SR (ServerReady), ES (Embedded ServerReady), IR (IoTReady), and LS (LinuxBoot ServerReady) certify that software "Just Works" (yes, they really capitalize it!) on systems that earn the endorsement. And the first board to earn the ES certification was the beloved Raspberry Pi!
VMware generated a great deal of excitement during the event with their announcement of ESXi-Arm Fling! While this curious collection of letters may appear to some as perhaps just a difficult Scrabble hand, ESXI-Arm is VMware's baremetal hypervisor, ported to Arm, allowing hardware to be partitioned into multiple virtual machines. And Flings are over 150 apps and tools, packaged up and ready to deploy onto Arm-based targets such as the Raspberry Pi or Ampere eMAG-based servers.
One major announcement from the event was Arm's decision to exclusively support 64-bit on Cortex-A "big" cores starting in 2022. While 60% of mobile apps are already 64-bit, Paul Williamson, Vice President and General Manager, Client Line of Business at Arm explained that existing mobile games, for example, could expect as much as 16%+ frame rate boost, simply by compiling as 64-bit instead of 32. And upcoming CPU generations, codenamed Matterhorn and Makalu, promise a 30% performance increase over today's Cortex-A78s.
Despite being forced into a virtual event this year, Arm's DevSummit was a resounding success, with over 11,000 registered attendees. The many excellent sessions will be available to watch on-demand (requires a free login) for the next year, then should be transferred to YouTube for perennial access. Also found on the new Arm Software Developers YouTube channel are recaps of each of the three days via Innovation Coffee Special Brew, including one particularly special episode featuring Hackster's own Alex Glow (and... yours truly!). It's unclear whether next year's Arm event will return to in-person, or continue online, but for me at least, the Innovation Coffee recaps helped recreate some of the casual interpersonal facets of attending a conference: seeing old friends, making new ones, and hearing about what got other people excited. I'm personally looking forward to going back and re-watching the hundred-odd sessions I didn't have a chance to view live, and I recommend that you do to!