Hacker News new | past | comments | ask | show | jobs | submit login
Folding@home takes up the fight against COVID-19 (foldingathome.org)
288 points by ForFreedom on March 5, 2020 | hide | past | favorite | 105 comments



Why are they not appealing to the major cloud providers at this time to use any spare resources couldn't they set it up so that the cloud providers could count using resources as donation to a charity?


Google has just done this with AlphaFold a few minutes ago:

https://deepmind.com/research/open-source/computational-pred...

It's just so fresh it hasn't been posted anywhere yet:

"Normally we’d wait to publish this work until it had been peer-reviewed for an academic journal. However, given the potential seriousness and time-sensitivity of the situation, we’re releasing the predicted structures as we have them now, under an open license so that anyone can make use of them."


Kudos to Google for doing this. It is so much more effective to marshall a small number of extremely powerful cloud providers backed by very qualified and active techies, than a large number of weak providers (people using their home machines).


Not quite, Google are running their own code.


I agree that the wording could have been be better. "This" here referring to the link after the :, not the folding@home project.

I wonder how AlphaFold compares.


That's very newsworthy. Hope the prediction system is accurate enough to help.


Cloud providers do not have much unused resource. Tricks like spot instances make sure that they are as close to 100% utilization as possible while still being able to handle a spike in demand.


Can I spin up instances and write it off for charity as a business?


