Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Source: marvel
In 2008 Tony Stark introduced…
ARC fusion reactor
Affordable
Robust
Compact
MIT continues research
https://www.hippopx.com/en/download/85850-3840x2160-900aaa051012883e7e1d77b1964e206c
Miroslav Wengner
Green Masterplan
Application development
Miroslav Wengner
• Husband, Father, Software Engineer, Author, Blogger, Technology Enthusiast
• Book Author: Practical Design Patterns for Java Developers [Packt]
• OpenJDK Committer, OpenSource projects contributor, Ex JCP Executive Committee
• Co-Author of Robo4J Project (Duke Award)
• Java Champion, JavaOne RockStar
• Principal Engineer at OpenValue
Safe Harbor Statement
All what you will hear can be di
ff
erent, this presentation is for
motivational purposes …
Agenda
• History and Evolution
• Industrial Revolution
• Green Initiatives and Energy
• Energy Consumption in action
• Conclusion
• Q/A
Mechanical
The ability to make tools
became commonplace
Electrical
Source: https://en.wikipedia.org/
Mechanical
may have a Similar Dominators
Electrical
Source: https://en.wikipedia.org/
e
ff
ective resources
usage per unit
Data Centers
Software
How did we got there ?
Industrial Revolution: timeline
?
Source: https://en.wikipedia.org/
Phase 1.
Steam Engines
Factories
Textile Machinery
small spot
18th 19th 20th 21st
Phase 2.
Logical Systems
Electri
fi
cation
Assembly lines
Bigger Scale
expanding spots
Phase 3.
Transistor
Optical Ampli
fi
er
Computers
Internet
Digital information at the large scale
Internet of Things
Cloud Computing
Arti
fi
cial Intelligence
Machine to Machine communication
connecting spots
Industrial Revolution
?
impact ?
Industrial Revolution
?
Source: https://en.wikipedia.org/
Sea level has risen about 250 mm
Annual Surface temperature has risen about 1,5 Celsius
…Past is knocking
Industrial Revolution: connected spots
Laptops, Desktops, IoT Devices, Cars, Smart Houses, AI
Servers, Virtual Machines, Clouds Provides
Energy resources for SOFTWARE ware taken as granted ?
taken out of the equation ?
SEEMS POSITIVE
Energy: Data Centers
• Globally, by 2025, they are projected to consume 20% of global electricity
and emit up to 5.5% of the world's carbon emissions.
• signi
fi
cant part of the energy consumed is transformed into:
• heat may reduce a system reliability
• life expectancy of devices
• escalation in cooling requirements
• Virtual Machines may run Idle (maybe 40->80%)
Initiatives: Green Software Foundation
Software Carbon Intensity
E: Energy consumed by software in kWh
I: Carbon emitted by kWh of energy,
M: Carbon emitted through the hardware
R: Scaling factor
what about the real emissions ?
Energy: Software industry impact
Scope 1+2 : own operations
Scope 3: broader value chain contains customers, suppliers
Green Initiatives: take aways
1. Carbon E
ffi
ciency implies cost reductions (not surprise)
2. Green Software Development helps introduce coding best practices (?)
di
ff
erent understanding business vs. nature
3. Shape demand for application development - better forecasting
4. Reduce carbon emissions
5. Increase lifecycle and usefulness of hardware and servers
Sustainability
Green Initiatives: take aways
1. Software Industry should take a RESPONSIBILITY and accept challenges
Only One Planet to Sustain
Energy as a good PROXY to emissions footprints
Energy Consumption: how to …
1. precisely de
fi
ne a task constrains
2. select tools
3. fairly measure
4. design process
5. undestand a data
Task
Watt
Measurement
Time t_x
Performed
action
Execution Time T_ex
Energy_Time T_en
Driving Idea
Energy Consumption: selecting tools
?
for i in range(range_max):
if is_prime(i) :
found_primes += 1
Python
for (int i = 2; i < range_max; i++) {
if(is_prime(i)){
found_primes++;
};
}
C
for (var i = 0; i < range_max; i++) {
if(isPrime(i)){
foundPrimes++;
}
}
JavaScript
for (int j = interval.start; j < interval.stop ; j++) {
if (isPrime(j)) {
foundPrimes.incrementAndGet();
}
}
Java
How to Repeat ?
Execution TOOLS:
• shell script - PID
• Tinytuya framework
?
… AUTOMATION …
Energy Consumption: fair measurements
?
Energy Consumption: measure fairly
Energy Consumption: measure fairly
Simple ideas could become complicated … AUTOMATION… rock it !
Measure IDLE state to normalize results
Energy Consumption: action
Selected Platforms
1. Java: OpenJDK, Zulu ver17, 21
2. C: gcc 12
3. Node 20
4. Python 3.11
Hardware
1. Raspberry PI 4 : 4c
2. Linux Intel i7 : 4c
3. MBP i7 : 4c and 6c
4. MBP : M1 Max, M2 Max
Calculated: Mean Value (MV), Standard Deviation (SD), Standard Error of Mean (SEM)
Energy Consumption: data
?
Task: Find Prime Numbers
Range: from 0 to 200 000 000, repeat 15 times
Watt Measurement: Idle State, Automatically calculated time window ( probes )
Java code is design with minimal heap usage
Task Duration varies
Some languages show signi
fi
cant energy consumption increment
Energy Consumption: kWatt/Task
?
Energy Consumption: kWatt/Task
?
Energy Consumption Standard Error of Mean (SEM) = 2,95 %
Energy Consumption: understanding data
?
MacBookPro 2019, Intel i7, 6 cores
MacBookPro M2 Max
best execution cca. 5 times slower
cca. 24 times lower Energy consumption
Energy Consumption: understanding data
?
Di
ff
erence between ARM and Intel architecture
Conclusion
?
• Who: Software Companies
• Managers, Devs, Ops
• What: should take a responsibility
• Why: CO2 footprint
Conclusion
?
• contribution to Green Masterplan:
• platform selection
• application design
• each executed instruction may contributes to CO2 emission
• extended tooling
• coding style and patterns
Book Author: Practical Design Patterns for Java Developers [Packt]
• controlled, not overused parallelism matters
• hardware may be good enough => usefulness
Thank YOU !
twitter: @miragemiko
github:@mirage22
email: miro@openvalue.de
Resources
• Energy-e
ffi
ciency and sustainability in new generation cloud computing:
A vision and directions for integrated management of data centre
resources and workloads : https://doi.org/10.1002/spe.3248
• TechMonitor: https://techmonitor.ai/focus/tech-industry-carbon-emissions-
progress
• Climate Change: Atmospheric Carbon Dioxide: https://www.climate.gov/
• Green Software Foundation: https://greensoftware.foundation/
• Energy E
ffi
ciency of Programming Languages on Arm and Intel: https://
openvalue.blog
?

