SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
The Forgotten Art of Performance Modeling
By Alexander Podelko
AbouttheSpeaker
• Alexander Podelko
• Specializing in performance since 1997
• Currently Consulting Member of Technical Staff at Oracle
(Stamford, CT)
• Performance testing and optimization of Enterprise
Performance Management (EPM) a.k.a. Hyperion products
• Board director at Computer Measurement Group (CMG) – non-
profit organization of performance and capacity professionals
Disclaimer: The views expressed here are my personal views only and do not necessarily represent those of my current or previous employers. All brands
and trademarksmentioned are the property of their owners.
Why do we need modeling and where are we?
How much math do we need here?
How may we approach the challenge?
Starting Points
• Importance of performance
• Preaching to the choir
• Importance of modeling / large picture
• A part of performance engineering
• Provide a large picture
• Validate results
• Complement testing
• Much cheaper (when a model is already built)
Modeling Cases
• Always was: What-if?
• Workload growth
• Configuration change
• Projecting performance test results
• Now: Continuous performance engineering
• Projecting continuous / component / service performance testing
• Discussing “white box” modeling here
• To be able to make changes in underlying architecture
• Not touching data extrapolation: time series forecasting, trending, ML, etc.
Two OppositeViews
• Authors describe in detail how you can model performance using
sophisticated math
• You feel that as soon as you comprehend that math, you won’t have any problem with
modeling
• Authors say that it is a black magic and you’d better stay away from it [or
do it in a minimal way with simple trending]
• While you probably won’t see that view in serious books, it is often can be seen in
Internet discussions
1966:Instrumentation
• 1966 – SMF (System Management Facilities) released as part of OS/360
• Still in use
• Big Data ?
• Deep Diagnostics ?
• IT Operations Analytics ?
• Observability ?
1977: Performance Analysis Tool
• 1977 – BEST/1 was released by BGS Systems, capacity and performance
management tool
• the first commercial package for computer performance analysis to be based on
analytic models.
• BGS Systems was acquired
by BMC Software in 1998
Two Main Challenges
• Modeling works well for known resource limitations
• You can’t model what you don’t know
• Lack of performance-related metrics of hardware to use in modeling
• Hardware specifications won’t tell you how fast your systems would work on this
hardware
Tools - Analytical
• BEST/1 [acquired by BMC, TrueSight Capacity Optimization now (??)]
• TeamQuest [acquired by HelpSystems]
• Metron Athene [acquired by SyncSort]
• PDQ - open source by Dr. Neil Gunther
• SPE· ED – by Dr. Connie U. Smith
• JMT – Java Modelling Tools
Tools - Simulation
• HyPerformix [acquired by CA ]]
• Palladio
• QPME (Queueing Petri net Modeling Environment)
• Not IT-specific / Discrete Event Simulation
• MathWorks SimEvents
• OMNeT++
• Many other commercial and open source tools
Decline ofModeling Tools
• No modeling tool in active development [according to my knowledge]
• Existing tools doesn’t keep up with modern trends
• Scaling out
• Lower need for queueing models
• Drastic increase in sophistication
• Need to model very complex architectures
• Configuration discovery
• Large variations in systems, no generic approach
Resources
• CPU, I/O, memory, and network
• And software objects
• Connection and thread pools, caches, etc.
• Resource Utilization
• Related to a particular configuration
• Often generic policies like CPU below 70%
• Relative values (in %) are not useful if configuration is not given
• Commercial Off-the-Shelf (COTS) software
• Virtual environments
Resources: Absolute Values
• Absolute values
• # of instructions, I/O per transaction
• Seen mainly in modeling
• MIPS in mainframe world
• IOPS, MiB/s
• Importance increases again with the trends of virtualization, cloud
computing, and SOA
• VMware: CPU usage in MHz
• Microsoft: Megacycles
• Amazon: EC2 Compute Units (ECU)
• Oracle: OCPU
Why do we need modeling and where are we?
How much math do we need here?
How may we approach the challenge?
QueueingTheory
• M/M/1
• Distribution of arrival/service /number of servers
• Kendall’s notation
• Analytical models / Simulation
Multiple Servers
QueueingPetri Nets
Operational Laws
• Utilization Law
• Utilization = Service Time x Throughput
• Service Demand Law
• Service Time = Utilization / Throughput
• Forced Flow Law
• Component Throughput = Visits x Throughput
• Little’s Law
• Number in system = Response Time x Throughput
Universal ScalabilityLaw
• By Dr. Neil Gunther
• Concurrency - ideal parallelism
• Contention (α) – for shared resources
• Coherency (β) – crosstalk delay
• Extension of Amdahl’s Law (β=0)
Fundamental Books
More Flexible Approach
Introductory Books
SometimesLinear Model Works
• Linear model may often work for multi-processor machines
• Considering the working range of CPU utilization
• Most IT shops don't want more than 70-80%
• Throughput and CPU utilization increase proportionally
• Response times increase insignificantly
Example
• Simple queuing model was built using TeamQuest
• Specific workload executed on a four-way server
• Eight different load levels
• Step 1 represents 100-user workload, each next step adds 200 users, step 8 represents
1,500 users
• Linear model would be good through step 6
• With CPU utilization 87%
CPU Utilization
System (Test_Windows) CPU (Application) Utilization by Workload Percentages
0
10
20
30
40
50
60
70
80
90
100
Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8
Percentage
Request Medium
Throughput
Throughput
0
5
10
15
20
25
Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8
Completions/Second
Request Medium
Response Time
Response Time
0
2
4
6
8
10
12
14
Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8
Seconds
Request Medium
Why do we need modeling and where are we?
How much math do we need here?
How may we approach the challenge?
Buildinga Model
• Significantly increases the value of performance testing
• One more way to validate tests and help to identify problems
• Answers questions about sizing the system
• Doesn't need to be a formal model
• May be just simple observations as to how much resources are needed by each
component for the specific workload
May BeasSimpleasThat
• Software needs X units of hardware power per request
• Processor has Y units of hardware power
• The number of such processors N needed for processing Z requests as
N=Z*X/Y
• See the need in absolute values?
• We ignore all non-linear effects here – to be verified
Principles
• “All models are wrong, but some are useful”
• by George Box
• "Everything should be made as simple as possible, but not simpler"
• by Albert Einstein
Today’sChallenges
• System became very sophisticated
• Chances to find an appropriate tool are limited
• Some tools disappeared, other rather basic
• Chances to find an appropriate “template” are limited
• Depends on the degree of non-linearity, etc.
• Probably at least a combination of existing approaches
• Use ideas
• Not much else available 
HyPerformix Approach
• HyPerformix docs / papers by Richard Gimarc, Amy Spellmann
• Three types of data (Type 1, 2, and 3)
• T1 Single Business Function Trace
• tier-to-tier workflow of each of the application’s business functions
• T2 Single Business Function Load Test
• system resources required to process each business function on each server
• T3 Load Test
• typical load test with a mixed workload
• model validation
• WIFR – Workload, Infrastructure, Flow, Resource
T1 - Architecture
• HyPerformix: Flow data
• Communications and flow between tiers
• Visit counts to tiers
• Message sizes for each communication
• Architecture and data / processing flow
• Configuration discovery
• Already exists in some tools (APM, AIOps, etc)
• Communication between tiers/component
T2 –Resources
• Run independent tests for each business function (T2)
• To see how much resources each function requires
• Per tier / component
• Steady load
• Load shouldn't be too light
• To be not distorted by noise
• Load shouldn't be too heavy
• To avoid non-linear effects
T3 - Realistic Workload
• Realistic load test
• Mix of business functions (of T2)
• Way to validate model
• Steady load
• Not too low
• Not too high
TeamQuest Approach
• Steady production or test load
• Not too light, not too heavy
• Realistic mix (T3 in HyPerformix terms)
• Get model parameters from it
• Model change of load / config what-if
• No easy way to change the mix
Palladio Approach
Positive Attitude
• In modeling concentrate on what you can predict
• Value of the model
• Understanding what is outside your models
• Not a reason not to do it at all
The Future ofPerformance Modeling
Configuration
Discovery
Performance
Testing
Workload
Analysis
Modeling
Production
Monitoring
Continuous Performance Testing –
Modeling as quality gates
[similar to Keptn / Pitometer]
Performance / Capacity /
Costs What-If Analysis
Summary
• Modeling is an important part of performance engineering
• Even more so when full-scale tests become more rare
• You do not necessarily need sophisticated math
• Minimal math and common sense often enough
• Good performance engineers do have non-formalized models in their mind
• It becomes too complex to keep it in mind
• Let’s revive the art !
Questions?
alex.podelko@oracle.com
alexanderpodelko.com/blog
@apodelko

