Over the holiday break, the footage from the recent “RISC-V Summit” was posted for the world to see, and would you believe that Google showed up to profess its love for the up-and-coming CPU architecture?
We’ve been trying to nail down how the Android team feels about RISC-V for a while. We last heard a comment from the team six months ago, where our Google I/O question about RISC-V was answered only with “we’re watching, but it would be a big change for us.” Some external RISC-V porting projects exist, and various RISC-V commits have been landing in the Android Open Source Project (AOSP), but since anyone can submit code to AOSP, it has been hard to make any bold proclamations about RISC-V’s Android status.
Google’s keynote at the RISC-V Summit was all about bold proclamations, though. Lars Bergstrom, Android’s director of engineering, wants RISC-V to be seen as a “tier-1 platform” in Android, which would put it on par with Arm. That’s a big change from just six months ago. Bergstrom says getting optimized Android builds on RISC-V will take “a lot of work” and outlined a roadmap that will take “a few years” to come to fruition, but AOSP started to land official RISC-V patches back in September.
The build system is up and running, and anyone can grab the latest “riscv64” branch whenever they want—and yes, in line with its recent Arm work, Google wants RISC-V on Android to be 64-bit only. For now, the most you can get is a command line, and Bergstrom’s slide promised “initial emulator support by the start of 2023, with Android RunTime (ART) support for Java workloads following during Q1.”
One of Bergstrom’s slides featured the above “to-do” list, which included a ton of major Android components. Unlike Android’s unpolished support for x86, Bergstrom promised a real push for quality with RISC-V, saying, “We need to do all of the work to move from a prototype and something that runs to something that’s really singing—that’s showing off the best-in-class processors that [RISC-V International Chairman Krste Asanović] was mentioning in the previous talk.”
Once Google does get Android up and running on RISC-V, then it will be up to manufacturers and the app ecosystem to back the platform. What’s fun about the Android RunTime is that when ART supports RISC-V, a big chunk of the Android app ecosystem will come with it. Android apps ship as Java code, and the way that becomes an ARM app is when the Android Runtime compiles it into ARM code. Instead, it will soon compile into RISC-V code with no extra work from the developer. Native code that isn’t written in Java, like games and component libraries, will need to be ported over, but starting with Java code is a big jump-start.
Arm has become an unstable, volatile business partner
In her opening remarks, RISC-V International (the nonprofit company that owns the architecture) CEO Calista Redmond argued that “RISC-V is inevitable” thanks to the open business model and wave of open chip design that it can create, and it’s getting hard to argue against that. While the show was mostly about the advantages of RISC-V, I want to add that the biggest reason RISC-V seems inevitable is that current CPU front-runner Arm has become an unstable, volatile company, and it feels like any viable alternative would have a good shot at success right now.
Just look at Arm’s behavior over the last few years. After a few bad bets in 2020, we saw Arm’s owner, Softbank, slap a “for sale” sign on the world’s biggest mobile chip company and start taking sales meetings. For a while, it looked like Nvidia—a company notorious for being difficult to work with—was going to be Arm’s new owner, bundle the chip designs with GPUs, and find itself a new business partner with some of its most hated rivals. Regulators around the world eventually shut that deal down, and now Softbank wants Arm to have an IPO, which may or may not happen, depending on how the economy goes.