More Related Content

Similar to JavaLand 2024: Application Development Green Masterplan

Implementing AI: Running AI at the Edge
Implementing AI: Running AI at the EdgeImplementing AI: Running AI at the Edge
Implementing AI: Running AI at the Edge
KTN
 
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AIArm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
inside-BigData.com
 
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
apidays
 
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Anubhav Jain
 
B Kindilien-Does Manufacturing Have a Future?
B Kindilien-Does Manufacturing Have a Future?B Kindilien-Does Manufacturing Have a Future?
B Kindilien-Does Manufacturing Have a Future?
jgIpotiwon
 
Green it
Green itGreen it
Future of hpc
Future of hpcFuture of hpc
Future of hpc
Putchong Uthayopas
 
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM 30. Mai 2022.pdf
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM  30. Mai 2022.pdfSustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM  30. Mai 2022.pdf
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM 30. Mai 2022.pdf
Thomas Treml
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
Aiman Hud
 
OpenACC and Open Hackathons Monthly Highlights June 2022.pdf
OpenACC and Open Hackathons Monthly Highlights June 2022.pdfOpenACC and Open Hackathons Monthly Highlights June 2022.pdf
OpenACC and Open Hackathons Monthly Highlights June 2022.pdf
OpenACC
 
Unit 2 Java
Unit 2 JavaUnit 2 Java
Unit 2 Java
arnold 7490
 
