How the business can benefit from your green Java application

[ad_1]

In her presentation at Devoxx UK, Holly Cummins – Senior Software Engineer at Red Hat – presented approaches to making Java applications more cost- and energy-efficient. She says that choosing wisely between JVM or alternatives in your application can save up to twice the costs and carbon footprint of her team’s work with Quarcus.

Her presentation began by sharing data showing that the IT industry is creating more carbon emissions than aviation. The consumption needed just to run data centers is the same as the energy needed in South Korea. Adding network traffic to the equation, the consumption exceeds that of the UK or Brazil.

Instead of taking the “path of desperation” and taking action, she suggests, we can all act as “solution makers” to reduce emissions. The business will benefit from cost reductions and improved environmental, social and governance outcomes beyond being “the right thing”.

She suggests that it is the right place to start with the principles of the Green Software Foundation, which builds on three pillars: carbon awareness, hardware and electrical efficiency.

Carbon awareness: Where and when you use electricity

Everything comes down to the source of electricity, currently the waste energy source is coal. Combustion produces large amounts of carbon dioxide. Different parts of the world use different ways to generate their electricity depending on the location. Choosing a clear cloud provider makes it easy to decide where data centers will be located.

Also, because renewable energy sources are intermittent, the time of day is important. She points out that we can schedule heavy batch jobs at the right time when the energy is green. She often points out that it’s cheap too.

She gives the example of Virginia, US: on the one hand, it is close to where the transatlantic internet cable comes out, which means that many data centers are clustered in close proximity. And on the other hand, the abundance of coal in the area is an obvious choice for electricity generation.

Hardware efficiency: the ratio of the infrastructure to its use

In the year Citing a 2017 study, 16,000 servers do nothing useful, and one from 2014 says 29% of servers don’t work 5% of the time. She introduced the concept of LightSwitchOps – switching off your infrastructure when the applications are not running.

Yes, deleting apps is scary.

To do this requires fast start times, resilience and self-reliance.

Electrical efficiency: How efficient the stack and algorithms we use are.

From an academic paper that measured power consumption of different programming languages ​​by comparing time, energy and memory, she says that Java isn’t that bad, ranking fifth behind C, Rust, C++ and Ada, but ahead of HiD to the “compiled isn’t necessarily better” statement.

She cites another academic paper focusing more on Java, running the JVM:

Our results show that some JVM platforms can show up to 100% more power consumption.

Using the famous software development adage “measure don’t guess”, she presents the work done by the team from Red Hat working on Quercus to learn more about the usability of the framework.

Diffraction: Carbon measurement. heavy

After listing the options that have been considered, such as wall force measurements or RAPLs, she refers to the previously referenced paper:

Energy consumption (type, mostly) is proportional to the execution time

And stating that reducing infrastructure spending “(probably) reduces your carbon footprint.” Given the minimal computing requirements of Quorcus, she suggests their test conclusions:

  • From a density perspective: Compared to the classic JVM, Quarks cuts carbon by about 2x.
  • In terms of capacity: compared to the classic JVM, Quark’s Carbon is roughly 2 to 3x smaller.

In the final part of her presentation, she provides a refresher on the use cases of when to use JVM or native Java for your application. A JVM is best if your application has high workloads (lots of overhead), long-running processes (which can heat up), stable workloads, or very little elasticity in the underlying orchestration. On the other hand, the native option is suitable for low workloads, resource-constrained/old hardware and high redeployment (apps don’t warm up before launch) or serverless.

She concludes with concrete steps that can be taken to contribute to reducing the carbon footprint. So it encourages you to use your purchasing power to encourage businesses to make green choices for hosting solutions but also for consumer software. Be sure to “turn off” infrastructure you don’t use. Choose power-efficient languages ​​and frameworks. In addition to having a small impact on the planet, she says these measures ensure efficient spending: according to her, in 2010 By 2021, “zombie servers” will be 26.6 billion.



[ad_2]

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *