AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
PhD Pre-Thesis
1. Analyzing and Optimizing
Abnormal Energy Consumption in Software Systems
Rui Pereira
ruipereira@di.uminho.pt
Universidade do Minho
João Saraiva
Supervisors
jas@di.uminho.pt
Universidade do Minho
Jácome Cunha
jacome@fct.unl.pt
Universidade Nova de Lisboa
Pre-Thesis
3. Green Computing
•Caught the attention of many companies allowing them to
save:
2
“close to 50% of the energy costs of an organization can be attributed to the IT departments”
- [Harmon and Auseklis, 2009]
Pre-Thesis
4. Green Computing – Greenness by IT
3
“up to 90% of energy used by ICT hardware can
be attributed to software”
- [Standard, 2013]
Pre-Thesis
6. PhD Research Motivation
5
Mining questions about software energy consumption
- [Pinto et al., 2014]
How does code obfuscation impact energy usage?
- [Sahin et al., 2014]
Initial explorations on design pattern energy usage
- [Sahin et al., 2012]
Calculating source line level energy information for android applications
- [Li et al., 2013]
Seeds: A software engineer’s energy-optimization decision support framework
- [Manotas et al., 2014]
Mining energy-greedy API usage patterns in android apps: An empirical study
- [Linares-Vasquez et al., 2014]
Pre-Thesis
7. PhD Research Questions
6
1. Is it possible to accurately detect and identify energy faults?
2. Can these energy faults be optimized without the expense of program
functionality?
3. Can we show this information in a manner allowing programmers to
become energy-aware while programming?
Pre-Thesis
14. Past Year
13
•Grand Prize Winners ($2000) Energy Consumption Detection in LabVIEW -
•Visit to - +
•Publications:
• Graphical querying of model-driven spreadsheets (HCI’14)
• Refactoring smelly spreadsheet models (ICCSA’14)
• Embedding model-driven spreadsheet queries in spreadsheet systems (VL/HCC’14)
• ES-SQL: Visually querying spreadsheets (VL/HCC’14)
• Refactoring meets model-driven spreadsheet evolution (QUATIC’14)
Pre-Thesis
15. Analyzing and Optimizing
Abnormal Energy Consumption in Software Systems
Rui Pereira
ruipereira@di.uminho.pt
Universidade do Minho
João Saraiva
Supervisors
jas@di.uminho.pt
Universidade do Minho
Jácome Cunha
jacome@fct.unl.pt
Universidade Nova de Lisboa
Pre-Thesis
Notas del editor
Good afternoon everyone. Today ill be presenting my phd pre-thesis, which will focus on improving the energy consumption of computers by a software approach
Recently, the impact we have done to the planet has caught much attention with the talks of global warming and green house gases.
Some of this stems from things such as : oil drilling, high electrical consumption, CO2 emissions. The IT field also contributes to this.
A koomey report states that in 2011, energy consumption by IT was estimated at 1-1.5% of the worlds emissions (nearly 1gigaton), and in 2020 would increase to 3%.
Many green initiatives have been started, such as green cars and transport, recycling, reforestation, etc
One of these green intiatives is green computing (a sub-domain in computer sciences which focuses on responsibly managing resources in a more efficient manner with the purpose of reducing energy costs.)
This IT initiative has caught the attention of several big named companies. Mostly because they can save two things:
The environment, the trees, etc
The green they like most, something that doesn’t grow on trees
In fact “quote”
Google uses a customized evaporative cooling system to reduce its data centers’ energy consumption.
Symantec Corp decided to reduce their CO2 emissions by 15% by 2012. To accomplish this, they consolidated their sunnyvale data center, and– these two steps reduced $2 million and over 6million kilowats of energy
Kerstens and DuChene use Ganglia Moab While Shukla proposes some hardware design techniques for power reduction.
have begun to identify ways to measure, analyze, and implement energy efficient alternatives, not only for datacenters, but also for domestic appliances.
But most of these attempts are HW or external based, steming from reducing energy loss at the power supply chain. We can see this as greenness by IT
And even so, energy consumption keeps rising steeply, which shows that the rising demand is exceeding efficiency improvement, and the window for
optimization is closing.
In fact “quote”
Thus we need to turn to the software spectrum, analyze energy consumption, and apply green computing practices, or Greenness of IT.
Google has frequently discussed green software computing on their blog, and
the software quality house SIG (software improvement group) have developed some green software metrics for e-services and even a laboratory to measure SW energy footprints, the SEFLab
But honestly, few have actually delved into this spectrum –
And there is where I come in
This PhD project is motivated on the need to look at the software side to tackle the energy consumption problem. While ill focus on software, the solution will obviously expand to mobile applications, data-centers, and other computing applications.
There are studies that further support our research ideas:
Pinto and others have showed there is much interest from the programming community in analyzing and solving high energy consumption. Nevertheless, they also show that there is no tool support or knowledge for energy-aware programming.
Sahin demonstrate how different ways of programming, in this case code obfuscation, impacts energy usage, and show how different design patterns also influence energy consumption.
Li and others show it is possible to calculate source line level energy information.
Manotas calculated the energy costs for various java collections, and showed which consume the most and least amount of energy.
Linares-Vasquez further showed how different design patterns, mvc, information hiding and persistance layers have a significat impact on an app’s energy consumption.
Energy faults(critical areas in source code in terms of high energy consumption?)
This plan is divided into three main parts: The analysis, Optimization, and Visualization of energy-leaks
We must first begin by analyzing program consumption, to try to accurately detect where energy faults occur. This task might be the most important, as all future tasks will depend on the information gathered here.
To do this, we must start by measuring the energy consumption.
We have already started to look into this, and have some interesting ways. I’ve had personal interaction with the following three, one from an industrial partner and two within my research team.
The first is a physical measurement approach -> SEFLab. This lab has various sensor attachments that connect to any kind of computer component, allowing the real measurement. Be that the HD, RAM, Processor, Fans, etc – and use inhouse software to, at any given time, choose what component or components they wish to measure and display the information.
This is a power consumption model for a HTC dream. A consumption model considers the various factors which contribute to energy consumption. Using variables associated to each factor, such as low/med/high for screen brightness and static energy consumption coefficients, we can accurately estimate consumption costs. We are currently developing a way to dynamically create the consumption models, instead of having one for each specific phone.
The third way is to analyze source code directly. We have adapted a Spectrum-based fault localization technique, which is normally used to detect bugs in SW code, we can detect where energy leaks occur, from various levels such as packages to functions.
Eventually we will choose the technique to be used, through a series of validations, and begin analyzing the results.
Here we will begun to find the indicators and bad smells to high energy costs, allowing us to construct a red smell catalog. These smells are to be found throughout the whole plan, but will only begin to be found after concluding this task.
In our second task, we will concern ourselves on how to display the information we have gathered, and from using our techniques. This would allow programmers to begin becoming energy aware when coding, and allow us to distribute our prototypes to other researchers and continue gathering more patterns and smells that cause high energy consumption.
We have been looking at how to display this information, some of our ideas are: sandburst, code flagging, and even a combination of both.
We have also discussed this specific problem at the Visual Languages and Human-Centric Computing during the Doctoral Symposium, and were given a number of great ideas to look into. The committee showed a lot of interest in this work and found the problem we wanted to tackle fascinating.
Once again, we will validate our chosen approach with an empirical study using programmers.
So whats a red smell catalog without its green refactorings?
This final task will focus on constructing the refactorings for the smells we detected causing high energy consumption. Here we will define the theories, methodologies, and approaches to optimize software to become green.
We plan on also building a prototype wizard, which will display information from the analysis, where in ones code are the high consumption spots, and show how to correct them or automatically refactor the code according to our catalog.
And once again, the theories, methodologies, and tools will run through a series of validations.
As industrial partners, we will work with: primavera, SIG, National Instruments, and VisionSpace whom we already have a QREN green research project (Green software for space control mission)
My team and I were the grand prize winners of the VL/HCC 2014 Travel Support Competition, due to the innovating ideas presented in this presentation
I was also able to visit the SIG and SEFLab HQs
And while not directly in the context of green, I did produce works that focus on some part of my plan: from analysis, smell detection and refactoring, and visual languages.