The next hope of future is a green computing
The next hope of future is a green computingThe next hope of future is a green computing
The next hope of future is a green computing
ahmad satar
 
How to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green CodingHow to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green Coding
Mindtrek
 
Sustainable Development using Green Programming
Sustainable Development using Green ProgrammingSustainable Development using Green Programming
Sustainable Development using Green Programming
IRJET Journal
 
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
Jonathan Koomey
 
Computing Outside The Box September 2009
Computing Outside The Box September 2009Computing Outside The Box September 2009
Computing Outside The Box September 2009
Ian Foster
 
Edinburgh 2020 digital changes everything v10
Edinburgh 2020 digital changes everything v10Edinburgh 2020 digital changes everything v10
Edinburgh 2020 digital changes everything v10
Ian Abbott-Donnelly
 
Mobilesoft 2017 Keynote
Mobilesoft 2017 KeynoteMobilesoft 2017 Keynote
Mobilesoft 2017 Keynote
Abhik Roychoudhury
 
Code for the earth OCP APAC Tokyo 2013-05
Code for the earth OCP APAC Tokyo 2013-05Code for the earth OCP APAC Tokyo 2013-05
Code for the earth OCP APAC Tokyo 2013-05
Tetsu Saburi
 
James e owen resume detailed jan 2-16
James e owen resume detailed jan 2-16James e owen resume detailed jan 2-16
James e owen resume detailed jan 2-16
James Owen
 

Similar to JavaLand 2024: Application Development Green Masterplan (20)

Implementing AI: Running AI at the Edge
Implementing AI: Running AI at the EdgeImplementing AI: Running AI at the Edge
Implementing AI: Running AI at the Edge
 
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AIArm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
Arm A64fx and Post-K: Game-Changing CPU & Supercomputer for HPC, Big Data, & AI
 
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
apidays London 2023 - API Green Score, Yannick Tremblais & Julien Brun, Green...
 
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
 
B Kindilien-Does Manufacturing Have a Future?
B Kindilien-Does Manufacturing Have a Future?B Kindilien-Does Manufacturing Have a Future?
B Kindilien-Does Manufacturing Have a Future?
 
Green it
Green itGreen it
Green it
 
Future of hpc
Future of hpcFuture of hpc
Future of hpc
 
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM 30. Mai 2022.pdf
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM  30. Mai 2022.pdfSustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM  30. Mai 2022.pdf
Sustainability & AI Lecture Lorenz Kupfer Thomas Treml HAM 30. Mai 2022.pdf
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
OpenACC and Open Hackathons Monthly Highlights June 2022.pdf
OpenACC and Open Hackathons Monthly Highlights June 2022.pdfOpenACC and Open Hackathons Monthly Highlights June 2022.pdf
OpenACC and Open Hackathons Monthly Highlights June 2022.pdf
 
Unit 2 Java
Unit 2 JavaUnit 2 Java
Unit 2 Java
 
The next hope of future is a green computing
The next hope of future is a green computingThe next hope of future is a green computing
The next hope of future is a green computing
 
How to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green CodingHow to (Help to) Save Our Planet with Green Coding
How to (Help to) Save Our Planet with Green Coding
 
Sustainable Development using Green Programming
Sustainable Development using Green ProgrammingSustainable Development using Green Programming
Sustainable Development using Green Programming
 
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
Koomey's talk on energy use and the information economy at the UC Berkeley Ph...
 
Computing Outside The Box September 2009
Computing Outside The Box September 2009Computing Outside The Box September 2009
Computing Outside The Box September 2009
 
Edinburgh 2020 digital changes everything v10
Edinburgh 2020 digital changes everything v10Edinburgh 2020 digital changes everything v10
Edinburgh 2020 digital changes everything v10
 
Mobilesoft 2017 Keynote
Mobilesoft 2017 KeynoteMobilesoft 2017 Keynote
Mobilesoft 2017 Keynote
 