Weitere ähnliche Inhalte

Ähnlich wie PAC 2019 virtual Alexander Podelko

Performance tuning Grails applications
 Performance tuning Grails applications Performance tuning Grails applications
Performance tuning Grails applicationsGR8Conf
 
Art of Cloud Workload Translation
Art of Cloud Workload TranslationArt of Cloud Workload Translation
Art of Cloud Workload TranslationPaul Cooper
 
Performance tuning Grails applications
Performance tuning Grails applicationsPerformance tuning Grails applications
Performance tuning Grails applicationsLari Hotari
 
Productionising Machine Learning Models
Productionising Machine Learning ModelsProductionising Machine Learning Models
Productionising Machine Learning ModelsTash Bickley
 
An Agile Approach to Machine Learning
An Agile Approach to Machine LearningAn Agile Approach to Machine Learning
An Agile Approach to Machine LearningRandy Shoup
 
Performance Testing Java Applications
Performance Testing Java ApplicationsPerformance Testing Java Applications
Performance Testing Java ApplicationsC4Media
 
Cassandra Applications Benchmarking
Cassandra Applications BenchmarkingCassandra Applications Benchmarking
Cassandra Applications Benchmarkingniallmilton
 
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!Richard Robinson
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best PracticesPavel Mička
 
EM12c Monitoring, Metric Extensions and Performance Pages
EM12c Monitoring, Metric Extensions and Performance PagesEM12c Monitoring, Metric Extensions and Performance Pages
EM12c Monitoring, Metric Extensions and Performance PagesEnkitec
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignGeorgina Tilby
 
SCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemSCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemCompuware
 
Reinventing Performance Testing, CMG imPACt 2016 slides
  Reinventing Performance Testing, CMG imPACt 2016 slides  Reinventing Performance Testing, CMG imPACt 2016 slides
Reinventing Performance Testing, CMG imPACt 2016 slidesAlexander Podelko
 
The Diabolical Developers Guide to Performance Tuning
The Diabolical Developers Guide to Performance TuningThe Diabolical Developers Guide to Performance Tuning
The Diabolical Developers Guide to Performance TuningjClarity
 
Integration strategies best practices- Mulesoft meetup April 2018
Integration strategies   best practices- Mulesoft meetup April 2018Integration strategies   best practices- Mulesoft meetup April 2018
Integration strategies best practices- Mulesoft meetup April 2018Rohan Rasane
 
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Databricks
 
Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014Lari Hotari
 
Context-Driven Performance Testing
Context-Driven Performance TestingContext-Driven Performance Testing
Context-Driven Performance TestingAlexander Podelko
 

Ähnlich wie PAC 2019 virtual Alexander Podelko (20)

Performance tuning Grails applications
 Performance tuning Grails applications Performance tuning Grails applications
Performance tuning Grails applications
 
Art of Cloud Workload Translation
Art of Cloud Workload TranslationArt of Cloud Workload Translation
Art of Cloud Workload Translation
 
Performance tuning Grails applications
Performance tuning Grails applicationsPerformance tuning Grails applications
Performance tuning Grails applications
 
