Folding@Home es uno de los programas más importantes del momento, ante la situación de lucha contra la pandemia. En este artículo te explicaremos por qué, y cómo un simple software ejecutado sobre tu PC puede tener un gran impacto en la investigación de esta y otras enfermedades como el cáncer, el alzhéimer, o el párkinson. ¡Vamos allá!
Índice de contenidos
Folding@home y el concepto de computación distribuida
El concepto clave bajo el que funciona Folding@Home es el de la computación distribuida. Todos sabemos de sobra que hay una serie de supercomputadores por todo el planeta destinados a tareas de investigación científica. Estos aúnan la potencia de miles de ordenadores ordinarios. Entonces, si un superordenador equivale a miles de PC normales, Folding@Home hace justo lo contrario: reparte las cargas de trabajo entre millones de equipos de voluntarios, y aúnando la potencia de todos ellos consiguen llegar a las capacidades de cómputo de un superordenador.
En el resto del artículo veremos:
- Qué tipo de investigación se realiza con FAH y qué enfermedades puede combatir.
- Cómo los que queramos ser voluntarios podemos instalar y usar este programa.
- Cómo no solo es que lleguen a los niveles de un superordenador, sino que los superan con fuerza.
El plegamiento de proteínas y qué enfermedades combate
No tiene sentido hablar de cómo funciona Folding@Home sin mencionar cuál es su línea de investigación principal y por dónde atacan las enfermedades. Como su propio nombre indica, este proyecto busca entender el protein folding, o plegamiento de proteínas.
Las proteínas están en todos lados: constituyen gran parte de las células, forman parte de las enzimas, hormonas, músculos, huesos, pelo, piel, paredes sanguíneas y muchísimo más, y de hecho los anticuerpos de los que tanto se habla últimamente son proteínas. Por ese motivo se conoce una cantidad masiva de ellas. Pero para entender cómo funcionan no sirve con conocer su secuencia, sino que para cumplir su función las proteínas deben plegarse, es decir, coger una forma concreta. El plegamiento es un «auto-ensamblaje» que realizan antes de empezar a funcionar.
Para que os hagáis una idea, aunque la mayoría de proteínas tomen unos milisegundos para plegarse, hasta 2010 solo se conseguían simulaciones del orden de los nanosegundos a los microsegundos (esto es, de 3 a 6 órdenes de magnitud menos).
Debido a esto, combinar la potencia de millones de ordenadores alrededor del mundo con un buen propósito es una idea que tenía mucho sentido, lo que impulsó a los autores del mismo a lanzarlo en los años 2000. Pero la cuestión es: ¿cómo se consigue dividir toda la simulación de plegamiento de una proteína entre varios PC? Para esto no nos vamos de la biología aún, porque resulta que el plegamiento de proteínas ocurre en muchísimos pasos pequeños, hasta el punto de que en casi todo el proceso no está pasando nada sino que la proteína está esperando por algún paso intermedio.
Pues bien, una vez introducido esto, os dejamos con una lista de algunas de las enfermedades que se pueden combatir gracias a Folding@Home:
- Cáncer
- Cáncer de mama
- P53, una proteína supresora de tumores, conocida como el «guardián del genoma»
- Estudio de la epigenética del cáncer
- Cáncer de riñón
- Enfermedades infecciosas
- Dengue
- Virus del zika
- Hepatitis C
- Ébola
- COVID-19
- Enfermedad de Chagas (tripanosomiasis americana)
- Enfermedades neurológicas
- Alhzeimer
- Enfermedad de Huntington
- Parkinson
Como veis, ya de por sí la lista de enfermedades combatidas mediante Folding@Home era realmente importante, y la situación surgida por la pandemia del nuevo coronavirus ha disparado la popularidad y relevancia de este proyecto. Y es que, para dar un ejemplo y que nos entendamos, las características coronas que encontramos en la forma de este virus, denominadas espículas virales, son un tipo de proteína, y resultan fundamentales para la infectividad del virus. Folding@Home da acceso a los científicos a una increíble capacidad de computación con la que realizar simulaciones que permitan entender cómo funcionan las proteínas de todas estas enfermedades, para así atacarlas mejor, y desarrollar mejores medicamentos contra las mismas.
Funcionamiento del software
Cuando iniciamos Folding@Home, lo que se hace es asignarnos por defecto dos tareas de trabajo muy concretas. Una de ellas correrá sobre nuestra CPU y la otra sobre la GPU. Para cada carga de trabajo, hay un límite de tiempo concreto en el que se tiene que terminar para ser enviada, generalmente de unos días.
La cuestión es que, tal y como os explicamos antes, estos procesos de simulación trabajan en serie. Cada proyecto es un conjunto de unidades de trabajo: si, por ejemplo, estábamos simulando un trabajo de primera generación, no se conseguirá una segunda hasta que terminemos con la primera. Para mantener el sistema funcionando de manera viable, y todos los proyectos puedan finalizar correctamente, lo que se hace es que si no se completa el trabajo en el tiempo determinado, entonces se le asignará a otra máquina de la red de ordenadores.
Todo este proceso sigue un algoritmo sobre el que los usuarios no tenemos control, ya que está diseñado de la manera más eficiente posible. Donde sí tenemos elección es en el tipo de proyecto en el que queremos participar, sea para una enfermedad concreta como la COVID-19, para proyectos de alta prioridad, de elección libre, etc.
Es simplemente impresionante pensar que podemos colaborar activamente en la investigación de estas enfermedades tan solo con nuestro PC, ¿no? Pues vamos a ver cómo podemos instalar y usar Folding@Home.
Cómo se instala y cómo se usa
Vamos ahora a instalar Folding@Home en nuestro ordenador. Para ello simplemente deberás dirigirte a su enlace de descarga oficial, elegir tu sistema operativo y descargarlo. En el caso de Windows, se reduce a descargar un archivo .exe, abrirlo e instalarlo. Es un proceso de instalación sin adware ni nada especial, así que puedes limitarte a darle a «siguiente» sin problemas.
Si tras la instalación tienes algún aviso del Firewall de Windows, permite el acceso del cliente de FAH, para que pueda trabajar sin problemas.
Una vez hayamos instalado el programa, empezará a trabajar directamente, con las dos cargas de trabajo asignadas. Lo que nos tocará hacer, claramente, será abrir su panel de control y configurar los ajustes tal y como queramos, por ahora os vamos a enseñar simplemente a abrirlo:
El cliente de Folding@Home se puede encontrar en nuestra barra de tareas, concretamente deberíamos tener su icono en la parte derecha. Si no lo vemos, tan solo es cuestión de darle click al icono con la flecha hacia arriba, y ahí estará:
Entonces, tendrás dos opciones importantes: el Web control, que abrirá nuestro navegador para mostrarnos un panel bastante intuitivo con el estado de nuestro trabajo, y el Advanced control, con más opciones para controlar lo que estamos haciendo.
Primero interesémonos por el Web control, pues ahí será donde podréis elegir el tipo de enfermedad que vais a combatir. Tanto algunas opciones específicas como dos generales («cualquier enfermedad» o «alta prioridad»).
Por ejemplo, en la captura que te enseñamos arriba vemos cómo estamos trabajando en el proyecto 16810, dedicado precisamente a ensamblar la proteína de las espículas virales que comentamos antes. Concretamente lo hacemos para un laboratorio de una universidad pública sueca.
Esto era lo que estábamos haciendo con la CPU, mientras que la GPU estaba en otro proyecto, el 17426.
Los distintos modos de funcionamiento: ¿puede Folding@home estropear mi PC?
Folding@Home tiene varios modos de funcionamiento basados en hasta qué punto demanda recursos a nuestro PC. No tendría sentido que la única opción fuese cargarlo al 100%, pues puede resultar molesto si se aplica mientras lo usamos, tanto por ruido como por cualquier ralentización del mismo.
- Modo «light». Básicamente mantiene una carga de aproximadamente el 50% en CPU y/o GPU, de forma que nos permite trabajar sin problemas de rendimiento.
- «Medium». Aquí se aprovechan todos los recursos no usados de CPU y/o GPU. Tendremos nuestro procesador y gráfica trabajando al 100%, pero como el proceso trabaja con muy baja prioridad no notaremos un impacto en el uso normal, ya que como decimos aprovecha los recursos que no se usan.
- «Full». Este modo es bastante más agresivo y sí es posible que notemos un impacto en el uso normal del PC.
La elección de estos modos la podemos hacer tanto por la aplicación web como por el control avanzado, y por lo que parece no podemos seleccionarlo para CPU y GPU individualmente. Lo que sí vemos es que en el modo light, la GPU solo funciona si el equipo está en reposo.
Lo que sí podemos hacer es pausar o hacer trabajar a voluntad cada una de las dos unidades de trabajo activas. Para eso necesitamos entrar al cliente avanzado, y seleccionar un modo: Fold para reanudar, Pause para pausar, y Finish para que se pause una vez terminada la unidad de trabajo actual.
Seguro que muchos os estaréis preguntando si tendrá algún efecto perjudicial dejar a la CPU y la GPU trabajando al 100% durante tanto tiempo. La verdad es que depende del equipo, si tenemos un buen PC con una buena refrigeración y componentes de calidad no tendremos ningún problema, sobre todo si monitorizamos temperaturas y vemos que están bien.
En caso de que busques una forma de trabajar que estrese menos tu equipo, entonces nuestra recomendación es:
- Dejar que CPU y GPU trabajen solo «On Idle», es decir, si no estamos haciendo uso del PC.
- Dejar solo a la CPU trabajando, con la GPU pausada y el procesador en modo «Light». Es una buena idea si veis que el procesador no se calienta en exceso así, y en cambio la GPU sí lo hace.
Personalmente, he optado por la segunda, pues considero que es un equilibrio bastante bueno y apenas impacta a la durabilidad del equipo.
Cómo evitar que el programa se inicie junto con Windows
En el caso de que no hayas desmarcado la opción de iniciar junto a Windows, y no quieras que Folding@Home empiece a trabajar automáticamente cada vez en enciendes el equipo, tendrás que cambiarlo de manera manual. La verdad es que el programa no da facilidades a este respecto, pero eso no significa que no se pueda hacer.
La manera más simple es la siguiente (en Windows):
- Entra en Ejecutar, para esto simplemente pulsa la combinación de teclas Windows + R
- Escribe shell: common startup y pulsa Aceptar.
- Entonces, borra el atajo de Folding@Home en la carpeta que acabas de abrir.
Logros conseguidos
En sus 20 años de vida, este proyecto ha llevado a la publicación de más de 200 artículos científicos, muchos de ellos son importantes en el diseño de medicinas más precisas. Por poner un ejemplo, la mitad de los antibióticos atacan a los ribosomas de las bacterias, que son complejos de proteínas encargados de la síntesis de otras proteínas.
Más allá de eso, son destacables los logros en capacidad computacional obtenidos por el proyecto:
Amazing! @foldingathome now has over 470 petaFLOPS of compute power. To put that in perspective, that's more than 2x the peak performance of the Summit super computer!
— Greg Bowman (@drGregBowman) March 20, 2020
En marzo, en pleno pico de la pandemia, esta herramienta empezó a ganar muchísima popularidad, hasta el punto de que superaron los 470 petaFLOPS de capacidad de cómputo combinada, lo que es más del doble del pico que alcanza el supercomputador Summit de IBM, que es el segundo más grande del mundo. El único superordenador que supera esta capacidad de pico es el Fugaku de Japón.
La cuestión es que esto no se ha quedado aquí, pues posteriormente en abril se alcanzó la escala de los exaFLOPS, esto es, más de 1000 petaFLOPS, y aquí sí que consiguió todo un récord en lo que a capacidades de computación se refiere. Para que nos entendamos, estamos hablando de más de 1.000.000.000.000.000.000 operaciones de coma flotante por segundo, 1 trillón.
Como pico, se alcanzaron los 2.8 exaFLOPS, tal y como se mostró en el evento de presentación de las gráficas NVIDIA RTX 30. Se consiguieron simular 100 milisegundos de vida del coronavirus, llegando hasta el que se cree que es un punto débil del mismo.
¿Es realmente necesario usar Folding at Home?
Una vez hemos expuesto las claves más importantes sobre FAH, seguro que muchos os preguntaréis si es realmente necesario para la investigación científica que uséis esta aplicación. Esto es algo extremadamente personal, y depende de la opinión de cada uno. Yo opino que no es en absoluto reprochable que alguien que conoce Folding@Home no lo utilice. Cada uno decide lo que hacer o no con sus recursos computacionales, y es obvio que no va a caerse el mundo por no usar este software.
En todo caso, creemos que este programa es realmente importante e interesante, y seguro que este artículo sirve para que muchos de los que nos estáis leyendo comencéis a usarlo, al menos mediante contribuciones momentáneas.
Rosetta@Home, una alternativa complementaria a FAH
Vamos a finalizar este artículo mencionando a Rosetta@Home, la alternativa a Folding at Home más importante que hay, y que tiene un método de funcionamiento muy similar. Destacar como puntos clave:
- No son competidores, sino que se complementan. FAH se centra en el proceso de plegamiento, mientras que RAH se centra en su estructura y acoplamiento proteico.
- Rosetta@Home usa el sistema BOINC, una infraestructura abierta que es usada por muchas otras alternativas de computación distribuida como SETI@home. FAH usa un sistema propio.
- RAH está mantenida por la Universidad de Washington, en Seattle.
Puedes saber más en su web oficial.
Palabras finales y conclusión sobre Folding@home
Folding@Home es un proyecto de computación distribuida dedicado a aúnar el poder computacional de miles (o millones) de máquinas para así superar las capacidades de un superordenador en prol de la investigación científica abierta, y sobre todo enfocada a colaborar en la búsqueda de curas y remedios contra algunas de las enfermedades más dañinas de este siglo, como el cáncer, el alzheimer o incluso la COVID-19.
Las máquinas que dan su poder al proyecto son básicamente ordenadores personales de personas voluntarias que instalan el software de FAH en sus PCs, y «donan» parte de sus recursos computacionales a los trabajos de simulación recibidos desde este proyecto.
La línea de investigación de Folding@Home es el plegamiento de proteínas. Estas cogen una forma concreta antes de empezar a desempeñar su función. Ese es el proceso que se conoce como plegamiento, y debido a su aleatoriedad es increíblemente costoso de simular computacionalmente, pero debido a cómo funciona, se puede dividir en múltiples pasos pequeños, que son los que se simulan en cada PC conectado a Folding @ Home para luego agregar los resultados. Destacar que el papel de las proteínas en los seres vivos (e incluso en virus, por ejemplo) es simplemente abrumador, de ahí el interés científico que hay en este proyecto.
Pues bien, en sus primeros años Folding@Home sirvió para avanzar profundamente en la investigación de este fenómeno y descubrir de qué manera funcionaba. Ahora, se centran en buscar soluciones ante algunas de las enfermedades más importantes de la actualidad como son el cáncer, el alzheimer, el parkinson o el COVID-19. Estas están íntimamente relacionadas con las proteínas y su plegamiento, o los errores surgidos de este proceso, y una herramienta con la capacidad computacional de Folding@Home es fundamental para avanzar hacia la búsqueda de soluciones contra estas enfermedades.
Te recomendamos la lectura de más de nuestros artículos:
Una forma muy poco intrusiva y sencilla de colaborar con la ciencia es mantener el programa siempre abierto con la GPU pausada y la CPU en modo Light, algo que se enseña a hacer en el artículo. Así, se aprovecha una parte pequeña de nuestros recursos, de tal forma que no afecta al uso diario del PC pero sí impacta positivamente en las tareas de investigación con las que colaboremos.
Y tú, ¿has usado Folding at Home alguna vez? ¿Qué opinas de este proyecto? No dudes dejarnos tus impresiones en los comentarios.