Code for the earth OCP APAC Tokyo 2013-05
Code for the earth OCP APAC Tokyo 2013-05Code for the earth OCP APAC Tokyo 2013-05
Code for the earth OCP APAC Tokyo 2013-05
 
James e owen resume detailed jan 2-16
James e owen resume detailed jan 2-16James e owen resume detailed jan 2-16
James e owen resume detailed jan 2-16
 

More from Miro Wengner

Boost delivery stream with code discipline engineering
Boost delivery stream with code discipline engineeringBoost delivery stream with code discipline engineering
Boost delivery stream with code discipline engineering
Miro Wengner
 
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
Miro Wengner
 
New Java features: Simplified Design Patterns[LIT3826]
New Java features: Simplified Design Patterns[LIT3826]New Java features: Simplified Design Patterns[LIT3826]
New Java features: Simplified Design Patterns[LIT3826]
Miro Wengner
 
ASML_FlightRecorderMeetsJava.pdf
ASML_FlightRecorderMeetsJava.pdfASML_FlightRecorderMeetsJava.pdf
ASML_FlightRecorderMeetsJava.pdf
Miro Wengner
 
DevDays: Profiling With Java Flight Recorder
DevDays: Profiling With Java Flight RecorderDevDays: Profiling With Java Flight Recorder
DevDays: Profiling With Java Flight Recorder
Miro Wengner
 
JMC/JFR: Kotlin spezial
JMC/JFR: Kotlin spezialJMC/JFR: Kotlin spezial
JMC/JFR: Kotlin spezial
Miro Wengner
 
Plug Hardware and Play Java
Plug Hardware and Play JavaPlug Hardware and Play Java
Plug Hardware and Play Java
Miro Wengner
 
From Concept to Robotic Overlord with Robo4J
From Concept to Robotic Overlord with Robo4J From Concept to Robotic Overlord with Robo4J
From Concept to Robotic Overlord with Robo4J
Miro Wengner
 
JavaOne 2016 :: Bringing Robot online with Robo4j Framework
JavaOne 2016 :: Bringing Robot online with Robo4j FrameworkJavaOne 2016 :: Bringing Robot online with Robo4j Framework
JavaOne 2016 :: Bringing Robot online with Robo4j Framework
Miro Wengner
 
JavaOne presentation - building steps :: Number42 is alive
JavaOne presentation - building steps :: Number42 is alive JavaOne presentation - building steps :: Number42 is alive
JavaOne presentation - building steps :: Number42 is alive
Miro Wengner
 
The Robot under dictate of the LegoMindStorm Java Concurrency API
The Robot under dictate of the LegoMindStorm Java Concurrency APIThe Robot under dictate of the LegoMindStorm Java Concurrency API
The Robot under dictate of the LegoMindStorm Java Concurrency API
Miro Wengner
 
How RaspberryPi workers building GraphDatabase
How RaspberryPi workers building GraphDatabaseHow RaspberryPi workers building GraphDatabase
How RaspberryPi workers building GraphDatabase
Miro Wengner
 

More from Miro Wengner (12)

Boost delivery stream with code discipline engineering
Boost delivery stream with code discipline engineeringBoost delivery stream with code discipline engineering
Boost delivery stream with code discipline engineering
 
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
[meetup] Mastering Java enhancements like a Pro: practical design patterns an...
 
New Java features: Simplified Design Patterns[LIT3826]
New Java features: Simplified Design Patterns[LIT3826]New Java features: Simplified Design Patterns[LIT3826]
New Java features: Simplified Design Patterns[LIT3826]
 
ASML_FlightRecorderMeetsJava.pdf
ASML_FlightRecorderMeetsJava.pdfASML_FlightRecorderMeetsJava.pdf
ASML_FlightRecorderMeetsJava.pdf
 
DevDays: Profiling With Java Flight Recorder
DevDays: Profiling With Java Flight RecorderDevDays: Profiling With Java Flight Recorder
DevDays: Profiling With Java Flight Recorder
 
