SlideShare a Scribd company logo
1 of 37
Download to read offline
Adopting Autonomic Computing
Capabilities in Existing Large-Scale
Systems
Heng Li Tse-Hsun (Peter) Chen Ahmed E. Hassan
Mohamed Nasser, Parminder Flora
Manually configuring large-scale
software systems is costly & error-prone
Software systemWorkload Performance
4
Manually configuring large-scale
software systems is costly & error-prone
Software systemWorkload Performance
Configuration
5
Unsatisfied
perf. ?
Workloads are constantly evolving, requiring constant human
intervention to ensure optimal performance
6
Business
logic
Autonomic
computing
system
Autonomic computing aims to reduce
manual efforts
Adding autonomic computing capabilities
to existing large-scale systems
7
Software
system
Adding autonomic computing capabilities
to existing large-scale systems
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Perf.
measures
8
Our subject system is designed without
an autonomic computing mindset
9
Millions of lines of code
Actively evolving (many
full-time developers)
Fast-paced agile
development
Thousands of organizations
use it for mission-critical
operations
Adding autonomic computing capabilities to
existing mission-critical systems is challenging
10
Millions of lines of code
Actively evolving (many
full-time developers)
Fast-paced agile
development
Thousands of organizations
use it for mission-critical
operations
Adopting autonomic computing
capabilities in existing large-scale systems
Understanding
runtime
behavior
Minimizing
footprint
Minimizing
risk
12
Statistics &
test
automation
Separation
from original
business logic
Getting
developers
involved
Expecting
failures & full
control
Proof of
concept &
transparencyThese challenges can generally apply to many other existing
systems that need autonomic computing capabilities
Minimizing
footprint
Minimizing
risk
Getting
developers
involved
Statistics &
test
automation
Separation
from original
business logic
Adopting autonomic computing
capabilities in existing large-scale systems
13
Expecting
failures & full
control
Proof of
concept &
transparency
Understanding
runtime
behavior
The runtime behaviour of a large-scale
system is usually not well understood
Environment Workload
Performance
Configuration
14
Developers may not fully understand the
performance impact of configurations
Environment Workload
Performance
Configuration
15
Studying the relationship between
configuration parameters and performance
Asking domain
experts
16
Perf. related
parameters Perf. data
Statistical
analysis
Perf. critical
parameters
Running
tests
Only a few out of many candidate parameters significantly
impact the system performance
Very costly!
Using test automation to minimize
experimental overhead
17
Cleanup system
Test run
Configuring
New configuration
Start system
Stop system
The original system only read
configs at startup
Removing the impact of the
previous test
Test automation is critical for minimizing manual effort and
leveraging testing resources during machine-spare time
Minimizing
footprint
Minimizing
risk
Getting
developers
involved
Adopting autonomic computing
capabilities in existing large-scale systems
18
Statistics &
test
automation
Separation
from original
business logic
Expecting
failures & full
control
Proof of
concept &
transparency
Understanding
runtime
behavior
Understanding
runtime
behavior
Minimizing
risk
Getting
developers
involved
Adopting autonomic computing
capabilities in existing large-scale systems
19
Statistics &
test
automation
Separation
from original
business logic
Expecting
failures & full
control
Proof of
concept &
transparency
Minimizing
footprint
Separating autonomic computing
concerns from the original business logic
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Perf.
measures
22
Separating autonomic computing
concerns from the original business logic
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
24
Separate! Perf.
measures
Separating autonomic computing
concerns from the original business logic
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Remote
management
Separate!
Streamed
log data
(Readily
available) 25
Perf.
measures
Separating autonomic computing
concerns from the original business logic
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Remote
management
Separate!
Streamed
log data
(Readily
available) 26
Perf.
measures
Only changed a few hundreds lines of code to
the original system
Negligible performance overhead
Leveraging readily-existing logs to
monitor system runtime behavior
27
Log
streamsOriginal system
Real-time perf.
measures
Fast response to workload changes
(within seconds)
Log files
Perf. opt.
Understanding
runtime
behavior
Minimizing
risk
Getting
developers
involved
Adopting autonomic computing
capabilities in existing large-scale systems
28
Statistics &
test
automation
Expecting
failures & full
control
Proof of
concept &
transparency
Separation
from original
business logic
Minimizing
footprint
Understanding
runtime
behavior
Minimizing
risk
Minimizing
footprint
Process &
product
transparency
Statistics &
test
automation
Adopting autonomic computing
capabilities in existing large-scale systems
Expecting
failures &
transparency
29
Separation
from original
business logic
Getting
developers
involved
We need to drive developers to change
their code
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Remote
management
Streamed
log data
(Readily
available) 30
Perf.
measures
(Involving
developers)
Motivate developers by proving the
concept of autonomic computing
31
Prove
the
concept
Motivate developers by proving the
concept of autonomic computing
Original system
Self-
monitoring
Self-configuring Self-optimizingOptimized
parameter values
Remote
management
Streamed
log data
(Readily
available) 32
Perf.
measures
(Involving
developers)
Stop and
re-config
Proving the concept of autonomic
computing
33
We regularly meet with the stakeholders to present/demo our
work, ensuring they are on the same pages as us
Prove
the
concept
Developers
change
code
Integrate code
changes & Prove
the concept
Developers
change
code
…
…
Visualizing the dynamics of autonomic
computing (transparency)
34
Monitoring
autonomic
computing
progress
Dashboard
Providing real-time debugging support to developers
Understanding
runtime
behavior
Minimizing
risk
Minimizing
footprint
Statistics &
test
automation
Adopting autonomic computing
capabilities in existing large-scale systems
Expecting
failures &
transparency
35
Separation
from original
business logic
Proof of
concept &
transparency
Getting
developers
involved
Understanding
runtime
behavior
Getting
developers
involved
Minimizing
footprint
Statistics &
test
automation
Adopting autonomic computing
capabilities in existing large-scale systems
Expecting
failures &
transparency
36
Separation
from original
business logic
Proof of
concept &
transparency
Minimizing
risk
Expecting failures
37
In case of a problem (e.g., crash):
- Ability to automatically unplug
the autonomic computing
capabilities;
- Ability to recover to a default
state.
The failures of the autonomic computing capabilities will not
interrupt the normal execution of the original system
Providing full manual control
38
Full
manual
control
Dashboard
Practitioners can turn on/off autonomic computing capabilities or
manually change configurations at any time
Understanding
runtime
behavior
Getting
developers
involved
Minimizing
footprint
Adopting autonomic computing
capabilities in existing large-scale systems
39
Statistics &
test
automation
Separation
from original
business logic
Expecting
failures & full
control
Proof of
concept &
transparency
Minimizing
risk
The autonomic computing capabilities
significantly improve system performance
40
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●●●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●●●
●
●
●●
●
●●●●
●
●
●
●
●
●●●●●●
●
●
●
●
●●●●
●
●
●
●
●
●
●
●●●●
●
●
●
●
●
●●●●
●●
●
●
●
●
●●●
●
●
●
●
●
●●
●
●
●●
●●
●
●
●
●
●
●
●●●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●●●●
●
●
●
●●●
●
●
●●
●●●
●
●
●
●
●●●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●●●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●●
●●
●
●
●●●
●
●●
●●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
0 60 120 180 240 300
Running Time (minutes)
Key
Performance
Indicator
Autonomic computing capabilities
● Turned off
Turned on
Low workload, KPI is optimal
High workload, KPI drops
(KPI)
The autonomic computing capabilities
significantly improve system performance
41
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●●●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●●●
●
●
●●
●
●●●●
●
●
●
●
●
●●●●●●
●
●
●
●
●●●●
●
●
●
●
●
●
●
●●●●
●
●
●
●
●
●●●●
●●
●
●
●
●
●●●
●
●
●
●
●
●●
●
●
●●
●●
●
●
●
●
●
●
●●●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●●●●
●
●
●
●●●
●
●
●●
●●●
●
●
●
●
●●●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●●●●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●●
●●
●
●
●●●
●
●●
●●●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●●●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●●
●
●
●●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●●●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
0 60 120 180 240 300
Running Time (minutes)
Key
Performance
Indicator
Autonomic computing capabilities
● Turned off
Turned on
KPI is always optimal
Adapting quickly to the changing workloads
(KPI)
Adopting autonomic computing
capabilities in existing large-scale systems
42
Statistics &
test
automation
Separation
from original
business logic
Expecting
failures & full
control
Proof of
concept &
transparency
Understanding
runtime
behavior
Minimizing
risk
Getting
developers
involved
Minimizing
footprint
Adopting autonomic computing
capabilities in existing large-scale systems
43
Statistics &
test
automation
Separation
from original
business logic
Expecting
failures & full
control
Proof of
concept &
transparency
Understanding
runtime
behavior
Minimizing
risk
Getting
developers
involved
Minimizing
footprint
Thank you!
http://hengli.org
hengli@cs.queensu.ca
@henglli

