Distributed computing is at the core of many of the technologies that we use on a daily basis without even realizing it. To simplify it into terms I can understand, the process involves multiple systems performing the same tasks in conjunction with each other but not dependent on any one device. The applications range from telecommunications to peer-to-peer networks and everything in between. Some distributed computing projects rely on the computing power of individual users that allow portions of their PC’s CPU/GPU power to be delegated to whatever the project is attempting to achieve.
One such project, Folding@home, has gained the attention of the public eye as users joined the project in droves to help aid and assist in researching the COVID-19 virus that has created a worldwide pandemic. What is Folding@home? Started in October 2000 by the Pande Laboratory at Stanford University, Folding@home is a distributed computing project that utilizes the power of volunteer computers to perform protein folding which is in turn used to research viruses and diseases in the search for causes, cures and vaccinations. From the Folding@home website:
Folding@home (FAH or F@h) is a distributed computing project for simulating protein dynamics, including the process of protein folding and the movements of proteins implicated in a variety of diseases. It brings together citizen scientists who volunteer to run simulations of protein dynamics on their personal computers. Insights from this data are helping scientists to better understand biology, and providing new opportunities for developing therapeutics.
Over the past two decades, Folding@home has grown into a massive community that puts forth excess computing power towards researching Alzheimer’s, Parkinson’s, Ebola virus and a number of other diseases that affect humanity on a global scale. The latest addition to the research platform is COVID-19 along with other types of coronaviruses which has resulted in Folding@home becoming the fastest computing system in the world and the first to bread the exaFLOP barrier. (One exaflop is a thousand petaflops or a quintillion, 1018, double-precision floating-point operations per second.) Now, I can’t fathom how much that really is but in perspective, the Department of Energy is working on a single computer that will break the exaFLOP barrier and its cost is in excess of $600 million dollars. (My brain just exploded.)
I first heard of Folding@home a couple of years back when one of the participants contacted me about folding on a Chromebook. At that time, the only real option was to do so using the Chrome browser client and the performance was so minimal, it was practically useless to try and contribute to the project. However, that changed when Chrome OS gained support for Linux apps. Now, Chromebook users can get in on the action and help by adding their excess CPU power to the future research of these horrible diseases.
To get started, you will need to have a Chrome OS device that supports Linux apps and of course, you will need to be willing to sacrifice some of your CPU’s horsepower. Don’t worry about performance if you really want to help. The Folding@home client is customizable and you can lend as much or as little power as you choose. I keep my Core i5 Pixelbook Go set to medium in the FaH Client and I see very little decline in performance unless I’m doing heavy work. Even then, you can disable FaH whenever you like. The Folding@home client works by downloading work units that are portions of a model simulation. Once your device completes the “folding” of the model, it is sent back to the server added to the larger model. If you join or create a team, your team will receive credits for work units that are completed. The credits are simply a way to track your contribution. The project is strictly volunteer-based and the only compensation is the knowledge that you’re helping humanity. Now, let’s move on to installing FaH on Chrome OS.
First, head over to the FaH website and download the Debian packages for the client and the controller. You can also download the 3D viewer but it is not needed to run Folding@home. It just gives you a fancy, 3D model of the real-time work that your computer is doing for the project. You can get the .deb files here. You will want the .deb packages listed under Debian/Mint/Ubuntu. There is an alternative method to install and run FaH from the command line but this will give you a user interface and much simpler control of the FaH client. Now that you have those downloaded, open your downloads folder and double-click the file named fahclient
and wait for the installation to complete. (You won’t see the client in your applications list as it runs in the background.)
Next, double-click the other FaH file named fahcontrol
. Once that’s finished installing, you’re ready to launch the app and start folding. You should find the controller in your apps list labeled FAHControl. Click the icon and when the app launches, click the “fold” button to begin downloading your first work unit. To the right of the fold/pause buttons, you will see the slider where you can set how much CPU power you wish to give. Deeper in the configuration settings, you will find spots where you can specify how many cores you wish to use as well as tweaks for GPU. I don’t think Chrome OS is lending GPU power and the default -1 setting for CPU will use what the application determines is best. It’s probably best to just leave that alone unless you know what you’re doing.
As I mentioned, FaH is now dedicating a lot of work researching COVID-19. While you can’t choose which project your device is folding for, you can click the project number in the controller to see which one your computer is currently working on. FaH has stated that COVID-19 and coronavirus research is being prioritized at the moment and I’ve found each project on my respective devices are all focused on that research at the moment.
Join our team
Chrome Unboxed is dedicating some excess Chrome power to aiding in this research and we have a team if you’d like to join us. Again, this is just to keep track of our contribution and it would be cool to see the Chrome OS community unite and help move this project even further into the future. If you’d like to join the team, open the configuration panel of the controller and add the team number 234120 and save before you start folding. Additionally, you can add a unique user name so you can see your contribution to the project on the team stats board that can be found here.
To learn more about protein folding and how you can contribute, head over to the Folding@home website here.