JMC/JFR: Kotlin spezial
JMC/JFR: Kotlin spezialJMC/JFR: Kotlin spezial
JMC/JFR: Kotlin spezial
 
Plug Hardware and Play Java
Plug Hardware and Play JavaPlug Hardware and Play Java
Plug Hardware and Play Java
 
From Concept to Robotic Overlord with Robo4J
From Concept to Robotic Overlord with Robo4J From Concept to Robotic Overlord with Robo4J
From Concept to Robotic Overlord with Robo4J
 
JavaOne 2016 :: Bringing Robot online with Robo4j Framework
JavaOne 2016 :: Bringing Robot online with Robo4j FrameworkJavaOne 2016 :: Bringing Robot online with Robo4j Framework
JavaOne 2016 :: Bringing Robot online with Robo4j Framework
 
JavaOne presentation - building steps :: Number42 is alive
JavaOne presentation - building steps :: Number42 is alive JavaOne presentation - building steps :: Number42 is alive
JavaOne presentation - building steps :: Number42 is alive
 
The Robot under dictate of the LegoMindStorm Java Concurrency API
The Robot under dictate of the LegoMindStorm Java Concurrency APIThe Robot under dictate of the LegoMindStorm Java Concurrency API
The Robot under dictate of the LegoMindStorm Java Concurrency API
 
How RaspberryPi workers building GraphDatabase
How RaspberryPi workers building GraphDatabaseHow RaspberryPi workers building GraphDatabase
How RaspberryPi workers building GraphDatabase
 

Recently uploaded

How Netflix Builds High Performance Applications at Global Scale
How Netflix Builds High Performance Applications at Global ScaleHow Netflix Builds High Performance Applications at Global Scale
How Netflix Builds High Performance Applications at Global Scale
ScyllaDB
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
Running a Go App in Kubernetes: CPU Impacts
Running a Go App in Kubernetes: CPU ImpactsRunning a Go App in Kubernetes: CPU Impacts
Running a Go App in Kubernetes: CPU Impacts
ScyllaDB
 
Verti - EMEA Insurer Innovation Award 2024
Verti - EMEA Insurer Innovation Award 2024Verti - EMEA Insurer Innovation Award 2024
Verti - EMEA Insurer Innovation Award 2024
The Digital Insurer
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Why do You Have to Redesign?_Redesign Challenge Day 1
Why do You Have to Redesign?_Redesign Challenge Day 1Why do You Have to Redesign?_Redesign Challenge Day 1
Why do You Have to Redesign?_Redesign Challenge Day 1
FellyciaHikmahwarani
 
AC Atlassian Coimbatore Session Slides( 22/06/2024)
AC Atlassian Coimbatore Session Slides( 22/06/2024)AC Atlassian Coimbatore Session Slides( 22/06/2024)
AC Atlassian Coimbatore Session Slides( 22/06/2024)
apoorva2579
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design ApproachesKnowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
Earley Information Science
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
UiPathCommunity
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
jackson110191
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
Vijayananda Mohire
 
How to Avoid Learning the Linux-Kernel Memory Model
How to Avoid Learning the Linux-Kernel Memory ModelHow to Avoid Learning the Linux-Kernel Memory Model
How to Avoid Learning the Linux-Kernel Memory Model
ScyllaDB
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
amitchopra0215
 
STKI Israeli Market Study 2024 final v1
STKI Israeli Market Study 2024 final  v1STKI Israeli Market Study 2024 final  v1
STKI Israeli Market Study 2024 final v1
Dr. Jimmy Schwarzkopf
 

Recently uploaded (20)

How Netflix Builds High Performance Applications at Global Scale
How Netflix Builds High Performance Applications at Global ScaleHow Netflix Builds High Performance Applications at Global Scale
How Netflix Builds High Performance Applications at Global Scale
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
Running a Go App in Kubernetes: CPU Impacts
Running a Go App in Kubernetes: CPU ImpactsRunning a Go App in Kubernetes: CPU Impacts
Running a Go App in Kubernetes: CPU Impacts
 