More Related Content

Similar to Adopting Autonomic Computing to Improve Existing Systems Performance

ITLCHN 18 - Automation & DevOps - Automic
ITLCHN 18 -  Automation & DevOps - AutomicITLCHN 18 -  Automation & DevOps - Automic
ITLCHN 18 - Automation & DevOps - AutomicIT Expert Club
 
UiPath Amsterdam DEV meet-up For Developers, By Developers
UiPath Amsterdam DEV meet-up For Developers, By DevelopersUiPath Amsterdam DEV meet-up For Developers, By Developers
UiPath Amsterdam DEV meet-up For Developers, By DevelopersCristina Vidu
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignVinayagam Mariappan
 
Our Journey To Continuous Delivery
Our Journey To Continuous DeliveryOur Journey To Continuous Delivery
Our Journey To Continuous DeliveryRobert Mircea
 
Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Luis Cabrera
 
Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Luis Cabrera
 
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September LondonIcon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September LondonIBM Systems UKI
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & ValidationElmar Selbach
 
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...Mozaic Works
 
Test Automation Trends For 2021
Test Automation Trends For 2021Test Automation Trends For 2021
Test Automation Trends For 2021BugRaptors
 
System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)United International University
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software EngineeringMiroslaw Staron
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQMIBM Rational
 
