7 ms·
It seems most of these boil down to: build more efficient software. Software that is more efficient with the network and CPU is also cheaper to run. So the inc
by throwaway2016a 5y ago
It seems most of these boil down to: build more efficient software.
Software that is more efficient with the network and CPU is also cheaper to run. So the incentives are generally aligned. When I deploy a system I want it to run on 5 servers not 50 for cost reasons not because I'm being green. If I'm being green by accident, that's a bonus.
I'm glad on the "measure" side it gives examples of how to measure (though I can't vouch for how good they are).
But really, as a web app developer (which is most of HN, I think) this doesn't apply "too" much beyond just increasing hardware efficiency which you'll want to do anyway. It intuitively seems graphics and GPU heavy apps are the biggest offenders.
- anyonecancode 5y ago> So the incentives are generally aligned. When I deploy a system I want it to run on 5 servers not 50 for cost reasons not because I'm being green. If I'm being green by accident, that's a bonus. I think that's the whole game right there -- figure out how to make sure negative externalities stop being external and become part of the cost. Then incentives will naturally align, as opposed to being at odds. In the case of your comment, you're noting they're already aligned, but overall I think many times they are not.
- pjc50 5y agoIn particular, there are all sorts of incentives for adtech to burn CPU on the _client_, which doesn't cost them anything. It's entirely possible to burn 0.1cent of electricity to earn 0.001cent of ad revenue.
- londons_explore 5y agoAdtech as a whole totally earns far more revenue than the electricity cost to run all that client side javascript. Slow ad loading costs them more in lost revenue than the electricity used, so the incentives are still aligned.
- pjc50 5y agoI don't think this is proven either way. The only research I am aware of is https://ris.utwente.nl/ws/files/5095958/Hidden-Energy-Costs.pdf https://ris.utwente.nl/ws/files/5095958/Hidden-Energy-Costs.... which puts ads at about 3.4% of PC web browsing energy use, but that's not a financial number.
- bcrosby95 5y agoThey put ads at requiring an extra 2.5w of energy. You can use that to directly calculate the cost from your local electricity rates. For me, the calculation is: 2.5w / 1000 * 28 cents = 0.07 cents per hour.
- throwaway894345 5y agoHonestly, the number one thing any of us can do for the climate is to contact our representatives regularly about climate pricing. Absent that, we’ll never slow our pollution enough to stop runaway warming. Everything else is a micro optimization that may even distract us from the only thing that will get us over the line.
- marcosdumay 5y ago> the number one thing any of us can do for the climate is to contact our representatives regularly about climate pricing That's probably correct. > Absent that, we’ll never slow our pollution enough to stop runaway warming. But that's probably wrong. People managed to make non-polluting energy sources more compelling than the polluting ones even when the pollution is fully externalized. We will probably see a huge change on the next 20 years, and after that it will probably be better to focus on carbon capture. What may make the first part incorrect is that focusing on intervention on the energy supply to speed-up the process may be more effective than focusing on intervention on the energy consumption. But if I had to design a policy today, I'd go almost all for the government to focus on consumption (AKA pollution taxing) and basic research.
- throwaway894345 5y ago> But that's probably wrong. People managed to make non-polluting energy sources more compelling than the polluting ones even when the pollution is fully externalized. I don't think this is true. In particular, while the price is lower for "non-polluting", we still don't have an answer for clean base load generation (well, we do--nuclear--but that seems to be off the table). Even ignoring the storage problem, I don't think we (Americans) are on track to power our entire economy with renewables by 2050. We'll probably be able to meet our current electricity demand with renewable energy by 2050, but we also need to electrify almost every other sector in our economy--most notably transportation--which means we need to generate a whole lot more electricity than we do today. Also, if wealthy countries don't implement any kind of border adjustment, we'll just keep outsourcing our pollution to the likes of China who will happily keep burning (ever cheaper) oil.
- BoxOfRain 5y agoI do wonder how many kW of power things that HN generally disparages as bloated (Electron being the main one people talk about) actually adds up to versus more efficient technologies?
- deleted 5y ago[deleted]
- throwaway2016a 5y agoThat's a good point I didn't think of. And one that I think also applies to a lesser extent to websites. It is certainly possible to build a website that makes Chrome use a lot of CPU and network data. I still think it applies mostly to graphics apps and things like blockchain though. As bad as electron is... would be interesting to measure it with those tools the website lists, though.
- BoxOfRain 5y agoYeah my gut feeling is that Bitcoin alone trounces any waste caused by Electron and badly written webapps, but it'd probably still be worth measuring I think. At the very least it'd be another argument on the side of "let's not use Moore's Law as an excuse for writing inefficient software".
- pjc50 5y agoRan across this earlier today: https://twitter.com/alexhern/status/1440295741835014149 https://twitter.com/alexhern/status/1440295741835014149 "Something that stood out: TSMC (with 55% of the global market share, per https://theregister.com/2021/06/01/q1_2021_foundry_revenue_trendforce/ https://theregister.com/2021/06/01/q1_2021_foundry_revenue_t...) uses 5% of all Taiwan's electricity, which is approx 12TWh/yr. Bitcoin's electricity footprint is… 13 times that, at 164TWh/yr (https://digiconomist.net/bitcoin-energy-consumption https://digiconomist.net/bitcoin-energy-consumption)"
- goodpoint 5y agoTons, unsurprisingly. There are website energy calculators around.
- mfer 5y agoI think there's something missing here. In how we operate applications. It's not unusual to run an application on a server where that server is using only 25% of its resources (e.g., ram and/or cpu). Then, there are many different servers running many applications all of which are under utilized. There are more efficient ways to operate these applications that drive up power efficiency. Google brags about the power efficiency of their data centers[1]. They do a bunch of things worth copying. There are ways to operate software better... not just develop the apps themselves. [1] https://www.google.com/about/datacenters/efficiency/ https://www.google.com/about/datacenters/efficiency/ edited to add missing link
- throwaway2016a 5y agoMost companies don't have control over their data centers (except to maybe use energy efficiency as a selection criteria). But you have a point about CPU. But regarding incentive alignment, making those data centers more efficient is not just more green but also saves the companies a boatload of money. Since cloud providers don't charge extra for your utilization percentage I've always told my teams: if the CPU is running cold either the software can use it more efficiently or we're overpaying by renting more capacity than we need.
- mfer 5y agoA lot of companies still have control their data centers or some portion of them. At least to an extent to control how things are scheduled on hardware. Kubernetes is similar enough to Borg (the datacenter/cluster OS that Google uses) to efficiently schedule workloads over a cluster. There are ways to use it anyplace one has a cluster for that purpose. This is just to provide an example.
- throwaway2016a 5y agoI agree, you can architect your system to make better use of hardware for sure. What I meant was: I can't tell AWS to make more efficient power switching or design an ASIC that is lower power. Best I can do is say that if they don't I'll move to another provider. It's been a long time since I've worked with a company with any significant number of physical racks they rent/own where they can put their own hardware on them. Though, I admit, I may be suffering bias here and it could be they are more common and I just happen to work with companies that are cloud based. Edit: I used to work for Lycos in the mid 2000s and we were just starting to do that (run our workload on VMs instead of metal so we could make all the servers multi-tenant. That was the last time I've worked with a physical server and the Lycos network (across all their sites) was the equivalent of a top 50 website at the time.
- jiehong 5y agoThis only applies if you are the one running your own software. Websites are often offending, because they are run by the clients, so it matters less: they get bigger, with more JavaScript, maybe hosted far away, etc. I know of Website Carbon Calculator[0] that can put a number on this for a given site. [0]: https://www.websitecarbon.com https://www.websitecarbon.com
- bluGill 5y agoYou have options as a developer. Instead of python/php/perl/ruby (and hundreds of others most of which I don't know) you can write your server side code in C/C++/rust/ada/ (again hundreds of others). You will spend a lot more energy compiling and debugging your code up front, but in the long run you will use less energy on all the server. But will you - every time you roll out an update there are a lot more compiler hours on the developer machines, and less on the server time to amortize it over. Note that I didn't list managed languages like Java or C#. It isn't clear where they fall - they tend to defer a lot of the CPU until after the user work is done (garbage collection for example). I don't know if anyone has done any fair analysis on this so I'm going to leave it as an exercise for the reader.
- vaughanknight 5y agoIn addition there is a need to look at the total cost including supporting functions. Dev test servers, build pipelines, redundancy, failover, deployment environments. Sometimes these may be 5% of emissions, but at other times much higher. And some languages will have significantly less emissions when idle. A good example here may be, a machine learning model may have 90%+ of it's carbon emissions in the training, vs the operation.