Productionising Machine Learning Models
Productionising Machine Learning ModelsProductionising Machine Learning Models
Productionising Machine Learning Models
 
Ioug oow12 em12c
Ioug oow12 em12cIoug oow12 em12c
Ioug oow12 em12c
 
An Agile Approach to Machine Learning
An Agile Approach to Machine LearningAn Agile Approach to Machine Learning
An Agile Approach to Machine Learning
 
Performance Testing Java Applications
Performance Testing Java ApplicationsPerformance Testing Java Applications
Performance Testing Java Applications
 
Cassandra Applications Benchmarking
Cassandra Applications BenchmarkingCassandra Applications Benchmarking
Cassandra Applications Benchmarking
 
When Should I Use Simulation?
When Should I Use Simulation?When Should I Use Simulation?
When Should I Use Simulation?
 
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
SCRIMPS-STD: Test Automation Design Principles - and asking the right questions!
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best Practices
 
EM12c Monitoring, Metric Extensions and Performance Pages
EM12c Monitoring, Metric Extensions and Performance PagesEM12c Monitoring, Metric Extensions and Performance Pages
EM12c Monitoring, Metric Extensions and Performance Pages
 
Small is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case DesignSmall is Beautiful- Fully Automate your Test Case Design
Small is Beautiful- Fully Automate your Test Case Design
 
SCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome ThemSCM Transformation Challenges and How to Overcome Them
SCM Transformation Challenges and How to Overcome Them
 
Reinventing Performance Testing, CMG imPACt 2016 slides
  Reinventing Performance Testing, CMG imPACt 2016 slides  Reinventing Performance Testing, CMG imPACt 2016 slides
Reinventing Performance Testing, CMG imPACt 2016 slides
 
The Diabolical Developers Guide to Performance Tuning
The Diabolical Developers Guide to Performance TuningThe Diabolical Developers Guide to Performance Tuning
The Diabolical Developers Guide to Performance Tuning
 
Integration strategies best practices- Mulesoft meetup April 2018
Integration strategies   best practices- Mulesoft meetup April 2018Integration strategies   best practices- Mulesoft meetup April 2018
Integration strategies best practices- Mulesoft meetup April 2018
 
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
Lessons Learned Replatforming A Large Machine Learning Application To Apache ...
 
Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014
 
Context-Driven Performance Testing
Context-Driven Performance TestingContext-Driven Performance Testing
Context-Driven Performance Testing
 

Mehr von Neotys

PAC 2020 Santorin - Giovanni Paolo Gibilisco
PAC 2020 Santorin - Giovanni Paolo GibiliscoPAC 2020 Santorin - Giovanni Paolo Gibilisco
PAC 2020 Santorin - Giovanni Paolo GibiliscoNeotys
 
PAC 2020 Santorin - Stijn Schepers
PAC 2020 Santorin - Stijn SchepersPAC 2020 Santorin - Stijn Schepers
PAC 2020 Santorin - Stijn SchepersNeotys
 
PAC 2020 Santorin - Edoardo Varani
PAC 2020 Santorin - Edoardo VaraniPAC 2020 Santorin - Edoardo Varani
PAC 2020 Santorin - Edoardo VaraniNeotys
 
PAC 2020 Santorin - Andreas Grabner
PAC 2020 Santorin - Andreas Grabner PAC 2020 Santorin - Andreas Grabner
PAC 2020 Santorin - Andreas Grabner Neotys
 
PAC 2020 Santorin - Vasilis Chatzinasios
PAC 2020 Santorin - Vasilis ChatzinasiosPAC 2020 Santorin - Vasilis Chatzinasios
PAC 2020 Santorin - Vasilis ChatzinasiosNeotys
 
PAC 2020 Santorin - Gopalkrishnan Yadav
PAC 2020 Santorin - Gopalkrishnan YadavPAC 2020 Santorin - Gopalkrishnan Yadav
PAC 2020 Santorin - Gopalkrishnan YadavNeotys
 