The future of testing - value generation 2021-04-24
The future of testing - value generation 2021-04-24The future of testing - value generation 2021-04-24
The future of testing - value generation 2021-04-24UiPath
 
UiPath Test Suite Overview
UiPath Test Suite OverviewUiPath Test Suite Overview
UiPath Test Suite OverviewErik Leaseburg
 
Rules in Artificial Intelligence
Rules in Artificial IntelligenceRules in Artificial Intelligence
Rules in Artificial IntelligencePierre Feillet
 

Similar to Adopting Autonomic Computing to Improve Existing Systems Performance (20)

ITLCHN 18 - Automation & DevOps - Automic
ITLCHN 18 -  Automation & DevOps - AutomicITLCHN 18 -  Automation & DevOps - Automic
ITLCHN 18 - Automation & DevOps - Automic
 
UiPath Amsterdam DEV meet-up For Developers, By Developers
UiPath Amsterdam DEV meet-up For Developers, By DevelopersUiPath Amsterdam DEV meet-up For Developers, By Developers
UiPath Amsterdam DEV meet-up For Developers, By Developers
 
Automotive engineering design - Model Based Design
Automotive engineering design - Model Based DesignAutomotive engineering design - Model Based Design
Automotive engineering design - Model Based Design
 
CS ppt.pptx
CS ppt.pptxCS ppt.pptx
CS ppt.pptx
 
Our Journey To Continuous Delivery
Our Journey To Continuous DeliveryOur Journey To Continuous Delivery
Our Journey To Continuous Delivery
 
Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...
 
Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...Engineering plant facilities 17 artificial intelligence algorithms & proc...
Engineering plant facilities 17 artificial intelligence algorithms & proc...
 
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September LondonIcon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September London
 
Presentation Verification & Validation
Presentation Verification & ValidationPresentation Verification & Validation
Presentation Verification & Validation
 
Cim unit i-2_marks
Cim unit i-2_marksCim unit i-2_marks
Cim unit i-2_marks
 
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
 
Test Automation Trends For 2021
Test Automation Trends For 2021Test Automation Trends For 2021
Test Automation Trends For 2021
 
UiPath Test Automation Webinar Recap
UiPath Test Automation Webinar RecapUiPath Test Automation Webinar Recap
UiPath Test Automation Webinar Recap
 
System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)
 
AI for Software Engineering
AI for Software EngineeringAI for Software Engineering
AI for Software Engineering
 
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
4.4.2013 Software Quality - Regression Testing Automated and Manual - RFT/RQM
 
The future of testing - value generation 2021-04-24
The future of testing - value generation 2021-04-24The future of testing - value generation 2021-04-24
The future of testing - value generation 2021-04-24
 
UiPath Test Suite Overview
UiPath Test Suite OverviewUiPath Test Suite Overview
UiPath Test Suite Overview
 
Rules in Artificial Intelligence
Rules in Artificial IntelligenceRules in Artificial Intelligence
Rules in Artificial Intelligence
 