There should be no need to write it off as charity. If you spin up instances, it's a cost which gets written off as any other cost. If you use those for folding at home, that's your (business') thing. (Obviously, this is generalized and your local tax situation may differ)


That’s their point. If you’re billed for instances, but those instances are used for charity and can be written off taxes, then why not? Tax write off donations in the form of product usually help clear out stock/keep things moving. They’re like a guaranteed sale. So it may be best to appeal to the providers of the instances.


Business expenses (for the company spinning up instances) are already written off taxes, which is what ozfive was talking about.

Do you mean that the cloud provider can write off that income as charitable donation?


In the US you wouldn't be able to write that bill off as a legitimate business expense. The auditor would ask "What legitimate business purpose does this represent?" and they wouldn't have an answer.


100% false.

If a business allows a nonprofit to use excess capacity, the capacity is still a business expense.

Google and AWS have huge amounts of unused computer capacity at low traffic periods. They can still expense those items even if they allow charitable use when not needed for business use.

Worst case if no unused capacity a business can call the expense a marketing expense and can ask the nonprofit to acknowledge their support of the activity. This is not uncommon.


I wasn't talking about AWS writing it off, but someone else buying that capacity to use for distributed computing for the CV. You have to donate to an approved 501C3 for it to count.


« I posted about our donation on HN and it drove traffic back to us, it’s a marketing expense. »


Do you know that as a fact? If so, how?


Amazon, Google, Microsoft, whomever could just gift some data centers to the protein folding effort.

It'd be amazing PR bang for the buck.


Gotta say the instructions are pretty awfully lacking. You go to the download page and you download the client and there's nothing that tells you what you're supposed to do after you download the client.

I'm on Ubuntu 18.04 and after downloading the client I had to do:

    $ sudo update-rc.d FAHClient defaults
    $ sudo dpkg -i ~/Downloads/fahclient_7.5.1_amd64.deb
    $ sudo /etc/init.d/FAHClient start
Yeah, it only took a few minutes of googling, but why not put that info on the download page?

I edited /etc/fahclient/config.xml so that gpu v = 'true', but It doesn't seem to be using the NVIDIA GPU after restarting the client. Any hints?


This is a great example of something that happens when a technology/program/framework has a long history and an existing community. Most users have been there for a very long time and sometimes the instructions or documentation doesn't explain what new users may or may not know.

I see this a lot in the nodejs tooling, Azure, vmware. Each version of a product slowly changes the way the product works and most documentation, readme and blog posts miss key information that they assume people would already know. If I'm new to node, I may not know things. It's like when you have some sample C# code and it doesn't include the "using" line and/or the Nuget package used - assuming the person already knows what package would perform this task - because it's "obvious" to existing users.


Also tried BOINC and got "cannot connect to core server" and apparently (based on googling around) you've gotta open up a specific port. Would be nice if they told you this on the download page or at least where to look after you download.

I gave up on both folding@home and BOINC. I don't have all day to fiddle around with this shit.


Good post, good insights. I faced the same when starting on nodejs stuff, things that were obvious to others were completely lost/hard to find for me.


I got the GPU working with this config:

    <config>
      <!-- Client Control -->
      <fold-anon v='true'/>
    
      <!-- Folding Slot Configuration -->
      <gpu v='true'/>
    
      <!-- Slot Control -->
      <power v='full'/>
    
      <!-- Folding Slots -->
      <slot id='0' type='CPU'/>
      <slot id='1' type='GPU'/>
    </config>
Followed up with

    $ sudo /etd/init.d/FAHClient restart
Like others mentioned, I really want a way to make it specifically work on Covid related proteins.


Ah, that's better, at least I see the GPU showing up now, but I don't see any progress on it.

Also, yes, it doesn't seem to be working on the covid problem, it says it's working on: Project 14311

Halorubrum lacusprofundi


Seems you have to have the opencl libaries installed.

sudo apt install ocl-icd-opencl-dev

Then edit the config file to include gpu (I also added a gpu slot <slot id='1' type='GPU'/> but not sure if it's needed.

Then restart.

Seems you'll have to wait a while to get a job though.


Has FAH approach solved any other real world problems? Has its findings accelerated understanding of any particular disease or helped significantly in developing a cure?


The F@H paper I was a coauthor on (https://www.ncbi.nlm.nih.gov/pubmed/24345941) has been cited by many in pharma. I honestly can't say whether it has directly contributed, but many people have been thankful for this work because it helped establish the concept that proteins aren't super stable rocks, so virtual drug discovery screening can work better if you can simulate the dynamics of a protein (in this case, we simulated a GPCR, which is a common pharma target).


Their wiki page lists a handful of them: https://en.wikipedia.org/wiki/Folding%40home#Examples_of_app...

Do keep in mind that 1. very few drug candidates make it through drug trials (iirc it's something around 1 in 1000), and 2. these trials takes 10+ years, and FAH has been around for only 19 years. It's very likely that a bunch of its results are in trial right now, and we'd only hear about it 10-20 years in the future


Have you checked the website? E.g. https://foldingathome.org/papers-results/


I wish that Folding@Home was on BOINC. It has an awful interface/uses a local webserver to control it. I'm glad they're doing something, but they should make the experience more user friendly, I usually stop out of frustration with starting/stopping.


I threw together a quick and dirty dockerfile for it. https://github.com/JeremyGrosser/fah-docker


A friend tried this in the last week and was frustrated that there seemed to be no way to limit CPU/GPU use to only work relaed to Covid.

Is there a way to limit work to Covid?


I tried this the other day and ran into the same issue.

Couldn't figure out a way to set it to covid.


BOINC


there are detailed steps in the arch wiki page: https://wiki.archlinux.org/index.php/BOINC

however it seems that folding@home isn't on BOINC. Either that or I am misinterpreting: https://foldingathome.org/faqs/high-performance/fah-on-boinc...


wow their UX is atrocious.

* Download page doesn't explain why there are 3 packages and which you need

* On installing first & clicking next it pins all CPU cores to 100%

* The package that presumably controls this silently fails to install - on a brand new up to date ubuntu install.

...so now I'm stuck with a service pinning everything to 100% (while in use) and no way to control it. Uninstalled.

I'll stick to BOINC.

(edit: tried the terminal route - seems to fail because of python-gnome2 dependency). You'd think they'd get their stuff to work with Ubuntu...it's at a mere 50% of nix marketshare.


THANK YOU!!!! I was just going to comment this.

I went to their website and gave it the 5 second test. I couldn't figure out ANYTHING through their homepage in a 5 second scan. There is ZERO call to action that makes any sense on their homepage. WTF is folding? Why not just say, HELP US FIND A CURE? What's funny is that I can bet these projects sit in a conference room and wonder why they aren't getting the support they deserve and it's all because they NEVER explain themselves correcly to the average layman.


> WTF is folding?

folding@home is a protein folding[1] simulator.

> Why not just say, HELP US FIND A CURE?

Though their work helps others find a cure, they themselves are not looking for a cure. Their contribution is only to help understand these things better by simulating the proteins folding.

I'm not saying this to downplay their work, but to explain why referring to folding and not to curing makes more sense. I imagine that it may even be the case that not all their work is with the aim of helping find cures.

[1] https://en.wikipedia.org/wiki/Protein_folding


you're missing the point. what they do is incredible but it is not explained simply their website to the common visitor.


I don't think BOINC is that much better. I got it installed and running and got 'cannot connect to core servers'. Nothing on their download page talked about where to go next for instructions either. After googling around I see something on a message board about opening up certain ports. If they want people to help out with this stuff the first thing they need to do is improve their documentation and onboarding.

At least I got the FAH thing to run, but only on the CPU not the GPU. I give up.


I also had trouble getting the GPU to work. Maybe this helps: https://news.ycombinator.com/item?id=22577145


BOINC behaves very nicely on the CPU. You can tell it how many cores to use and how much total cpu time.

So you can easily set it to keep say 4 cores free for the user at all times


Next scam: cryptomining app that pretends to help finding a virus cure.


Even better scam: Cryptomining app that pretends to mine crypto but is secretly finding a virus cure


That would be interesting. Not the Trojan horse you’re thinking of... but using it instead for good. One of the downsides to f@h is you aren’t compensated at all for your contributions. Now obviously that’s not such a big deal, since you’re ostensibly doing something altruistic for society and your fellow man/woman.

However... if you put a real cryptocurrency behind it and coupled proof of work to solving real scientific issues... that could bring a lot more compute into the cluster.


This concept is called "proof of useful work" and we haven't really found practical examples of it yet.

(There are also systems that pay people with cryptocurrencies for contributing computational resources, but the cloud computing markets are probably efficient enough that you could get cheaper computation overall by paying cloud providers regular money to rent computers from them.)

Proof of useful work, in which the cryptocurrency itself is verified by people who are also doing inherently useful computation, has a big challenge because the properties of the problems that are used in cryptocurrency PoW are so specific. Partial hash collisions, the typical example, have properties like

* it's trivial to generate a practically unlimited number of new instances

* new instances can be created in an objective way with no ongoing involvement by a central authority

* the instances can be parameterized by an arbitrary seed value (representing the identity of a block)

* the instances can easily be scaled by an adjustable difficulty

* a purported solution can be verified extremely cheaply

I don't believe we've found any broadly useful computation problems that have all of these properties.


That's already invented and it's called gridcoin.

https://gridcoin.us/


Or obsolete, donated ASICS that that are now a legit part of the network.


Afaik, asics are unsuitable for most types of computation, except those they were designed to run (ie mining a specific type of crypto currency)


The clue is in the name!


Go to the apple store and set up the mac pro in each store to fold.


Doing that on your own would probably get you in trouble. However, if Apple chose to do it themselves, then it would be a both a good PR move and of possible help to humanity. Same goes for Microsoft and the Microsoft store, and every store that has computers running on idle (Best Buy, Office Depot, etc). Who can we tweet at?


Whenever I'm in an Apple Store or department, I bookmark my website and leave it on the screen. Every little bit helps when you're at the end of the long tail....


And, did you see increased traffic from Apple corporate networks?


The public display computers even in Apple-owned retail stores aren't on the corporate VPN so they won't show a 17.x.x.x IPv4 address (or an Apple-owned IPv6). They will show whatever local ISP the store is using.


Not that I noticed, alas.


Genius idea!


Mac Pro isn’t being sold in Apple stores. Made to order only.


Some Apple Stores in large cities are stocking the new Mac Pro. I don't know if they also carry a typical upgraded model, but that has sometimes been done in the past. The normal "stock" model is not very impressive and exists pretty much just as a baseline minimum price.


Huh, The Verge was wrong then: https://www.theverge.com/2020/3/2/21161358/mac-pro-review-ap...

> the machines won’t be sold in the company’s retail stores


Perhaps so, but they certainly have demo units out. I saw one the other week in my local Apple Store.


Saw that on Heise (German IT magazine) a few days ago. Setup on Arch Linux is really simple (https://wiki.archlinux.org/index.php/Folding@home), but with our electricity costs over here it's more expensive than what I'm willing to contribute - my CPU compute node [2*2687W] at home draws 500W on FAH, which translates to 112US$ per month (80W idle, but it's mostly powered down anyway). Else this & BOINC would be a really nice way to utilize my unused hardware.


Maybe they should reconsider the integration with BOINC. That would give them access to one of the largest distributed clusters.


I can see they have staff shortages that prohibits that: https://foldingathome.org/faqs/high-performance/fah-on-boinc...


Did you mean "inhibit"? Prohibit means to forbid.


Prohibit as in "(of a fact or situation) prevent (something); make impossible." rather than "formally forbid (something) by law, rule, or other authority". It's not the most common usage of the word but it's still a pretty common one.


e.g. "prohibitively expensive"


to me "inhibit" means more like dampening or lessening something while "prohibit" means stopping something completely


So how is using home electronics an efficient use of electricity (and money) for doing these tasks? What are the economics of this? Wouldn't it be more efficient to donate the money you'd spend on electricity and equipment?


I'm running my GTX1080Ti for this, GPU-Z is showing me that the card is using 200W while running, let's be generous and say the entire computer uses 300W while running these computations. That means 7.2kW used per day, or 223kW used per month. At my current electricity price of £0.12/kWh, this is costing me £26 a month.

I have no idea who I could even donate this to so it would make any impact whatsoever. But I know for certain that there is literally zero chance they could rent a GTX1080Ti-equipped machine for £26/month anywhere in the world.


Donating 26/month to Médecins Sans Frontières (aka Doctors Without Borders) is almost certainly going to have more of an impact than a small computation donation to FAH.


Most people for these aren't buying new equipment for this though so the only real cost is the electricity and a tiny bit of premature wear on components. It'd take a long time of running to have spent enough electricity inefficiently to make up for the cost of the CPU and GPU being used.

It's also way easier to get people to just download and run something rather than donating money, the cash donation is hard and definite while the costs of running a distributed computing client is nebulous.


If it's cold outside, the waste heat is basically a space heater.


Donating money towards what? Setting up a new supercomputer dedicated to this sort of work comes with a lot of overhead and most crucially time delay. Even slapping a leftover raspberry pi online is worth more if done in a couple minutes.

Edit: the RaspberryPi is not supported, unfortunately.


The efficient use of money part is that they already have the spare capacity. The electricity is likely worse but it is a rounding error compared to the years of continuous operation to equal the new hardware cost. Plus it is donated electricity anyway.


There used to be a FoldingAtHome application for the Playstation 3 that I ran for a while. It's a shame it never made its way to other consoles because they're properly underutilised during the day, for me at least.


It wasn't great though - it didn't use spare cycles. It had to be started and run exclusively.

If they baked it in to use cycles when games were paused for instance or made it switch to FAH instead of powering off, it could have been so much more.


Considering PS3 only had 256MB of ram and was using all of it for computations or when running games, I think the chances were pretty slim.


Fair point, I'd forgotten that.

If only they'd released NetHack for PS3, it would have run in the background easily ;-)


> for me at least.

I like how you leave room for the possibility that there is a significant percentage of people playing on their consoles for the vast majority of their waking hours :-)


This is wonderful and gives people a constructive way forward instead of feeling useless.

Does bring hope that after this they could tackle other uncured viral infections like herpes for example.


This website does an absolutely terrible job of explaining itself. The layout of the homepage is awful and starts with a random video, then a request that I start "folding at home" - whatever that means, followed by more nonsense language to anyone who, like me, arrived at the site with very little context.

The first thing on your site (after the navbar) should be an explanation of what your product is/does in as few words as possible.


CORONAVIRUS – WHAT WE’RE DOING AND HOW YOU CAN HELP IN SIMPLE TERMS https://foldingathome.org/2020/03/15/coronavirus-what-were-d...


Yesterday I was looking for that, there is also fold.it users create their own proteins [0][1], those proteins passed to researches for validation or maybe they still validate through rosetta, even some users automate protein generation via lua scripts. Yesterday I wanted to check/contribute source code but its closed:( [2]

[0] https://www.youtube.com/watch?v=gGvlNo3nMfw

[1] https://en.wikipedia.org/wiki/Foldit

[2] https://fold.it/portal/node/986352


If this was a war effort we’d probably get Microsoft to push out a patch to windows 10 to let users opt into it securely? Or does the computing power of 100M+ home PCs still pale in comparison to a few cloud providers?


What guarantees do we have that some for-profit pharma corporation will not take the information discovered by this, patent it and profit at our expense? As it is, the public already funds most of the early research into drugs and yet almost all the resulting IP ends up owned by big-pharma.


Can't people sue based on prior art if that happens?



I doubt that this is going to help much, if you could fold your way to a virus cure, surely we would have seen cures for a bunch of other common viruses.


seems like rosetta@home already has candidates:

>"We are happy to report that the Rosetta molecular modeling suite was recently used to accurately predict the atomic-scale structure of an important coronavirus protein weeks before it could be measured in the lab. Knowledge gained from studying this viral protein is now being used to guide the design of novel vaccines and antiviral drugs."

http://boinc.bakerlab.org/rosetta/


Why not use smartphones these days?

Just plug your iPhone in at night, and the app will run in the background, when it detects user inactivity.


In theory you can (on Android). There is an app called boinc. You can load work for some projects to your phone. I tryed it a few years a ago, but phones are really not made for a workload over a long time. Even with work just for the half cores and not 100% processor time the phone got very very hot. What works well is Raspis and co, at least with a heatsink and a fan.


Indeed, there was a [0] story yesterday - an initiative Vodafone are supporting to compute a cure for cancer while your phone is charging.

[0] https://news.ycombinator.com/item?id=22479644


One word:

Heat.

Smartphones are decently powerful, but they typically only use the CPU in short bursts. This has allowed them to get away with being extremely skimpy on the cooling, which is good because a phone that needed a heat sink and fan would be incredibly bulky.

If you ran something with sustained CPU usage like F@H, within a minute it would be considerably warm and probably have crazy amounts of thermal throttling.


While true and while phones are considerably more powerful now than they used to be, modern ARM SoCs don't come close to their x86 counterparts.


Yes, but we have millions of idle phones at night constantly on and with insignificant power draw. Together they could easily match the idle PCs that people are happy to keep running and pay for that electricity.


One of the weird things about being a programmer is that we get really exposed to large crossings across orders of magnitude and it can be very difficult to internalize how that works. Sometimes, lots of little things don't add up to something significant. I don't know the exact numbers, but it's not hard to guess that a cell phone, by the time it's done thermally limiting itself and dealing with a massively smaller cache and all the other disadvantages it has could well be literally only 1/1,000th as effective as a single dedicated machine running this stuff. At that point, it can easily be the case that a million cell phones might add only single-digit percentages of improvement to the system as a whole, which, for the amount of human intervention in question, is not a very useful result. (That is, the same amount of human intervention could be much more usefully spent; if nothing else, by installing the native clients.)

I'm not saying that's the exact number; that depends on a lot of things. My point is that this is a great deal more plausible an outcome than your intuition may think. (It could even be worse.)

A similar idea was in vogue in the oughties about loading JS onto web pages and having people compute things while visiting CNN or something. But especially on the much slower JS of the time, and with no access to GPUs, by the time you worked out all the multiplicative slowdowns involved, and dealt with the crazy broken communications topology (radically slower than in-memory bandwidth, etc.), you were looking at loading down millions of people's machines to get the equivalent of single digit high-power dedicated machines for all but very embarrassingly parallel problems. You were better off just buying the CPU power.

("Well then, what about Seti@Home and such?" All embarrassingly parallel problems running native clients, at high rates of utilization. That's a several orders of magnitude more efficient than running things when a visitor happens to visit some web page (terrible utilization), on a slow JS VM, in a single thread.)


It looks like FAH has GPU support, but I don't see an AArch64 version that I could install on, say, an NVIDIA Jetson Nano.


And someone correct me if I'm wrong, but I imagine that would be much more energy efficient than a desktop computer


Energy efficiency doesn't necessarily comes from being better on full load. Smartphonechips provide tons of power saving mechanisms, true but also are quite limited on how they operate.

I assume that generic code on a x86 desktop cpu should be more efficient by watt/work in comparison on a mobile chip. I'm also not sure how a smartphone is rated for 100% cpu load 24/7


That's most likely to be the opposite of what is needed here: do as little as possible and sleep as much as possible. Whereas the project actually needs is as much raw computing power as you can provide.

Yes, there are some methods to provide more computing bang for less energy buck, but this is a comparatively minor issue.


Not really actually, as a ARM cpu is not as powerful as a x86_64 one : the "compute power / electrical power" should not be really better I guess


sounds like a great new idea for phone scammers; try to con people into downloading their covid research project.


This makes no sense to me that they do not have a windows version ... Majority of PCs in the net are windows based ...



I installed Folding@Home on my Win10 box yesterday.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: