SlideShare a Scribd company logo
1 of 26
Time For D.I.M.E?
Martin Packer, IBM
martin_packer@uk.ibm.com
Abstract
In recent years memory has become cheaper, or certainly more plentiful. This enables
us to do new things, or old things faster and better.
I believe it is indeed Time For DIME (Data In Memory Exploitation). But we've been
here before - in the late 1980's. Much has changed but the basic concepts haven't. So
this presentation reminds us of "the way we were" but brings things right up to date. It
covers why you'd want to run a DIME project and how to go about it: It covers both the
project phases and technical aspects, preparing you to make a quick start on realising
the benefits of DIME.
While the main example presented here is DB2, the presentation also discusses
Coupling Facility memory exploitation, as well as a number of other examples.
Agenda
● What is DIME?
● Benefits of DIME
● Storage Hierarchy – Then And Now
● DIME – Then And Now
● Is Now The Time For DIME?
● What Do YOU Mean By Full?
● Breaking Down Memory Usage
● Exploiting Data In Memory
What Is DIME?
● DIME = Data In Memory Exploitation
● Choices to use memory more aggressively
● Examples:
– Larger DB2 buffer pools
– Larger Java heaps
– Larger CICS Dynamic Storage Area limits
– Moving temporary data sets to VIO in memory
Benefits of DIME
● Keeping the right Data In Memory can:
– Reduce response times
– Support increased throughput
– Speed up batch jobs
● Secondarily it might:
– Take some of the strain off disks and cache
– Allow more parallelism
– Save CPU
● But it might easily cost you CPU
Storage Hierarchy – Then
● 64 – 256 MB Central
Storage
● Optional 128 – 512 MB
Expanded Storage
● MVPG Instruction
– Hiperbatch
– DB2 Hiperpools
– VSAM LSR Hiperspace
Buffer Pools
● (ADMF was later)
● VIO to Expanded Storage
● “Paging” to Expanded
Storage
● DIM projects abounded
● 3990 Disk Cache
● 3390 Disks
● 3480 Tape
Storage Hierarchy - Now
● 32 – 3040GB Memory
● Optional Flash Express 1.4 –
5.6TB
– Dump Capture
– Pageable Large Frames
– Paging in general
● Most of the previous
memory exploiters
– VIO recast to use Central
– DB2 V10 uses 64-Bit in
most places
– Hiperbatch obsolete
● IBM DS8870
– Cache
– Flash
– Disk
DIME - Then and Now
● THEN: “Marketing” Push to persuade
customers to upgrade to latest and greatest
– Proliferation of “Marketing Aids”
● NOW: “Customer Pull to gain value
– No Marketing Aids
● But User F61 GTF trace still works
Is Now The Time For DIME?
● The economics of exploiting memory have changed
– Machines come with much more memory
– Memory is much cheaper
● Products are capable of supporting much more DIM
Exploitation
– e.g. DB2 V10
– e.g. CICS TS 5.1
– e.g. 64-Bit JVM
● New configuration possibilities
– e.g System zEC12 Flash Express
– 1MB page frames
When Might DIME Be A Bad Idea?
● When there is no likely benefit
● When you haven't got the memory
● When you're determined to save CPU
● When CPU is already constrained
● When you haven't sufficient virtual storage
● When solving the problem through a quick
application change is better
– Example: DB2 SQL Access Path fix
What Do YOU Mean By Full?
● Not able to back all the dataspace memory for any dump
scenario?
●
Not many free pages at the peak? 1
● Paging > 0?
●
Paging > 100 / sec? 2
● Key workloads beginning to page?
● Unable to create new address spaces?
Notes:
1
Some programs can adjust usage based on available memory, so this is a tricky one
2
Alternatively, until page data set Contiguous Slot Allocation algorithm degrades
Breaking Down Memory Usage
Currently Active LPARs
● Paging Activity Report gives System view
– SMF 70 better than report
– Breaks down into queues
● e.g Private, CSA, Nucleus
– Shows Free
● Workload Activity Report gives Service Class
Period view
– SMF 72-3
– Accurate only for non-swappable workloads
● SMF 30 gives Address Space view
– Treat with suspicion
– Virtual Storage numbers more solid
● Size of other Active LPARs in Partition Data
Report
– SMF 70-1
Hypothecated – e.g. For Recovered LPARs
● Inactive LPARs' memory not reported in
Partition Data Report
– Or SMF 70-1
– Existence of LPAR is
● Use HMC
– Or your spreadsheet :-(
Unhypothecated – Free For Use
● Might need to deploy some into LPARs to
do Data In Memory
– Actually doing so requires planning
● Total Purchased not in RMF
● Obtainable from HMC
● In Vital Product Data
– IBMers have tooling for this
● Subtract all LPARs
– Active and Inactive
Exploiting Data In Memory
DB2
● Remember this?
DB2 ...
● That was Version 8
● Since then
– Version 9 provide much more Virtual Storage
Constraint Relief (VSCR)
– Version 10 much more still
● It pays to examine DB2 Virtual Storage upon
migration
– Use IFCID 225
– In this case it's a happy story
DB2 - Some Things To Consider
● Accounting Trace (SMF 101) gives “DIM useful” time buckets
● EDM Pool / Prepared Statement Cache
– 64 Bit in Version 8
– More liberal definition of a match in V10
● More or larger threads
– Best done on V10
– RELEASE(DEALLOCATE) to cut CPU
● Buffer pools
– 64 Bit in Version 8
– Long-Term Page Fixed
– 1MB Pages
– Flash Express
– Bigger Group Buffer Pools
CICS - Some Things To Consider
● Considerable VSCR in Versions 4 and 5
– Both 24 → 31 and 31 → 64 Bit
– But not as comprehensive as DB2
● Fewer program compressions
– But generally not a problem these days
● Bigger VSAM LSR buffer pools
– Installations typically not aggressive enough with these
● Larger JVM heaps
● Potential region consolidation
– In turn might make above more effective
● Use Statistics Trace (SMF 110) to analyse Virtual Storage first
Coupling Facility
● Often see cache structures too small
– Usually data elements
– Occasionally directory entries
● Rarely see lock structures too small
– Would cause False Contentions
– Knock-on effect on XCF traffic in IXCLOnnn group
● Both diagnosable with Coupling Facility Activity
Report
– Or SMF 74-4
● Remember “white space”
– Less of a concern with duplexing
Some Choreography
● Timing is important
● Example: DB2
– The world looks very different DB2 V8 → V9 → V10
● Processor family upgrades are a good opportunity
– Be careful of “carry forward memory” timings
● Some application ramp-ups need help
– Have something “in your back pocket”
● Every hardware / software upgrade should have an
exploitation phase
– Possibly nominal
Parting Thoughts
Parting Thoughts
● When implementing a new application:
– Build a list of potential DIME areas
– Size memory accordingly
● When tuning an existing application:
– Likewise
● When capacity planning for memory:
– Consider a fresh stance on what “full” means
● Day to day:
– Be sure to measure memory usage properly

More Related Content

What's hot

12 cool features in defrag 12
12 cool features in defrag 1212 cool features in defrag 12
12 cool features in defrag 12aosborne
 
Munich 2016 - Z011598 Martin Packer - He Picks On CICS
Munich 2016 - Z011598 Martin Packer - He Picks On CICSMunich 2016 - Z011598 Martin Packer - He Picks On CICS
Munich 2016 - Z011598 Martin Packer - He Picks On CICSMartin Packer
 
40 demand paging
40 demand paging40 demand paging
40 demand pagingmyrajendra
 
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 lockingUsing Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 lockingJohn Campbell
 
DB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and controlDB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and controlFlorence Dubois
 
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...In-Memory Computing Summit
 
DB2 Accounting Reporting
DB2  Accounting ReportingDB2  Accounting Reporting
DB2 Accounting ReportingJohn Campbell
 
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...John Campbell
 
A First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesA First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesWillie Favero
 
ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMIBM
 
Get More Out of MongoDB with TokuMX
Get More Out of MongoDB with TokuMXGet More Out of MongoDB with TokuMX
Get More Out of MongoDB with TokuMXTim Callaghan
 
Best practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recoveryBest practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recoveryFlorence Dubois
 
PostgreSQL Scaling And Failover
PostgreSQL Scaling And FailoverPostgreSQL Scaling And Failover
PostgreSQL Scaling And FailoverJohn Paulett
 
FlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlorence Dubois
 
SHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENTSHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENTramya marichamy
 
DB2 11 for z/OS Migration Planning and Early Customer Experiences
DB2 11 for z/OS Migration Planning and Early Customer ExperiencesDB2 11 for z/OS Migration Planning and Early Customer Experiences
DB2 11 for z/OS Migration Planning and Early Customer ExperiencesJohn Campbell
 
Gluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & TricksGluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & TricksGlusterFS
 

What's hot (20)

12 cool features in defrag 12
12 cool features in defrag 1212 cool features in defrag 12
12 cool features in defrag 12
 
Munich 2016 - Z011598 Martin Packer - He Picks On CICS
Munich 2016 - Z011598 Martin Packer - He Picks On CICSMunich 2016 - Z011598 Martin Packer - He Picks On CICS
Munich 2016 - Z011598 Martin Packer - He Picks On CICS
 
40 demand paging
40 demand paging40 demand paging
40 demand paging
 
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 lockingUsing Release(deallocate) and Painful Lessons to be learned on DB2 locking
Using Release(deallocate) and Painful Lessons to be learned on DB2 locking
 
DB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and controlDB2 for z/OS - Starter's guide to memory monitoring and control
DB2 for z/OS - Starter's guide to memory monitoring and control
 
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
IMC Summit 2016 Breakout - Andy Pavlo - What Non-Volatile Memory Means for th...
 
DB2 Accounting Reporting
DB2  Accounting ReportingDB2  Accounting Reporting
DB2 Accounting Reporting
 
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...
DB2 for z/OS Bufferpool Tuning win by Divide and Conquer or Lose by Multiply ...
 
Gluster 3.3 deep dive
Gluster 3.3 deep diveGluster 3.3 deep dive
Gluster 3.3 deep dive
 
A First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM ChangesA First Look at the DB2 10 DSNZPARM Changes
A First Look at the DB2 10 DSNZPARM Changes
 
ALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARMALL ABOUT DB2 DSNZPARM
ALL ABOUT DB2 DSNZPARM
 
Get More Out of MongoDB with TokuMX
Get More Out of MongoDB with TokuMXGet More Out of MongoDB with TokuMX
Get More Out of MongoDB with TokuMX
 
Best practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recoveryBest practices for DB2 for z/OS log based recovery
Best practices for DB2 for z/OS log based recovery
 
PostgreSQL Scaling And Failover
PostgreSQL Scaling And FailoverPostgreSQL Scaling And Failover
PostgreSQL Scaling And Failover
 
Rit 2011 ats
Rit 2011 atsRit 2011 ats
Rit 2011 ats
 
FlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OSFlashCopy and DB2 for z/OS
FlashCopy and DB2 for z/OS
 
SHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENTSHADOW PAGING and BUFFER MANAGEMENT
SHADOW PAGING and BUFFER MANAGEMENT
 
Gluster Data Tiering
Gluster Data TieringGluster Data Tiering
Gluster Data Tiering
 
DB2 11 for z/OS Migration Planning and Early Customer Experiences
DB2 11 for z/OS Migration Planning and Early Customer ExperiencesDB2 11 for z/OS Migration Planning and Early Customer Experiences
DB2 11 for z/OS Migration Planning and Early Customer Experiences
 
Gluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & TricksGluster for Geeks: Performance Tuning Tips & Tricks
Gluster for Geeks: Performance Tuning Tips & Tricks
 

Similar to Time For DIME

Sql server tips from the field
Sql server tips from the fieldSql server tips from the field
Sql server tips from the fieldJoAnna Cheshire
 
Redis Developers Day 2014 - Redis Labs Talks
Redis Developers Day 2014 - Redis Labs TalksRedis Developers Day 2014 - Redis Labs Talks
Redis Developers Day 2014 - Redis Labs TalksRedis Labs
 
Taking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout SessionTaking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout SessionSplunk
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive WritesLiran Zelkha
 
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...Tokyo University of Science
 
Tuning DB2 in a Solaris Environment
Tuning DB2 in a Solaris EnvironmentTuning DB2 in a Solaris Environment
Tuning DB2 in a Solaris EnvironmentJignesh Shah
 
Db2 10 memory management uk db2 user group june 2013 [read-only]
Db2 10 memory management   uk db2 user group june 2013 [read-only]Db2 10 memory management   uk db2 user group june 2013 [read-only]
Db2 10 memory management uk db2 user group june 2013 [read-only]Laura Hood
 
Software Design for Persistent Memory Systems
Software Design for Persistent Memory SystemsSoftware Design for Persistent Memory Systems
Software Design for Persistent Memory SystemsC4Media
 
Db2 10 memory management uk db2 user group june 2013
Db2 10 memory management   uk db2 user group june 2013Db2 10 memory management   uk db2 user group june 2013
Db2 10 memory management uk db2 user group june 2013Carol Davis-Mann
 
LDAP at Lightning Speed
 LDAP at Lightning Speed LDAP at Lightning Speed
LDAP at Lightning SpeedC4Media
 
Hardware Provisioning
Hardware ProvisioningHardware Provisioning
Hardware ProvisioningMongoDB
 
SanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraSanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraDataStax Academy
 
Fundamentals of performance tuning PHP on IBM i
Fundamentals of performance tuning PHP on IBM i  Fundamentals of performance tuning PHP on IBM i
Fundamentals of performance tuning PHP on IBM i Zend by Rogue Wave Software
 
Presentation db2 best practices for optimal performance
Presentation   db2 best practices for optimal performancePresentation   db2 best practices for optimal performance
Presentation db2 best practices for optimal performancesolarisyougood
 
MySQL Performance - Best practices
MySQL Performance - Best practices MySQL Performance - Best practices
MySQL Performance - Best practices Ted Wennmark
 
I Know What You Did THIS Summer
I Know What You Did THIS SummerI Know What You Did THIS Summer
I Know What You Did THIS SummerMartin Packer
 
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud TrainingLinux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud TrainingChinaNetCloud
 

Similar to Time For DIME (20)

Sql server tips from the field
Sql server tips from the fieldSql server tips from the field
Sql server tips from the field
 
Linux Huge Pages
Linux Huge PagesLinux Huge Pages
Linux Huge Pages
 
Redis Developers Day 2014 - Redis Labs Talks
Redis Developers Day 2014 - Redis Labs TalksRedis Developers Day 2014 - Redis Labs Talks
Redis Developers Day 2014 - Redis Labs Talks
 
Taking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout SessionTaking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout Session
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive Writes
 
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...
The All-In-One Package for Massively Multicore, Heterogeneous Jobs with Hotsp...
 
Tuning DB2 in a Solaris Environment
Tuning DB2 in a Solaris EnvironmentTuning DB2 in a Solaris Environment
Tuning DB2 in a Solaris Environment
 
Db2 10 memory management uk db2 user group june 2013 [read-only]
Db2 10 memory management   uk db2 user group june 2013 [read-only]Db2 10 memory management   uk db2 user group june 2013 [read-only]
Db2 10 memory management uk db2 user group june 2013 [read-only]
 
Software Design for Persistent Memory Systems
Software Design for Persistent Memory SystemsSoftware Design for Persistent Memory Systems
Software Design for Persistent Memory Systems
 
Big data nyu
Big data nyuBig data nyu
Big data nyu
 
Db2 10 memory management uk db2 user group june 2013
Db2 10 memory management   uk db2 user group june 2013Db2 10 memory management   uk db2 user group june 2013
Db2 10 memory management uk db2 user group june 2013
 
LDAP at Lightning Speed
 LDAP at Lightning Speed LDAP at Lightning Speed
LDAP at Lightning Speed
 
Hardware Provisioning
Hardware ProvisioningHardware Provisioning
Hardware Provisioning
 
SanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and CassandraSanDisk: Persistent Memory and Cassandra
SanDisk: Persistent Memory and Cassandra
 
Fundamentals of performance tuning PHP on IBM i
Fundamentals of performance tuning PHP on IBM i  Fundamentals of performance tuning PHP on IBM i
Fundamentals of performance tuning PHP on IBM i
 
Presentation db2 best practices for optimal performance
Presentation   db2 best practices for optimal performancePresentation   db2 best practices for optimal performance
Presentation db2 best practices for optimal performance
 
MySQL Performance - Best practices
MySQL Performance - Best practices MySQL Performance - Best practices
MySQL Performance - Best practices
 
I Know What You Did THIS Summer
I Know What You Did THIS SummerI Know What You Did THIS Summer
I Know What You Did THIS Summer
 
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud TrainingLinux Memory Basics for SysAdmins - ChinaNetCloud Training
Linux Memory Basics for SysAdmins - ChinaNetCloud Training
 
Virtual memory 20070222-en
Virtual memory 20070222-enVirtual memory 20070222-en
Virtual memory 20070222-en
 

More from Martin Packer

zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018Martin Packer
 
Even More Fun With DDF
Even More Fun With DDFEven More Fun With DDF
Even More Fun With DDFMartin Packer
 
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topicsMunich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topicsMartin Packer
 
Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Munich 2016 - Z011599 Martin Packer - More Fun With DDFMunich 2016 - Z011599 Martin Packer - More Fun With DDF
Munich 2016 - Z011599 Martin Packer - More Fun With DDFMartin Packer
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity PlanningMartin Packer
 
Parallel Batch Performance Considerations
Parallel Batch Performance ConsiderationsParallel Batch Performance Considerations
Parallel Batch Performance ConsiderationsMartin Packer
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity PlanningMartin Packer
 
DB2 Data Sharing Performance
DB2 Data Sharing PerformanceDB2 Data Sharing Performance
DB2 Data Sharing PerformanceMartin Packer
 
I Know What You Did Last Summer
I Know What You Did Last SummerI Know What You Did Last Summer
I Know What You Did Last SummerMartin Packer
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS BatchMartin Packer
 
DB2 Data Sharing Performance for Beginners
DB2 Data Sharing Performance for BeginnersDB2 Data Sharing Performance for Beginners
DB2 Data Sharing Performance for BeginnersMartin Packer
 
Memory Matters in 2011
Memory Matters in 2011Memory Matters in 2011
Memory Matters in 2011Martin Packer
 
Parallel Sysplex Performance Topics
Parallel Sysplex Performance TopicsParallel Sysplex Performance Topics
Parallel Sysplex Performance TopicsMartin Packer
 
Curt Cotner DDF Inactive Threads Support DB2 Version 3
Curt Cotner DDF Inactive Threads Support DB2 Version 3Curt Cotner DDF Inactive Threads Support DB2 Version 3
Curt Cotner DDF Inactive Threads Support DB2 Version 3Martin Packer
 
Coupling Facility CPU
Coupling Facility CPUCoupling Facility CPU
Coupling Facility CPUMartin Packer
 

More from Martin Packer (18)

zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018zIIP Capacity Planning - May 2018
zIIP Capacity Planning - May 2018
 
Even More Fun With DDF
Even More Fun With DDFEven More Fun With DDF
Even More Fun With DDF
 
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topicsMunich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
Munich 2016 - Z011601 Martin Packer - Parallel Sysplex Performance Topics topics
 
Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Munich 2016 - Z011599 Martin Packer - More Fun With DDFMunich 2016 - Z011599 Martin Packer - More Fun With DDF
Munich 2016 - Z011599 Martin Packer - More Fun With DDF
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
 
Parallel Batch Performance Considerations
Parallel Batch Performance ConsiderationsParallel Batch Performance Considerations
Parallel Batch Performance Considerations
 
zIIP Capacity Planning
zIIP Capacity PlanningzIIP Capacity Planning
zIIP Capacity Planning
 
DB2 Data Sharing Performance
DB2 Data Sharing PerformanceDB2 Data Sharing Performance
DB2 Data Sharing Performance
 
I Know What You Did Last Summer
I Know What You Did Last SummerI Know What You Did Last Summer
I Know What You Did Last Summer
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS Batch
 
Much Ado About CPU
Much Ado About CPUMuch Ado About CPU
Much Ado About CPU
 
Much Ado about CPU
Much Ado about CPUMuch Ado about CPU
Much Ado about CPU
 
DB2 Data Sharing Performance for Beginners
DB2 Data Sharing Performance for BeginnersDB2 Data Sharing Performance for Beginners
DB2 Data Sharing Performance for Beginners
 
Memory Matters in 2011
Memory Matters in 2011Memory Matters in 2011
Memory Matters in 2011
 
Parallel Sysplex Performance Topics
Parallel Sysplex Performance TopicsParallel Sysplex Performance Topics
Parallel Sysplex Performance Topics
 
Curt Cotner DDF Inactive Threads Support DB2 Version 3
Curt Cotner DDF Inactive Threads Support DB2 Version 3Curt Cotner DDF Inactive Threads Support DB2 Version 3
Curt Cotner DDF Inactive Threads Support DB2 Version 3
 
Coupling Facility CPU
Coupling Facility CPUCoupling Facility CPU
Coupling Facility CPU
 
Much Ado About CPU
Much Ado About CPUMuch Ado About CPU
Much Ado About CPU
 

Recently uploaded

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Time For DIME

  • 1. Time For D.I.M.E? Martin Packer, IBM martin_packer@uk.ibm.com
  • 2. Abstract In recent years memory has become cheaper, or certainly more plentiful. This enables us to do new things, or old things faster and better. I believe it is indeed Time For DIME (Data In Memory Exploitation). But we've been here before - in the late 1980's. Much has changed but the basic concepts haven't. So this presentation reminds us of "the way we were" but brings things right up to date. It covers why you'd want to run a DIME project and how to go about it: It covers both the project phases and technical aspects, preparing you to make a quick start on realising the benefits of DIME. While the main example presented here is DB2, the presentation also discusses Coupling Facility memory exploitation, as well as a number of other examples.
  • 3. Agenda ● What is DIME? ● Benefits of DIME ● Storage Hierarchy – Then And Now ● DIME – Then And Now ● Is Now The Time For DIME? ● What Do YOU Mean By Full? ● Breaking Down Memory Usage ● Exploiting Data In Memory
  • 4. What Is DIME? ● DIME = Data In Memory Exploitation ● Choices to use memory more aggressively ● Examples: – Larger DB2 buffer pools – Larger Java heaps – Larger CICS Dynamic Storage Area limits – Moving temporary data sets to VIO in memory
  • 5. Benefits of DIME ● Keeping the right Data In Memory can: – Reduce response times – Support increased throughput – Speed up batch jobs ● Secondarily it might: – Take some of the strain off disks and cache – Allow more parallelism – Save CPU ● But it might easily cost you CPU
  • 6. Storage Hierarchy – Then ● 64 – 256 MB Central Storage ● Optional 128 – 512 MB Expanded Storage ● MVPG Instruction – Hiperbatch – DB2 Hiperpools – VSAM LSR Hiperspace Buffer Pools ● (ADMF was later) ● VIO to Expanded Storage ● “Paging” to Expanded Storage ● DIM projects abounded ● 3990 Disk Cache ● 3390 Disks ● 3480 Tape
  • 7. Storage Hierarchy - Now ● 32 – 3040GB Memory ● Optional Flash Express 1.4 – 5.6TB – Dump Capture – Pageable Large Frames – Paging in general ● Most of the previous memory exploiters – VIO recast to use Central – DB2 V10 uses 64-Bit in most places – Hiperbatch obsolete ● IBM DS8870 – Cache – Flash – Disk
  • 8. DIME - Then and Now ● THEN: “Marketing” Push to persuade customers to upgrade to latest and greatest – Proliferation of “Marketing Aids” ● NOW: “Customer Pull to gain value – No Marketing Aids ● But User F61 GTF trace still works
  • 9. Is Now The Time For DIME? ● The economics of exploiting memory have changed – Machines come with much more memory – Memory is much cheaper ● Products are capable of supporting much more DIM Exploitation – e.g. DB2 V10 – e.g. CICS TS 5.1 – e.g. 64-Bit JVM ● New configuration possibilities – e.g System zEC12 Flash Express – 1MB page frames
  • 10. When Might DIME Be A Bad Idea? ● When there is no likely benefit ● When you haven't got the memory ● When you're determined to save CPU ● When CPU is already constrained ● When you haven't sufficient virtual storage ● When solving the problem through a quick application change is better – Example: DB2 SQL Access Path fix
  • 11. What Do YOU Mean By Full? ● Not able to back all the dataspace memory for any dump scenario? ● Not many free pages at the peak? 1 ● Paging > 0? ● Paging > 100 / sec? 2 ● Key workloads beginning to page? ● Unable to create new address spaces? Notes: 1 Some programs can adjust usage based on available memory, so this is a tricky one 2 Alternatively, until page data set Contiguous Slot Allocation algorithm degrades
  • 13.
  • 14. Currently Active LPARs ● Paging Activity Report gives System view – SMF 70 better than report – Breaks down into queues ● e.g Private, CSA, Nucleus – Shows Free ● Workload Activity Report gives Service Class Period view – SMF 72-3 – Accurate only for non-swappable workloads ● SMF 30 gives Address Space view – Treat with suspicion – Virtual Storage numbers more solid ● Size of other Active LPARs in Partition Data Report – SMF 70-1
  • 15. Hypothecated – e.g. For Recovered LPARs ● Inactive LPARs' memory not reported in Partition Data Report – Or SMF 70-1 – Existence of LPAR is ● Use HMC – Or your spreadsheet :-(
  • 16. Unhypothecated – Free For Use ● Might need to deploy some into LPARs to do Data In Memory – Actually doing so requires planning ● Total Purchased not in RMF ● Obtainable from HMC ● In Vital Product Data – IBMers have tooling for this ● Subtract all LPARs – Active and Inactive
  • 18.
  • 20. DB2 ... ● That was Version 8 ● Since then – Version 9 provide much more Virtual Storage Constraint Relief (VSCR) – Version 10 much more still ● It pays to examine DB2 Virtual Storage upon migration – Use IFCID 225 – In this case it's a happy story
  • 21. DB2 - Some Things To Consider ● Accounting Trace (SMF 101) gives “DIM useful” time buckets ● EDM Pool / Prepared Statement Cache – 64 Bit in Version 8 – More liberal definition of a match in V10 ● More or larger threads – Best done on V10 – RELEASE(DEALLOCATE) to cut CPU ● Buffer pools – 64 Bit in Version 8 – Long-Term Page Fixed – 1MB Pages – Flash Express – Bigger Group Buffer Pools
  • 22. CICS - Some Things To Consider ● Considerable VSCR in Versions 4 and 5 – Both 24 → 31 and 31 → 64 Bit – But not as comprehensive as DB2 ● Fewer program compressions – But generally not a problem these days ● Bigger VSAM LSR buffer pools – Installations typically not aggressive enough with these ● Larger JVM heaps ● Potential region consolidation – In turn might make above more effective ● Use Statistics Trace (SMF 110) to analyse Virtual Storage first
  • 23. Coupling Facility ● Often see cache structures too small – Usually data elements – Occasionally directory entries ● Rarely see lock structures too small – Would cause False Contentions – Knock-on effect on XCF traffic in IXCLOnnn group ● Both diagnosable with Coupling Facility Activity Report – Or SMF 74-4 ● Remember “white space” – Less of a concern with duplexing
  • 24. Some Choreography ● Timing is important ● Example: DB2 – The world looks very different DB2 V8 → V9 → V10 ● Processor family upgrades are a good opportunity – Be careful of “carry forward memory” timings ● Some application ramp-ups need help – Have something “in your back pocket” ● Every hardware / software upgrade should have an exploitation phase – Possibly nominal
  • 26. Parting Thoughts ● When implementing a new application: – Build a list of potential DIME areas – Size memory accordingly ● When tuning an existing application: – Likewise ● When capacity planning for memory: – Consider a fresh stance on what “full” means ● Day to day: – Be sure to measure memory usage properly