Distributed Computing and Its Biomedical Applications
Technology | May 07, 2020
Distributed computing is a genre of computer science in which resource(s) are shared over a network, so that other systems can avail it. This can be computation power, RAM, storage, etc.
In a parallel computing network, the tasks are broken down into smaller pieces that wa be solved concurrently. These smaller pieces are further broken down into a series of instructions and is given to different processors to execute it. These type of systems usually has multiple processor/cores. In a hardware standpoint, the following can be considered as a parallel computer.
- Multiple functional unit (or execution unit) like L1, L2 caches, GPU, prefetches etc
- Multiple hardware threads
- Multiple execution units/cores
A distributed computer network contains multiple computers connected over any network (including the internet). In this system, the computers rely on message passing.
Each of the system has its own memory. While there is a master clock to synchronise a parallel processing system, a distributed computing system, uses synchronization algorithms to get the processed outputs in sync.
|Parallel Computing||Distributed Computing|
|Number of Computer Systems||One computer with multiple processors||Several computer systems|
|Scalability||Limited. Depends on the BUS and the Memory||Limitless|
|Resource Sharing||All processors share the resources||Each system has its own memory and processors|
|Synchronization||Uses master clock for synchronization||Uses synchronization alogrithms|
|Uses||For higher and faster processing Higher Speed an Efficiency||For higher scalability Speed doesn't matter|
Folding@home (FAH or F@h) is a distributed computing project for performing molecular dynamics simulations of protein dynamics. Its initial focus was on protein folding but has shifted to more biomedical problems, such as Alzheimer’s disease, cancer, COVID-19, and Ebola.
The project uses the idle processing resources of personal computers owned by volunteers who have installed the software on their systems. Folding@home is currently based at the Washington University in St. Louis School of Medicine, under the directorship of Dr. Greg Bowman.
The project was started by the Pande Laboratory at Stanford University, under the direction of Prof. Vijay Pande, who led the project until 2019. Since 2019, Folding@home has been led by Dr. Greg Bowman of Washington University in St. Louis, a former student of Dr. Pande.
According to their website:
Folding@home is a project focused on disease research. The problems we’re solving require so many computer calculations – and we need your help to find the cures!
Folding@home is based at the Washington University in St. Louis School of Medicine, under the directorship of Dr. Greg Bowman. Drs. John Chodera (MSKCC) and Vince Voelz (Temple University) are also active in helping manage the project. Together, their three labs are the primary drivers of Folding@home.
Although a lot of us may have our systems turned on almost 24×7, we might not be utilizing it all the time. You can lend this idle time to folding@home systems, so that they can use it for molecular or biomedical research purposes.
- Go to https://foldingathome.org/start-folding/ if you have a WIndow system.
For Linux and Mac systems, go to https://foldingathome.org/alternative-downloads/
- Download the appropriate tool depending on your system
- Install the setup and give the permission when prompted.
- Go to https://client.foldingathome.org/ to configure the folding
- Click “Set up an identity” unless choosing to fold Anonymously.
- Fill in the details. Give your Name, Team is optional. If you are folding for the first time, obtain a passkey by following the link given.
- You will then be provided with an UI to configure your folding, whether to use full time, or when the system is idle, whether to use your CPU, or GPU or both, etc.
- Advanced controls can be opened, when you right click the system tray icon.
- Note that, keep the settings in idle, if you have processor intensive work to do in your system, else the system will get laggy.