Critical parameter management
Critical parameter managementCritical parameter management
Critical parameter management
 

More from Concordia University

Towards better software quality assurance by providing intelligent support
Towards better software quality assurance by providing intelligent supportTowards better software quality assurance by providing intelligent support
Towards better software quality assurance by providing intelligent supportConcordia University
 
A first look at the integration of machine learning models in complex autonom...
A first look at the integration of machine learning models in complex autonom...A first look at the integration of machine learning models in complex autonom...
A first look at the integration of machine learning models in complex autonom...Concordia University
 
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...Concordia University
 
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...Concordia University
 
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...Concordia University
 
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...Concordia University
 
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsCSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsConcordia University
 
Improving the Performance of Database-Centric Applications Through Program An...
Improving the Performance of Database-Centric Applications Through Program An...Improving the Performance of Database-Centric Applications Through Program An...
Improving the Performance of Database-Centric Applications Through Program An...Concordia University
 
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...Concordia University
 
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...Concordia University
 
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...Concordia University
 
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...Concordia University
 
MSR2014 - An Empirical Study of Dormant Bugs
MSR2014 - An Empirical Study of Dormant BugsMSR2014 - An Empirical Study of Dormant Bugs
MSR2014 - An Empirical Study of Dormant BugsConcordia University
 
MSR2012 - Explaining Software Defects Using Topic Models
MSR2012 - Explaining Software Defects Using Topic ModelsMSR2012 - Explaining Software Defects Using Topic Models
MSR2012 - Explaining Software Defects Using Topic ModelsConcordia University
 

More from Concordia University (14)

Towards better software quality assurance by providing intelligent support
Towards better software quality assurance by providing intelligent supportTowards better software quality assurance by providing intelligent support
Towards better software quality assurance by providing intelligent support
 
A first look at the integration of machine learning models in complex autonom...
A first look at the integration of machine learning models in complex autonom...A first look at the integration of machine learning models in complex autonom...
A first look at the integration of machine learning models in complex autonom...
 
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...
iPerfDetector: Characterizing and Detecting Performance Anti-patterns in iOS ...
 
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
TSE 2016 - Finding and Evaluating the Performance Impact of Redundant Data Ac...
 
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
ICSE2017 - Analytics Driven Load Testing: An Industrial Experience Report on ...
 
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
FSE2016 - CacheOptimizer: Helping Developers Configure Caching Frameworks for...
 
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale SystemsCSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
CSER2016 - Detecting Problems in Database Access Code of Large Scale Systems
 
Improving the Performance of Database-Centric Applications Through Program An...
Improving the Performance of Database-Centric Applications Through Program An...Improving the Performance of Database-Centric Applications Through Program An...
Improving the Performance of Database-Centric Applications Through Program An...
 
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...
ICSE2016 - Detecting Problems in Database Access Code of Large Scale Systems ...
 
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...
MSR2016 - An Empirical Study on the Practice of Maintaining Object-Relational...
 
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...
ICDE2015PhD - Improving the Quality of Large-Scale Database-Centric Software ...
 
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
ICSE2014 - Detecting Performance Anti-patterns for Applications Developed usi...
 
MSR2014 - An Empirical Study of Dormant Bugs
MSR2014 - An Empirical Study of Dormant BugsMSR2014 - An Empirical Study of Dormant Bugs
MSR2014 - An Empirical Study of Dormant Bugs
 
MSR2012 - Explaining Software Defects Using Topic Models
MSR2012 - Explaining Software Defects Using Topic ModelsMSR2012 - Explaining Software Defects Using Topic Models
MSR2012 - Explaining Software Defects Using Topic Models
 

Recently uploaded

Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 

Recently uploaded (20)

Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 

