Posts by bkil

1) Message boards : Number crunching : Tells us your thoughts on granting credit for large protein, long-running tasks (Message 97959)
Posted 8 Jul 2020 by bkil
Bear with me please: electricity is never free, hence you must not waste it.

Going fully renewable is fully possible as shown by Germany, but this is part of the reason of their higher energy prices.

If as a home owner you would want to go off grid (or even be a producer), you are free to install photovoltaics and a small wind turbine on the roof. However, someone is going to have to pay for installing and maintaining them, either you or your government.

They have a design life of a few decades, and if we anticipate increasing energy prices, your will probably see a return on your investment before they go bad. If you would be barely getting a return, that would mean that you have payed just the same amount on electricity as a lump sum front payment as if you had been billed monthly.

Now, considering various scenarios and/or local subsidies, you will probably pay less for your electricity overall, maybe 50% less. But this is a far cry compared to saying that my electricity is free.

And again, if in your country you also pay 30-50% less for your computing hardware, we have the same proportion that we started with and the exact same formula. If you payed 33% for electricity and 66% for hardware, the cost structure will change a bit, but I'm sure you will never arrive at a cost & investment strategy that commands for purchasing Pentium 4 computers in bulk to operate BOINC on them even if they were free, because the PV & turbine investment could had been better spent on producing points on more modern hardware.

There's maybe one exception: if for whatever reason you were producing heat with electricity (not sure why not with solar collectors, geoexchange/geothermal heat pumps or HVAC, but still) for example for bathing, sauna, doing laundry or dishes, cooking & food preservation, space heating, industrial drying etc, then a fleet of Pentium 4's will indeed produce free BOINC credits compared to a simple resistive heating element (putting the maintenance issues aside).
2) Message boards : Number crunching : Tells us your thoughts on granting credit for large protein, long-running tasks (Message 97907)
Posted 4 Jul 2020 by bkil
Where are you paying such a low rate? According to my reading, electricity costs the same in the USA on average ($0.13):

Actually, electricity is considered inexpensive around here (probably too cheap), around 10 cents EUR/kWh without any kind of subsidy (but you can even negotiate something like 33% off for certain use cases). It is much more expensive in Germany where they have a much higher proportion of renewables.

But anyway, there surely exist countries where electricity can be had for cheap (although, energy is never cheap, usually it is just some form of subsidy), but the message is the same: always do a back of the envelope calculation to sanity check whether a given rig is worth it. It's pretty simple to throw together a LibreOffice Calc sheet with all the formulae and you can plug in any electricity rate you desire.

The usual takeaway is that it is a good idea to do a total cost of ownership calculation for a given timeframe (like 3-5 years) that includes purchasing the hardware, operational costs and then at the end of the timeframe just sell the box while it still has let's say half the value to purchase a much more efficient rig at that point in time.

Even if you have made a great deal on electricity, hardware is also usually less expensive in the USA, so overall some of the conclusions would still be true in your case. If you still don't believe me, just state a legacy hardware you would like to operate, your annual budget and electricity rate and we can do a quick fact check for you.

This is something we've discussed and researched a lot in the thread for The most efficient cruncher rig possible

By the way, we did consider outsourcing our computing to countries with a lower electricity rate, but the benefit isn't that great compared to the operational nightmare (BOINC as a service anyone?). But I don't think we would be sending the right message if we outright stated that "people from your country shouldn't participate because you use fossil fuels and/or your electricity prices are not the lowest possible and/or your country isn't a signatory of the Kyoto Protocol".
3) Message boards : Number crunching : Tells us your thoughts on granting credit for large protein, long-running tasks (Message 97901)
Posted 4 Jul 2020 by bkil
I absolutely agree that every little helps. However, it's not true that BOINC should be running on all computers where it possibly can.

Rosetta at home is a special project in that anybody can meet the 72-hour deadline, because you control the target CPU runtime in the project settings.

However, I urge everybody to observe the performance/watt that their hardware can deliver and make rational decisions based on that. For example, if you ran on a Pentium 4 (underperforming even an Atom or an SBC), that would be a total waste of electricity, just contributing to global warming. For the same power consumption, a Ryzen could simulate multiple orders of magnitude more decoys. Just for the cost of the excess electricity, you could buy a better performing SBC in half a year or an Android TV box in a couple of months.

This is not the same as saying that you may only contribute if you have the latest and greatest, or that you need to buy something very expensive. For example I also run legacy ultra-low power portables that are still pretty competitive in performance/watt, along with cheap singe board computers, Android TV boxes and phones.

From the PC side, a Ryzen 3700X doesn't cost much, but a second hand 2700 model with a lowly A320M motherboard for half the price would also give an acceptable RAC/W.