PAC 2020 Santorin - Hari Krishnan Ramachandran
PAC 2020 Santorin - Hari Krishnan RamachandranPAC 2020 Santorin - Hari Krishnan Ramachandran
PAC 2020 Santorin - Hari Krishnan RamachandranNeotys
 
PAC 2020 Santorin - Joerek Van Gaalen
PAC 2020 Santorin - Joerek Van GaalenPAC 2020 Santorin - Joerek Van Gaalen
PAC 2020 Santorin - Joerek Van GaalenNeotys
 
PAC 2020 Santorin - Ankur Jain
PAC 2020 Santorin - Ankur JainPAC 2020 Santorin - Ankur Jain
PAC 2020 Santorin - Ankur JainNeotys
 
PAC 2020 Santorin - Stephen Townshend
PAC 2020 Santorin - Stephen TownshendPAC 2020 Santorin - Stephen Townshend
PAC 2020 Santorin - Stephen TownshendNeotys
 
PAC 2020 Santorin - Leandro Melendez
PAC 2020 Santorin - Leandro MelendezPAC 2020 Santorin - Leandro Melendez
PAC 2020 Santorin - Leandro MelendezNeotys
 
PAC 2019 virtual Stephen Townshend
PAC 2019 virtual Stephen TownshendPAC 2019 virtual Stephen Townshend
PAC 2019 virtual Stephen TownshendNeotys
 
PAC 2019 virtual Federico Toledo
PAC 2019 virtual Federico Toledo   PAC 2019 virtual Federico Toledo
PAC 2019 virtual Federico Toledo Neotys
 
PAC 2019 virtual Leandro Melendez
PAC 2019 virtual Leandro Melendez PAC 2019 virtual Leandro Melendez
PAC 2019 virtual Leandro Melendez Neotys
 
PAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark TomlinsonPAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark TomlinsonNeotys
 
PAC 2019 virtual Srivalli Aparna
PAC 2019 virtual Srivalli AparnaPAC 2019 virtual Srivalli Aparna
PAC 2019 virtual Srivalli AparnaNeotys
 
PAC 2019 virtual Reuben Rajan George
PAC 2019 virtual Reuben Rajan GeorgePAC 2019 virtual Reuben Rajan George
PAC 2019 virtual Reuben Rajan GeorgeNeotys
 
PAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van GaalenPAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van GaalenNeotys
 
PAC 2019 virtual Hemalatha Murugesan
PAC 2019 virtual Hemalatha Murugesan  PAC 2019 virtual Hemalatha Murugesan
PAC 2019 virtual Hemalatha Murugesan Neotys
 
PAC 2019 virtual Bruno Audoux
PAC 2019 virtual Bruno Audoux PAC 2019 virtual Bruno Audoux
PAC 2019 virtual Bruno Audoux Neotys
 

Mehr von Neotys (20)

PAC 2020 Santorin - Giovanni Paolo Gibilisco
PAC 2020 Santorin - Giovanni Paolo GibiliscoPAC 2020 Santorin - Giovanni Paolo Gibilisco
PAC 2020 Santorin - Giovanni Paolo Gibilisco
 
PAC 2020 Santorin - Stijn Schepers
PAC 2020 Santorin - Stijn SchepersPAC 2020 Santorin - Stijn Schepers
PAC 2020 Santorin - Stijn Schepers
 
PAC 2020 Santorin - Edoardo Varani
PAC 2020 Santorin - Edoardo VaraniPAC 2020 Santorin - Edoardo Varani
PAC 2020 Santorin - Edoardo Varani
 
PAC 2020 Santorin - Andreas Grabner
PAC 2020 Santorin - Andreas Grabner PAC 2020 Santorin - Andreas Grabner
PAC 2020 Santorin - Andreas Grabner
 
PAC 2020 Santorin - Vasilis Chatzinasios
PAC 2020 Santorin - Vasilis ChatzinasiosPAC 2020 Santorin - Vasilis Chatzinasios
PAC 2020 Santorin - Vasilis Chatzinasios
 