Verti - EMEA Insurer Innovation Award 2024
Verti - EMEA Insurer Innovation Award 2024Verti - EMEA Insurer Innovation Award 2024
Verti - EMEA Insurer Innovation Award 2024
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Why do You Have to Redesign?_Redesign Challenge Day 1
Why do You Have to Redesign?_Redesign Challenge Day 1Why do You Have to Redesign?_Redesign Challenge Day 1
Why do You Have to Redesign?_Redesign Challenge Day 1
 
AC Atlassian Coimbatore Session Slides( 22/06/2024)
AC Atlassian Coimbatore Session Slides( 22/06/2024)AC Atlassian Coimbatore Session Slides( 22/06/2024)
AC Atlassian Coimbatore Session Slides( 22/06/2024)
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design ApproachesKnowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
Knowledge and Prompt Engineering Part 2 Focus on Prompt Design Approaches
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
 
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfINDIAN AIR FORCE FIGHTER PLANES LIST.pdf
INDIAN AIR FORCE FIGHTER PLANES LIST.pdf
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
 
How to Avoid Learning the Linux-Kernel Memory Model
How to Avoid Learning the Linux-Kernel Memory ModelHow to Avoid Learning the Linux-Kernel Memory Model
How to Avoid Learning the Linux-Kernel Memory Model
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
@Call @Girls Pune 0000000000 Riya Khan Beautiful Girl any Time
 
STKI Israeli Market Study 2024 final v1
STKI Israeli Market Study 2024 final  v1STKI Israeli Market Study 2024 final  v1
STKI Israeli Market Study 2024 final v1
 