I'm not saying that we should throw away all of our legacy hardware as toxic waste - they may still be used for cases where you aren't loading their CPU a lot, like for basic office tasks, chatting or as a thin client (although an SBC is also an option for this).
4) Message boards : Number crunching : The most efficient cruncher rig possible (Message 96784)
Posted 25 May 2020 by bkil
It's just a matter of good soldering skills and preferably also using some 12V-5V DC-DC conversion if the power supply isn't connected to anything else (depends on exact kind).
5) Message boards : Number crunching : The most efficient cruncher rig possible (Message 96783)
Posted 25 May 2020 by bkil
Testing with an 80GB HDD (FSP Hexa, B450M DS3H, AMD 3700X, 16GB DDR4) consumes 116-118W full load power from the wall under BOINC. Running from a RAM disk could shave off some more.

With a 22C ambient temperature, the CPU core heats up to 82C.

The cores seem to stay boosted to around 3.88GHz.
6) Message boards : Number crunching : The most efficient cruncher rig possible (Message 96768)
Posted 24 May 2020 by bkil
What you have measured just highlights what I have mentioned above: you can't trick physics. If you are bumping up the the voltage and disabling a core, you are losing efficiency.

Comparing top scores doesn't make sense.

I've recommended to compare a RAC over many weeks (>2), preferably from the same time interval. ~1000 RAC does sound realistic for a Raspberry Pi 4. dcdc's system doesn't seem to be crunching since long and it's not in continuous operation:

If it is not cooled properly, it will throttle itself even above 60C, but otherwise the values should match closely between well-cooled devices.

You also didn't seem to have picked up my hint that if you use a titanium ATX PSU to power multiple Pi's then it will vastly increase the performance/watt ratio (compared to ~60-70% wall warts) and that if you purchase 100 Pi devices they will give you a huge discount - I've tried this myself.
7) Message boards : Number crunching : The most efficient cruncher rig possible (Message 96767)
Posted 24 May 2020 by bkil
Just a small update. After assembling the $SUBJECT PC, it consumes 30.8 W when idling.

The PSU of choice at the end was an FSP HEXA 400W (because it could be had for a 50% discount):

It beeps without VGA, but nevertheless boots correctly and is accessible over ssh. Burn-in will continue in the coming days.
8) Message boards : Number crunching : Rosetta running on ARM platforms (Message 96446)
Posted 13 May 2020 by bkil
Due to non-linear frequency dependence on voltage, but linear relation with performance, it could very well happen that it performs better performance/watt.
9) Questions and Answers : Wish list : Heat control (Message 95990)
Posted 4 May 2020 by bkil
Yes, this would be a top requested feature according to my survey. After installing BOINC, even experienced users say they don't run it often because of the noise.

I made a simple script to modulate runtime based on fan speed and temperature (the same could be done with CPU power state as well up to a certain point).

Dialing back the runtime by hand in BOINC Manager has the drawback that it is not adaptive, meaning that you could run with higher utilization at night when temperatures are lower than during the day. This can be clearly seen from my logs. You also need a feedback based control loop because the user's interactive computer use also generates a variable amount of heat that can cause "fan attacks" as well if you only set a constant utilization factor.
10) Message boards : Number crunching : Partial use of many CPUs vs. Complete use of one CPU? (Message 95988)
Posted 4 May 2020 by bkil
According to my measurement, I always apply the "partial use of all cores" philosophy. It can be easily tested a thermally-constrained system.

If I set it to only use 1-2 cores, it will dial up the fans to 100% RPM and throttle like mad, but if I run over all cores and modulate the computing cores idle time in sync by hand in 50% of the time, the fans are spinning at a quiet setting (BOINC's CPU usage modulation doesn't seem to be that efficient).

This is related to turbo boost, power increasing with the square of voltage, allowing HT (almost 30-50% gain for negligible additional power), and package power saving optimizations.
11) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95825)
Posted 2 May 2020 by bkil
Thanks for the nspawn trick. We've developed the Raspberry Pi 3B+ trick right here on this forum:

12) Message boards : Cafe Rosetta : Moderators Contact Point (Explanations, Assistance etc) Post here! (Message 95779)
Posted 2 May 2020 by bkil
FYI. It defaults to on on most forum systems I use.

Why would you want to post to a thread if you aren't interested in the response? Although I have seen people like that, I don't think that it's valuable to the community.
13) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95677)
Posted 1 May 2020 by bkil
I expect it to only have minor effects. A checkpoint file takes about 20kB over here, although it may need a little computation to produce.

At the same time, if you increased the target cpu time, it would need to copy & decompress the gigantic zip file less often. But again, the amortized cost of this should be low.

I wouldn't be surprised if you saved more energy with mount options like `noatime,lazytime,commit=60,max_batch_time=50000` or tweaking the block device, and/or with lzo-compressing btrfs.

Do share your benchmark results with us if you find anything.
14) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95626)
Posted 30 Apr 2020 by bkil
BOINC takes care of snapshotting for you. If you simply shut down your computer in the evening and turn it back on in the morning (either manually or automatically), it will resume where it left off.