PAC 2020 Santorin - Gopalkrishnan Yadav
PAC 2020 Santorin - Gopalkrishnan YadavPAC 2020 Santorin - Gopalkrishnan Yadav
PAC 2020 Santorin - Gopalkrishnan Yadav
 
PAC 2020 Santorin - Hari Krishnan Ramachandran
PAC 2020 Santorin - Hari Krishnan RamachandranPAC 2020 Santorin - Hari Krishnan Ramachandran
PAC 2020 Santorin - Hari Krishnan Ramachandran
 
PAC 2020 Santorin - Joerek Van Gaalen
PAC 2020 Santorin - Joerek Van GaalenPAC 2020 Santorin - Joerek Van Gaalen
PAC 2020 Santorin - Joerek Van Gaalen
 
PAC 2020 Santorin - Ankur Jain
PAC 2020 Santorin - Ankur JainPAC 2020 Santorin - Ankur Jain
PAC 2020 Santorin - Ankur Jain
 
PAC 2020 Santorin - Stephen Townshend
PAC 2020 Santorin - Stephen TownshendPAC 2020 Santorin - Stephen Townshend
PAC 2020 Santorin - Stephen Townshend
 
PAC 2020 Santorin - Leandro Melendez
PAC 2020 Santorin - Leandro MelendezPAC 2020 Santorin - Leandro Melendez
PAC 2020 Santorin - Leandro Melendez
 
PAC 2019 virtual Stephen Townshend
PAC 2019 virtual Stephen TownshendPAC 2019 virtual Stephen Townshend
PAC 2019 virtual Stephen Townshend
 
PAC 2019 virtual Federico Toledo
PAC 2019 virtual Federico Toledo   PAC 2019 virtual Federico Toledo
PAC 2019 virtual Federico Toledo
 
PAC 2019 virtual Leandro Melendez
PAC 2019 virtual Leandro Melendez PAC 2019 virtual Leandro Melendez
PAC 2019 virtual Leandro Melendez
 
PAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark TomlinsonPAC 2019 virtual Mark Tomlinson
PAC 2019 virtual Mark Tomlinson
 
PAC 2019 virtual Srivalli Aparna
PAC 2019 virtual Srivalli AparnaPAC 2019 virtual Srivalli Aparna
PAC 2019 virtual Srivalli Aparna
 
PAC 2019 virtual Reuben Rajan George
PAC 2019 virtual Reuben Rajan GeorgePAC 2019 virtual Reuben Rajan George
PAC 2019 virtual Reuben Rajan George
 
PAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van GaalenPAC 2019 virtual Joerek Van Gaalen
PAC 2019 virtual Joerek Van Gaalen
 
PAC 2019 virtual Hemalatha Murugesan
PAC 2019 virtual Hemalatha Murugesan  PAC 2019 virtual Hemalatha Murugesan
PAC 2019 virtual Hemalatha Murugesan
 
PAC 2019 virtual Bruno Audoux
PAC 2019 virtual Bruno Audoux PAC 2019 virtual Bruno Audoux
PAC 2019 virtual Bruno Audoux
 

Kürzlich hochgeladen

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Kürzlich hochgeladen (20)

HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 