JavaLand 2024: Application Development Green Masterplan

  • 1. Source: marvel In 2008 Tony Stark introduced… ARC fusion reactor Affordable Robust Compact MIT continues research
  • 4. Miroslav Wengner • Husband, Father, Software Engineer, Author, Blogger, Technology Enthusiast • Book Author: Practical Design Patterns for Java Developers [Packt] • OpenJDK Committer, OpenSource projects contributor, Ex JCP Executive Committee • Co-Author of Robo4J Project (Duke Award) • Java Champion, JavaOne RockStar • Principal Engineer at OpenValue
  • 5. Safe Harbor Statement All what you will hear can be di ff erent, this presentation is for motivational purposes …
  • 6. Agenda • History and Evolution • Industrial Revolution • Green Initiatives and Energy • Energy Consumption in action • Conclusion • Q/A
  • 7. Mechanical The ability to make tools became commonplace Electrical Source: https://en.wikipedia.org/
  • 8. Mechanical may have a Similar Dominators Electrical Source: https://en.wikipedia.org/ e ff ective resources usage per unit
  • 10. Industrial Revolution: timeline ? Source: https://en.wikipedia.org/ Phase 1. Steam Engines Factories Textile Machinery small spot 18th 19th 20th 21st Phase 2. Logical Systems Electri fi cation Assembly lines Bigger Scale expanding spots Phase 3. Transistor Optical Ampli fi er Computers Internet Digital information at the large scale Internet of Things Cloud Computing Arti fi cial Intelligence Machine to Machine communication connecting spots
  • 12. Industrial Revolution ? Source: https://en.wikipedia.org/ Sea level has risen about 250 mm Annual Surface temperature has risen about 1,5 Celsius …Past is knocking
  • 13. Industrial Revolution: connected spots Laptops, Desktops, IoT Devices, Cars, Smart Houses, AI Servers, Virtual Machines, Clouds Provides Energy resources for SOFTWARE ware taken as granted ? taken out of the equation ? SEEMS POSITIVE
  • 14. Energy: Data Centers • Globally, by 2025, they are projected to consume 20% of global electricity and emit up to 5.5% of the world's carbon emissions. • signi fi cant part of the energy consumed is transformed into: • heat may reduce a system reliability • life expectancy of devices • escalation in cooling requirements • Virtual Machines may run Idle (maybe 40->80%)
  • 15. Initiatives: Green Software Foundation Software Carbon Intensity E: Energy consumed by software in kWh I: Carbon emitted by kWh of energy, M: Carbon emitted through the hardware R: Scaling factor what about the real emissions ?
  • 16. Energy: Software industry impact Scope 1+2 : own operations Scope 3: broader value chain contains customers, suppliers
  • 17. Green Initiatives: take aways 1. Carbon E ffi ciency implies cost reductions (not surprise) 2. Green Software Development helps introduce coding best practices (?) di ff erent understanding business vs. nature 3. Shape demand for application development - better forecasting 4. Reduce carbon emissions 5. Increase lifecycle and usefulness of hardware and servers Sustainability
  • 18. Green Initiatives: take aways 1. Software Industry should take a RESPONSIBILITY and accept challenges Only One Planet to Sustain Energy as a good PROXY to emissions footprints
  • 19. Energy Consumption: how to … 1. precisely de fi ne a task constrains 2. select tools 3. fairly measure 4. design process 5. undestand a data Task Watt Measurement Time t_x Performed action Execution Time T_ex Energy_Time T_en Driving Idea
  • 20. Energy Consumption: selecting tools ? for i in range(range_max): if is_prime(i) : found_primes += 1 Python for (int i = 2; i < range_max; i++) { if(is_prime(i)){ found_primes++; }; } C for (var i = 0; i < range_max; i++) { if(isPrime(i)){ foundPrimes++; } } JavaScript for (int j = interval.start; j < interval.stop ; j++) { if (isPrime(j)) { foundPrimes.incrementAndGet(); } } Java How to Repeat ? Execution TOOLS: • shell script - PID • Tinytuya framework
  • 21. ? … AUTOMATION … Energy Consumption: fair measurements
  • 23. Energy Consumption: measure fairly Simple ideas could become complicated … AUTOMATION… rock it ! Measure IDLE state to normalize results
  • 24. Energy Consumption: action Selected Platforms 1. Java: OpenJDK, Zulu ver17, 21 2. C: gcc 12 3. Node 20 4. Python 3.11 Hardware 1. Raspberry PI 4 : 4c 2. Linux Intel i7 : 4c 3. MBP i7 : 4c and 6c 4. MBP : M1 Max, M2 Max Calculated: Mean Value (MV), Standard Deviation (SD), Standard Error of Mean (SEM)
  • 25. Energy Consumption: data ? Task: Find Prime Numbers Range: from 0 to 200 000 000, repeat 15 times Watt Measurement: Idle State, Automatically calculated time window ( probes ) Java code is design with minimal heap usage Task Duration varies Some languages show signi fi cant energy consumption increment
  • 27. Energy Consumption: kWatt/Task ? Energy Consumption Standard Error of Mean (SEM) = 2,95 %
  • 28. Energy Consumption: understanding data ? MacBookPro 2019, Intel i7, 6 cores MacBookPro M2 Max best execution cca. 5 times slower cca. 24 times lower Energy consumption
  • 29. Energy Consumption: understanding data ? Di ff erence between ARM and Intel architecture
  • 30. Conclusion ? • Who: Software Companies • Managers, Devs, Ops • What: should take a responsibility • Why: CO2 footprint
  • 31. Conclusion ? • contribution to Green Masterplan: • platform selection • application design • each executed instruction may contributes to CO2 emission • extended tooling • coding style and patterns Book Author: Practical Design Patterns for Java Developers [Packt] • controlled, not overused parallelism matters • hardware may be good enough => usefulness
  • 32. Thank YOU ! twitter: @miragemiko github:@mirage22 email: miro@openvalue.de
  • 33. Resources • Energy-e ffi ciency and sustainability in new generation cloud computing: A vision and directions for integrated management of data centre resources and workloads : https://doi.org/10.1002/spe.3248 • TechMonitor: https://techmonitor.ai/focus/tech-industry-carbon-emissions- progress • Climate Change: Atmospheric Carbon Dioxide: https://www.climate.gov/ • Green Software Foundation: https://greensoftware.foundation/ • Energy E ffi ciency of Programming Languages on Arm and Intel: https:// openvalue.blog ?