Kinvolk on Arm: Can’t Stop a Lokomotive
At Kinvolk, the team focuses on maintaining and implementing open…
It’s true, what the leaders of the [email protected] Project say, that you too “can do science without being a scientist.” In fact, I’m doing it right now.
Even as I type, my work-issued MacBook is silently communicating with a server located at (one assumes) or at least near the Baker Lab, part of the University of Washington Institute for Protein Design.
I’ve volunteered the lag-time use of my virtual work space to [email protected], a distributed computing project that runs on the Berkeley Open Infrastructure for Networked Computing (BOINC) platform. Installation was a breeze, and now the app is chirping silently away in the background, just waiting for my laptop to go into idle mode while I putter around in the kitchen making a pot of French Roast or heat up a bowl of soup for lunch.
That’s when the open-source BOINCmanager app will get down to business, performing protein analysis tasks and calculations in the name of science, using my computer’s CPUs and RAM to help researchers develop preventative and treatment protocols for the novel coronavirus SARS-CoV-2, better known as COVID-19.
It’s a project the Baker Lab has been working on around the clock since Feb. 21, 2020 — just one month and a day after the first case of COVID-19 was reported in the U.S. By March, the team realized they needed even more volunteer devices like mine. When the call went out for help expanding their platform, tech ecosystems across the world — the Arm developer community in particular — stepped up to assist.
By now, nearly everyone is familiar with the ferocious trail COVID-19 has blazed across entire continents, and its merciless assault on public health. But as we all keep one eye on secondary outbreaks and regional spikes while anxiously awaiting a vaccine, so many unknowns remain, from the genesis of the virus to how it spreads and infects – and the pathology of why and how it kills.
Far from being a scientist, I’m more of what you might call an enthusiast. Which is to say, while I’m mildly curious about the fundamental biological principles underlying protein structure and function, I’m wildly interested in curbing the worst pandemic the world is likely to see in my lifetime. Especially since it requires almost zero exertion on my part beyond turning on my computer.
Like the [email protected] project, [email protected] uses crowd-sourced computing power to make the magic happen. My little MacBook — plus 100,000 or so other host devices in 151 countries — are crunching away on data at any given time to help find answers on how the SARS-CoV-2 protein is structured through predictive software-generated simulations and computational tests. Additional aspects of the research focus on producing new stable mini-proteins to be used as potential therapeutics and diagnostics to help tame the disease.
Clearly, time is of the essence when it comes to finding the answers to these critical questions.
“Proteins come in all shapes and sizes. For this reason, most proteins do not stick randomly to each other, but rather stick very specifically to a handful of other proteins,” Baker Lab researcher David Kim announced this spring in a shared project forum. “The Institute for Protein Design (IPD) has been working hard at improving the ability to design such binding interactions.”
The lab’s work involves calculating the three-dimensional shape of millions of possible proteins, then testing how those proteins might dock with parts of SARS-CoV-2. As the pandemic began to ravage entire populations in every corner of the world, it became obvious to the [email protected] research team that they needed a massive amount of compute power to help speed up the protein simulations. And that meant greater access to more devices, including Android smartphones.
Volunteers at Neocortix were among the first to attack the problem.
“My company, Neocortix, has a worldwide network with thousands of high-performance Android devices running Debian Linux in secure containers. We have some idle capacity which could be used … and we would like very much to contribute it to the COVID-19 projects,” wrote Neocortix CEO Lloyd Watts in a shared folding forum on March 15. “We would not require a custom Android application. We would just need an ARM64 build of the Debian client.”
He quickly received a response from Rex St. John, Senior Manager, IoT Ecosystem at Arm: “I work on a lot of Arm stuff. Sending you a ping Lloyd. We have the greatest collection of Arm super devs in a discord we organize. Shall we?”
Brian Koepnick and David Kim at the Baker Lab provided St. John with access to the Rosetta source code repository, and with help from software architects at Neocortix and Packet’s Ed Vielmetti, (who directed the team towards available server-class Arm64 machines supported by WorksOnArm) the intensive build began, and was completed within days.
By March 23, Kim at the Baker Lab was able to verify successful testing of the first build, and following further testing and integration work, the team published the Linux on Arm build on March 31. “It was actually quite painless. The only issues that I can recollect were related to memory requirements since many [email protected] jobs require more than 1GB of memory, which excludes Raspberry Pi3 devices.”
Unlike the [email protected] project — which is limited to x86 computers — [email protected] now supports 64-bit Arm devices, including servers, Android smartphones, tablets, and Raspberry Pi’s. While the available performance on these devices is lower than, say, my MacBook, the update opened the door to inviting the world’s estimated 3.5B smartphones and 30 million Raspberry Pi’s into its volunteer ranks.
The surplus processing power has helped enable the [email protected] team to identify and test more than 100,000 “promising” candidate antiviral proteins and on June 26, the lab announced it had “succeeded in creating antiviral proteins that neutralize the new coronavirus in the lab.” As a result, experimental drug tests are already being optimized for testing.
According to Kim, while Arm-Linux currently represents only 2 percent of their throughput, the major benefit is the potential computing power by sheer numbers that Arm devices may be able to provide in the future — particularly as more people switch to portable devices as their main computing platform.
If you want to pitch in, and learn how to run [email protected] on Arm-powered devices, click here. To run on your computer, follow this link, download the BOINC desktop software and follow the prompts to install, then select the “[email protected]” project from the menu.