PAC 2019 virtual Alexander Podelko

  • 1. The Forgotten Art of Performance Modeling By Alexander Podelko
  • 2. AbouttheSpeaker • Alexander Podelko • Specializing in performance since 1997 • Currently Consulting Member of Technical Staff at Oracle (Stamford, CT) • Performance testing and optimization of Enterprise Performance Management (EPM) a.k.a. Hyperion products • Board director at Computer Measurement Group (CMG) – non- profit organization of performance and capacity professionals Disclaimer: The views expressed here are my personal views only and do not necessarily represent those of my current or previous employers. All brands and trademarksmentioned are the property of their owners.
  • 3. Why do we need modeling and where are we? How much math do we need here? How may we approach the challenge?
  • 4. Starting Points • Importance of performance • Preaching to the choir • Importance of modeling / large picture • A part of performance engineering • Provide a large picture • Validate results • Complement testing • Much cheaper (when a model is already built)
  • 5. Modeling Cases • Always was: What-if? • Workload growth • Configuration change • Projecting performance test results • Now: Continuous performance engineering • Projecting continuous / component / service performance testing • Discussing “white box” modeling here • To be able to make changes in underlying architecture • Not touching data extrapolation: time series forecasting, trending, ML, etc.
  • 6. Two OppositeViews • Authors describe in detail how you can model performance using sophisticated math • You feel that as soon as you comprehend that math, you won’t have any problem with modeling • Authors say that it is a black magic and you’d better stay away from it [or do it in a minimal way with simple trending] • While you probably won’t see that view in serious books, it is often can be seen in Internet discussions
  • 7. 1966:Instrumentation • 1966 – SMF (System Management Facilities) released as part of OS/360 • Still in use • Big Data ? • Deep Diagnostics ? • IT Operations Analytics ? • Observability ?
  • 8. 1977: Performance Analysis Tool • 1977 – BEST/1 was released by BGS Systems, capacity and performance management tool • the first commercial package for computer performance analysis to be based on analytic models. • BGS Systems was acquired by BMC Software in 1998
  • 9. Two Main Challenges • Modeling works well for known resource limitations • You can’t model what you don’t know • Lack of performance-related metrics of hardware to use in modeling • Hardware specifications won’t tell you how fast your systems would work on this hardware
  • 10. Tools - Analytical • BEST/1 [acquired by BMC, TrueSight Capacity Optimization now (??)] • TeamQuest [acquired by HelpSystems] • Metron Athene [acquired by SyncSort] • PDQ - open source by Dr. Neil Gunther • SPE· ED – by Dr. Connie U. Smith • JMT – Java Modelling Tools
  • 11. Tools - Simulation • HyPerformix [acquired by CA ]] • Palladio • QPME (Queueing Petri net Modeling Environment) • Not IT-specific / Discrete Event Simulation • MathWorks SimEvents • OMNeT++ • Many other commercial and open source tools
  • 12. Decline ofModeling Tools • No modeling tool in active development [according to my knowledge] • Existing tools doesn’t keep up with modern trends • Scaling out • Lower need for queueing models • Drastic increase in sophistication • Need to model very complex architectures • Configuration discovery • Large variations in systems, no generic approach
  • 13. Resources • CPU, I/O, memory, and network • And software objects • Connection and thread pools, caches, etc. • Resource Utilization • Related to a particular configuration • Often generic policies like CPU below 70% • Relative values (in %) are not useful if configuration is not given • Commercial Off-the-Shelf (COTS) software • Virtual environments
  • 14. Resources: Absolute Values • Absolute values • # of instructions, I/O per transaction • Seen mainly in modeling • MIPS in mainframe world • IOPS, MiB/s • Importance increases again with the trends of virtualization, cloud computing, and SOA • VMware: CPU usage in MHz • Microsoft: Megacycles • Amazon: EC2 Compute Units (ECU) • Oracle: OCPU
  • 15. Why do we need modeling and where are we? How much math do we need here? How may we approach the challenge?
  • 16. QueueingTheory • M/M/1 • Distribution of arrival/service /number of servers • Kendall’s notation • Analytical models / Simulation
  • 19. Operational Laws • Utilization Law • Utilization = Service Time x Throughput • Service Demand Law • Service Time = Utilization / Throughput • Forced Flow Law • Component Throughput = Visits x Throughput • Little’s Law • Number in system = Response Time x Throughput
  • 20. Universal ScalabilityLaw • By Dr. Neil Gunther • Concurrency - ideal parallelism • Contention (α) – for shared resources • Coherency (β) – crosstalk delay • Extension of Amdahl’s Law (β=0)
  • 23. SometimesLinear Model Works • Linear model may often work for multi-processor machines • Considering the working range of CPU utilization • Most IT shops don't want more than 70-80% • Throughput and CPU utilization increase proportionally • Response times increase insignificantly
  • 24. Example • Simple queuing model was built using TeamQuest • Specific workload executed on a four-way server • Eight different load levels • Step 1 represents 100-user workload, each next step adds 200 users, step 8 represents 1,500 users • Linear model would be good through step 6 • With CPU utilization 87%
  • 25. CPU Utilization System (Test_Windows) CPU (Application) Utilization by Workload Percentages 0 10 20 30 40 50 60 70 80 90 100 Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8 Percentage Request Medium
  • 26. Throughput Throughput 0 5 10 15 20 25 Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8 Completions/Second Request Medium
  • 27. Response Time Response Time 0 2 4 6 8 10 12 14 Step: 1 Step: 2 Step: 3 Step: 4 Step: 5 Step: 6 Step: 7 Step: 8 Seconds Request Medium
  • 28. Why do we need modeling and where are we? How much math do we need here? How may we approach the challenge?
  • 29. Buildinga Model • Significantly increases the value of performance testing • One more way to validate tests and help to identify problems • Answers questions about sizing the system • Doesn't need to be a formal model • May be just simple observations as to how much resources are needed by each component for the specific workload
  • 30. May BeasSimpleasThat • Software needs X units of hardware power per request • Processor has Y units of hardware power • The number of such processors N needed for processing Z requests as N=Z*X/Y • See the need in absolute values? • We ignore all non-linear effects here – to be verified
  • 31. Principles • “All models are wrong, but some are useful” • by George Box • "Everything should be made as simple as possible, but not simpler" • by Albert Einstein
  • 32. Today’sChallenges • System became very sophisticated • Chances to find an appropriate tool are limited • Some tools disappeared, other rather basic • Chances to find an appropriate “template” are limited • Depends on the degree of non-linearity, etc. • Probably at least a combination of existing approaches • Use ideas • Not much else available 
  • 33. HyPerformix Approach • HyPerformix docs / papers by Richard Gimarc, Amy Spellmann • Three types of data (Type 1, 2, and 3) • T1 Single Business Function Trace • tier-to-tier workflow of each of the application’s business functions • T2 Single Business Function Load Test • system resources required to process each business function on each server • T3 Load Test • typical load test with a mixed workload • model validation • WIFR – Workload, Infrastructure, Flow, Resource
  • 34. T1 - Architecture • HyPerformix: Flow data • Communications and flow between tiers • Visit counts to tiers • Message sizes for each communication • Architecture and data / processing flow • Configuration discovery • Already exists in some tools (APM, AIOps, etc) • Communication between tiers/component
  • 35. T2 –Resources • Run independent tests for each business function (T2) • To see how much resources each function requires • Per tier / component • Steady load • Load shouldn't be too light • To be not distorted by noise • Load shouldn't be too heavy • To avoid non-linear effects
  • 36. T3 - Realistic Workload • Realistic load test • Mix of business functions (of T2) • Way to validate model • Steady load • Not too low • Not too high
  • 37. TeamQuest Approach • Steady production or test load • Not too light, not too heavy • Realistic mix (T3 in HyPerformix terms) • Get model parameters from it • Model change of load / config what-if • No easy way to change the mix
  • 39. Positive Attitude • In modeling concentrate on what you can predict • Value of the model • Understanding what is outside your models • Not a reason not to do it at all
  • 40. The Future ofPerformance Modeling Configuration Discovery Performance Testing Workload Analysis Modeling Production Monitoring Continuous Performance Testing – Modeling as quality gates [similar to Keptn / Pitometer] Performance / Capacity / Costs What-If Analysis
  • 41. Summary • Modeling is an important part of performance engineering • Even more so when full-scale tests become more rare • You do not necessarily need sophisticated math • Minimal math and common sense often enough • Good performance engineers do have non-formalized models in their mind • It becomes too complex to keep it in mind • Let’s revive the art !