The i686 core had a bug few weeks ago that kept it from snapshotting properly, but it has otherwise been working correctly since I disabled 32-bit codes.
15) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95621)
Posted 30 Apr 2020 by bkil
That actually sounds very impressive. Last time I looked around here, PSU offering was much worse and more expensive.

Still, if you powered the horde of Pi's from such a PSU, their power consumption would probably also go down in the same proportion allowing for the same argument - just sayin'.

Here is a link just for reference:

16) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95618)
Posted 30 Apr 2020 by bkil
I still wouldn't declare a winner right now. There are lots of power consumption tweaks that you could apply to your Raspberry Pi 4 that nobody had bothered to measure up until now.

Also you are comparing the system AC power consumption of an rPi with a theoretical TDP (thermal design power) of a CPU itself (that is itself usually less than the maximal power used). If you add the motherboard, memory, fans, storage and then multiply this all with 80-85% AC conversion efficiency of a power supply, the difference wouldn't be that great as you think.

Also, you may optimize your budget if you ditched the SD card and booted over PXE and ran multiple Pi's from a single power supply (an ATX one one should supply a few dozen maybe).

And while we are mostly mentioning Raspberry Pi 4, there exists lots of other modern single board computers (SBC) on the market with 1-4GB RAM that can run 64-bit Linux, some cost less than a Pi, you may want to look these up. You should also not forget that you may be eligible for a discount when purchasing 100 of anything. I myself got into contact with an rPi employee and got a discount of about 40% for a volume purchase.

When you were comparing the overclocked Pi's you've omitted some important factors:
    - Overclocked systems need more expensive cooling
    - Overclocked systems carry a higher maintenance cost (lockups and potentially file system corruption every once in a while as you already see here, memory bit errors, etc)
    - Overclocked systems _may_ see a higher annual failure rate, increasing costs some more

Despite all of the above advantages, I still agree that managing a hundreds hosts requires great skills and is not for everyone, so purchasing a big box is definitely the easier route for most.

17) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95606)
Posted 30 Apr 2020 by bkil
If you see "waiting for memory", configure zram and overcommit on your memory. That's it! +33% performance for free. The amount of swap doesn't matter, because the BOINC scheduler only considers non-virtual memory, so you have to overcommit it to make use of swap/zram/zcache.

Your theory on caches is somewhat sound, but have you made any measurements? I found a forum topic about caches not mattering as much for R@h as first thought, but I don't think it was conclusive in the end.

Have you also considered that the core consumption may be reduced when it is in a wait state? Some BOINC projects did note this phenomenon, that also increases your performance/watt.

When you bump up the core count, the power increase should be less than linear, because there are various shared components within the CPU. On the other hand, when you are overclocking a CPU, consumption should increase at least linearly with clock and additionally with the square of voltage!

So it should be rarely worth it from a performance/watt perspective, but do share your math if you have _exact_ numbers. We must be extra cautious with our measurements, because dividing such small numbers can introduce big errors, especially if you don't do enough sampling and averaging.

"Squeezing in" more decoys within the "deadline" have absolutely no effect on your generated RAC in the end. If it extrapolates the time of the last model to take longer than the deadline, it simply won't start it and ask another WU.

18) Message boards : Number crunching : The most efficient cruncher rig possible (Message 95605)
Posted 30 Apr 2020 by bkil
It is quite common, most Android phones also had it set up under the hood for many years now.

Not sure how I could answer in the most correct way, but let me share some metrics if it helps. I'm simulating 3GB RAM on a 2GB node for running on 2 cores using 2GB zram compressed with deflate and a 2.5" HDD for backup.
    - uptime = 2454001s
    - kswapd = 137:48
    - ksoftirqd = 2:59 + 0:51
    - sum of all kernel threads = 9082s
    - 0.37%.

I'm keeping minute resolution stats of thermals, frequencies, load and power consumption (where available). The average I/O wait in the last 20 days was 0.3%. The median should be around 0%.

In some minutes it went up to 5-10%, but I can't be sure that it was because of BOINC, because it's also running DVR capture, regular media processing and an actively used file server in the background as well.

So the concept of this is that only infrequently used applications are swapped out and portions of heap that aren't really actively used, so swapping shouldn't really occur that much. Under these constraints, you performance hit should be minor.

19) Message boards : Cafe Rosetta : Moderators Contact Point (Explanations, Assistance etc) Post here! (Message 95601)
Posted 30 Apr 2020 by bkil
Could you perhaps enable automatic subscribing to a given thread if a user posts a reply?

It took me some time to realize that this was not done here and I think many who post questions here don't realize that they need to check back manually to see if they have any answers (unless they click the oddly hidden "subscribe" button at the top).
20) Message boards : Number crunching : Running on a 4GB Raspberry Pi 4 - How to? (Message 95600)
Posted 30 Apr 2020 by bkil
If you lose a whole core with this overclock, you would be better off computation and energy efficiency-wise if you simply dialed back the clock a bit.

Next 20

©2022 University of Washington