Page 1 of 1
Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 12:26 pm
by eddyc
Hi,
This is my first post so hello everyone.
I've been folding for quite a while, mostly in the winter to keep my room warm.
In a few months I'm going to move into a new flat which has no gas supply. All the heating is done with electric radiators on the walls.
In my view it is a shame to use electricity to produce heat without first using it to do something useful - like F@H. I'm thinking that in this new flat I should go all out and aim to heat the entire place during the winter only on folding. Even better would be to hook them up to a thermostat somehow and have them work harder as it gets colder.
Anyone else tried to do anything like this? Is it possible to vary the Folding Power based on the computer's temp sensors (or an external temp sensor)?
Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 2:25 pm
by Napoleon
Welcome to the forum, eddyc.
The idea isn't unheard of, and some forum members with big folding farms have mentioned that folding offsets some - even most - of their heating costs during winter. Hopefully those who have had that experience are available for comment.
As for automating things... first you'd want a temperature reading from some sort of external sensor, I'd imagine. No problem as such, see
http://www.pcsensor.com/index.php?_a=pr ... oduct_id=7 for example. The next step would be to get the reading to some easily manageable format like plaintext logfile. Doesn't look overly complicated either. From there on, you'd have to do scripting/programming/tuning of your own, but the 3rd party API (or telnet interface) in FAHClient v7 allows you to unpause/finish individual folding slots.
So, in theory it's doable, but there's no super easy way to do it. Some programming/scripting skill required, AFAICT. I'd try some relatively cheap USB thermometer first (like the one I linked to). See if you can read the temperature into a simple program/script. Then build a system with multiple high-end (thus high wattage) GPUs and unpause/finish individual GPUs (folding slots) based on the measured external temperature. Tune the program/script as needed, of course.
A bit crude, perhaps, but sounds like something
I would be able to pull off (given time and money), so someone more tech savvy could probably come up with a fancier solution.
FYI, some recent(ly resurrected) discussion on multi-GPU setups:
viewtopic.php?f=38&t=9340&start=15#p252971
viewtopic.php?f=38&t=25372

Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 3:20 pm
by 7im
No, there is nothing in the client to vary the client load with temps. It's either folding or not.
Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 4:03 pm
by billford
eddyc wrote:Even better would be to hook them up to a thermostat somehow and have them work harder as it gets colder.
I'm sure I remember somewhere in these forums that some GPUs control their own temperature by changing the clock speed, that might be a possible approach?
I'd like to quote a link to a relevant topic, but couldn't find one- this could be because my memory is at fault or that, knowing nothing about GPUs, I haven't been using the right search terms! Maybe someone else knows where to look or can confirm that my memory isn't what it used to be...
Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 4:43 pm
by 7im
Yes, both GPUs and CPUs downclock when they get too hot. I don't think I would recommend pushing hardware so hard that it has to downclock to run fah during the warm part of the day just so it would run at a normal (but slightly faster) speed at night.
Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 8:40 pm
by Rattledagger
7im wrote:No, there is nothing in the client to vary the client load with temps. It's either folding or not.
As last months news
mentions, if you've got a single-card Nvidia you can pause crunching if it hits an user-configurable temperature-limit. Since I've never had a Nvidia-card I've no idea if this works or not, but even with Amd-card it shows-up in the log:
Code: Select all
23:17:33:WU00:FS00:0x17:Temperature control disabled. Requirements: single Nvidia GPU, tmax must be < 110 and twait >= 900
Re: Automatically vary Folding Power based on temp
Posted: Mon Dec 09, 2013 9:18 pm
by 7im
Again, this is only for the GPU, and this tmax option is again an all or nothing kind of option. Not a variable load with variable temp option. This is just another way to keep from melting down the GPU chip, not a way to heat your house. If your GPU goes above 110 degrees, it stops folding for 900 seconds (15 minutes), then starts up again.
There is NO option in the client to set a variable %age of usage based on temps as there is no temp input for the client. You would have more luck using overclocking software that monitors temps to up or downclock the CPU or GPU.
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 1:30 pm
by eddyc
Thanks for all the replies. V interesting.
Unfortunately I don't have the scripting/programming skills to write an integration between a thermometer and the FAHClient API. I'll have a look into it but I'm pretty sure it'll be beyond my very meagre coding skills!
But it sounds like that would be the right approach. Even if the Folding Power can't be varied based on temp, if the folding could pause and unpause then that should be enough...
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 2:34 pm
by bruce
Pausing and unpausing from the API is a very simple process, but the overall process might (or might not) be beyond your skill level. That doesn't prevent some other 3rd party from taking on the project.
Nevertheless FAH isn't really designed to be paused and unpaused frequently. FAH writes a checkpoint periodically. For CPU-based projects, that's typically every 15 minutes. For GPU based projects it's generally at some different interval, but it doesn't hurt to think of it as every 20 minutes. (YMMV). After a pause, when FAH is unpaused, it restarts from the previous checkpoint.
Suppose the previous checkpoint was 1 minute ago. FAH must repeat that one minute's work. Suppose the previous checkpoint was 20 minutes ago. FAH must repeat that 20 minutes' work.
Now suppose your temperature sensor turns the heat on and off and 10-minute intervals. It's likely that no net progress will be made because 10 minutes isn't long enough to restart and get enough work done to make a new checkpoint.
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 2:45 pm
by 7im
People who talk about heating their place by folding aren't telling you the full story. Sure, they do that, but folding runs full time. Sometimes that's enough heat, but most of the time it is not. So the regular thermostat on the wall kicks in to supplement the heat from folding. It's not like fah is their only source of heat, or that fah gets turned off on a sunny winter day.
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 3:31 pm
by billford
bruce wrote:
Now suppose your temperature sensor turns the heat on and off and 10-minute intervals. It's likely that no net progress will be made because 10 minutes isn't long enough to restart and get enough work done to make a new checkpoint.
Is it possible to set a slot to 'finish' and "fold' via the API?
That might provide a method of control, but it would require a fairly large number of GPUs to make the control reasonably fine. It might be more suitable to providing background heat so that it shuts off when not required.
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 4:06 pm
by ChristianVirtual
Yes, you can control finishing, pause and start via API.
But many years ago I learned that frequent temperature changes for chips is not healthy. So I would avoid that. Open the window in case it get too warm also solves the heat problem

Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 4:21 pm
by billford
ChristianVirtual wrote:Open the window in case it get too warm also solves the heat problem