Adopting Autonomic Computing to Improve Existing Systems Performance

  • 1. Adopting Autonomic Computing Capabilities in Existing Large-Scale Systems Heng Li Tse-Hsun (Peter) Chen Ahmed E. Hassan Mohamed Nasser, Parminder Flora
  • 2. Manually configuring large-scale software systems is costly & error-prone Software systemWorkload Performance 4
  • 3. Manually configuring large-scale software systems is costly & error-prone Software systemWorkload Performance Configuration 5 Unsatisfied perf. ? Workloads are constantly evolving, requiring constant human intervention to ensure optimal performance
  • 5. Adding autonomic computing capabilities to existing large-scale systems 7 Software system
  • 6. Adding autonomic computing capabilities to existing large-scale systems Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Perf. measures 8
  • 7. Our subject system is designed without an autonomic computing mindset 9 Millions of lines of code Actively evolving (many full-time developers) Fast-paced agile development Thousands of organizations use it for mission-critical operations
  • 8. Adding autonomic computing capabilities to existing mission-critical systems is challenging 10 Millions of lines of code Actively evolving (many full-time developers) Fast-paced agile development Thousands of organizations use it for mission-critical operations
  • 9. Adopting autonomic computing capabilities in existing large-scale systems Understanding runtime behavior Minimizing footprint Minimizing risk 12 Statistics & test automation Separation from original business logic Getting developers involved Expecting failures & full control Proof of concept & transparencyThese challenges can generally apply to many other existing systems that need autonomic computing capabilities
  • 10. Minimizing footprint Minimizing risk Getting developers involved Statistics & test automation Separation from original business logic Adopting autonomic computing capabilities in existing large-scale systems 13 Expecting failures & full control Proof of concept & transparency Understanding runtime behavior
  • 11. The runtime behaviour of a large-scale system is usually not well understood Environment Workload Performance Configuration 14
  • 12. Developers may not fully understand the performance impact of configurations Environment Workload Performance Configuration 15
  • 13. Studying the relationship between configuration parameters and performance Asking domain experts 16 Perf. related parameters Perf. data Statistical analysis Perf. critical parameters Running tests Only a few out of many candidate parameters significantly impact the system performance Very costly!
  • 14. Using test automation to minimize experimental overhead 17 Cleanup system Test run Configuring New configuration Start system Stop system The original system only read configs at startup Removing the impact of the previous test Test automation is critical for minimizing manual effort and leveraging testing resources during machine-spare time
  • 15. Minimizing footprint Minimizing risk Getting developers involved Adopting autonomic computing capabilities in existing large-scale systems 18 Statistics & test automation Separation from original business logic Expecting failures & full control Proof of concept & transparency Understanding runtime behavior
  • 16. Understanding runtime behavior Minimizing risk Getting developers involved Adopting autonomic computing capabilities in existing large-scale systems 19 Statistics & test automation Separation from original business logic Expecting failures & full control Proof of concept & transparency Minimizing footprint
  • 17. Separating autonomic computing concerns from the original business logic Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Perf. measures 22
  • 18. Separating autonomic computing concerns from the original business logic Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values 24 Separate! Perf. measures
  • 19. Separating autonomic computing concerns from the original business logic Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Remote management Separate! Streamed log data (Readily available) 25 Perf. measures
  • 20. Separating autonomic computing concerns from the original business logic Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Remote management Separate! Streamed log data (Readily available) 26 Perf. measures Only changed a few hundreds lines of code to the original system Negligible performance overhead
  • 21. Leveraging readily-existing logs to monitor system runtime behavior 27 Log streamsOriginal system Real-time perf. measures Fast response to workload changes (within seconds) Log files Perf. opt.
  • 22. Understanding runtime behavior Minimizing risk Getting developers involved Adopting autonomic computing capabilities in existing large-scale systems 28 Statistics & test automation Expecting failures & full control Proof of concept & transparency Separation from original business logic Minimizing footprint
  • 23. Understanding runtime behavior Minimizing risk Minimizing footprint Process & product transparency Statistics & test automation Adopting autonomic computing capabilities in existing large-scale systems Expecting failures & transparency 29 Separation from original business logic Getting developers involved
  • 24. We need to drive developers to change their code Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Remote management Streamed log data (Readily available) 30 Perf. measures (Involving developers)
  • 25. Motivate developers by proving the concept of autonomic computing 31 Prove the concept
  • 26. Motivate developers by proving the concept of autonomic computing Original system Self- monitoring Self-configuring Self-optimizingOptimized parameter values Remote management Streamed log data (Readily available) 32 Perf. measures (Involving developers) Stop and re-config
  • 27. Proving the concept of autonomic computing 33 We regularly meet with the stakeholders to present/demo our work, ensuring they are on the same pages as us Prove the concept Developers change code Integrate code changes & Prove the concept Developers change code … …
  • 28. Visualizing the dynamics of autonomic computing (transparency) 34 Monitoring autonomic computing progress Dashboard Providing real-time debugging support to developers
  • 29. Understanding runtime behavior Minimizing risk Minimizing footprint Statistics & test automation Adopting autonomic computing capabilities in existing large-scale systems Expecting failures & transparency 35 Separation from original business logic Proof of concept & transparency Getting developers involved
  • 30. Understanding runtime behavior Getting developers involved Minimizing footprint Statistics & test automation Adopting autonomic computing capabilities in existing large-scale systems Expecting failures & transparency 36 Separation from original business logic Proof of concept & transparency Minimizing risk
  • 31. Expecting failures 37 In case of a problem (e.g., crash): - Ability to automatically unplug the autonomic computing capabilities; - Ability to recover to a default state. The failures of the autonomic computing capabilities will not interrupt the normal execution of the original system
  • 32. Providing full manual control 38 Full manual control Dashboard Practitioners can turn on/off autonomic computing capabilities or manually change configurations at any time
  • 33. Understanding runtime behavior Getting developers involved Minimizing footprint Adopting autonomic computing capabilities in existing large-scale systems 39 Statistics & test automation Separation from original business logic Expecting failures & full control Proof of concept & transparency Minimizing risk
  • 34. The autonomic computing capabilities significantly improve system performance 40 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ●● ●● ● ● ● ● ● ●●●●● ● ● ● ● ●●● ● ● ● ● ● ● ● ●● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ●●● ●● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ●●●● ● ● ●● ● ●●●● ● ● ● ● ● ●●●●●● ● ● ● ● ●●●● ● ● ● ● ● ● ● ●●●● ● ● ● ● ● ●●●● ●● ● ● ● ● ●●● ● ● ● ● ● ●● ● ● ●● ●● ● ● ● ● ● ● ●●●● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ●● ●●●● ● ● ● ●●● ● ● ●● ●●● ● ● ● ● ●●● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●● ●●●●●● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ●● ●● ● ● ● ● ● ●● ●● ● ● ●●● ● ●● ●●● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ●●●●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●●● ● ● ●● ● ● ● ● ●● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●● ●●● ● ● ● ● ● ● ● ●●● ● ● ● ● ●●● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ●●●● ●● ● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ●● ● ●●● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ●● ● ● 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0 60 120 180 240 300 Running Time (minutes) Key Performance Indicator Autonomic computing capabilities ● Turned off Turned on Low workload, KPI is optimal High workload, KPI drops (KPI)
  • 35. The autonomic computing capabilities significantly improve system performance 41 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ●● ●● ● ● ● ● ● ●●●●● ● ● ● ● ●●● ● ● ● ● ● ● ● ●● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ●●● ●● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ●●●● ● ● ●● ● ●●●● ● ● ● ● ● ●●●●●● ● ● ● ● ●●●● ● ● ● ● ● ● ● ●●●● ● ● ● ● ● ●●●● ●● ● ● ● ● ●●● ● ● ● ● ● ●● ● ● ●● ●● ● ● ● ● ● ● ●●●● ● ● ● ●● ● ● ● ● ●● ● ● ● ● ●● ● ● ● ●● ●●●● ● ● ● ●●● ● ● ●● ●●● ● ● ● ● ●●● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●● ●●●●●● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ●● ●● ● ● ● ● ● ●● ●● ● ● ●●● ● ●● ●●● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ●●●●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●●● ● ● ●● ● ● ● ● ●● ●● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ●● ●●● ● ● ● ● ● ● ● ●●● ● ● ● ● ●●● ● ● ● ● ● ● ● ● ● ●● ● ● ● ● ● ● ● ● ● ●●●● ●● ● ● ● ● ● ● ● ● ● ●● ● ●● ● ● ● ● ● ● ● ● ● ● ● ● ● ●● ●● ● ●●● ● ● ● ● ● ● ● ● ● ● ● ●● ● ● ● ●● ● ● 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 0 60 120 180 240 300 Running Time (minutes) Key Performance Indicator Autonomic computing capabilities ● Turned off Turned on KPI is always optimal Adapting quickly to the changing workloads (KPI)
  • 36. Adopting autonomic computing capabilities in existing large-scale systems 42 Statistics & test automation Separation from original business logic Expecting failures & full control Proof of concept & transparency Understanding runtime behavior Minimizing risk Getting developers involved Minimizing footprint
  • 37. Adopting autonomic computing capabilities in existing large-scale systems 43 Statistics & test automation Separation from original business logic Expecting failures & full control Proof of concept & transparency Understanding runtime behavior Minimizing risk Getting developers involved Minimizing footprint Thank you! http://hengli.org hengli@cs.queensu.ca @henglli