Healthier too

Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 4:24 pm
by bruce
... and as 7im suggests, use FAH to provide slightly less than the total heat than you need and supplement it with something else that happily tolerates frequent on/off cycles. You want to keep the room close enough to a desired constant temperature for general comfort and by itself, FAH probably won't to that well.
Re: Automatically vary Folding Power based on temp
Posted: Tue Dec 10, 2013 8:13 pm
by Napoleon
ChristianVirtual wrote:Yes, you can control finishing, pause and start via API.
Then there's the good old manual control... you'd probably want, say, three high-end multiGPU folding setups (400W-800W) acting as space heaters per traditional electrical heater. Summer: 0-1 on; Autumn/Spring: 1-2 on; Winter: 3 on. The traditional heaters serving as a backup in case it gets "Russian hell" cold, of course. Finish/unpause individual systems (manually) per traditional heater as you please, based on "damn it's cold/hot this room". Fine-tune periodically with individual GPU folding slots if you can't be bothered to put on/remove a sweater or something. Mere 3000 to 6000 EUR/USD to replace a single traditional electrical heater, I'd think.
May sound like a lot of work, but there's a bright side. Do it all on aircooling, install dust filters on all air intake case fans, clean them as per regular computer maintenance. Chances are you only need to vacuum your high-tech-humanitarian flat once or twice per summer.
