SlideShare una empresa de Scribd logo
1 de 408
Descargar para leer sin conexión
© SAP AG 1999
TABC30 Technical Consultant Training Week 5:
Performance Analysis & Tuning
Technical Consultant Training:
Performance Analysis & Tuning
Technical Consultant Training:
Performance Analysis & Tuning
TABC30R/3 Release 4.6C 50039594
TABC30R/3 Release 4.6C 50039594
Week 5Week 5
Oct-19-2000
© SAP AG 1999
Copyright 2000 SAP AG. All rights reserved.
Neither this training manual nor any part thereof may
be copied or reproduced in any form or by any means,
or translated into another language, without the prior
consent of SAP AG. The information contained in this
document is subject to change and supplement without prior
notice.
All rights reserved.
Copyright
n Trademarks:
n Some software products marketed by SAP AG and its distributors contain proprietary software components of other
software vendors.
n Microsoft®, WINDOWS®, NT®, EXCEL®, Word® and SQL Server® are registered trademarks of Microsoft
Corporation.
n IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®, OS/390®,
and OS/400® are registered trademarks of IBM Corporation.
n ORACLE® is a registered trademark of ORACLE Corporation, California, USA.
n INFORMIX®-OnLine for SAP and Informix® Dynamic ServerTM are registered trademarks of Informix Software
Incorporated.
n UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of The Open Group.
n HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C®, World Wide Web Consortium,
Laboratory for Computer Science NE43-358, Massachusetts Institute of Technology, 545 Technology Square, Cambridge,
MA 02139.
n JAVA® is a registered trademark of Sun Microsystems, Inc. , 901 San Antonio Road, Palo Alto, CA 94303 USA.
n JAVASCRIPT® is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and
implemented by Netscape.
n SAP, SAP Logo, mySAP.com, mySAP.com Marketplace, mySAP.com Workplace, mySAP.com Business Scenarios,
mySAP.com Application Hosting, WebFlow, R/2, R/3, RIVA, ABAP™, SAP Business Workflow, SAP EarlyWatch, SAP
ArchiveLink, BAPI, SAPPHIRE, Management Cockpit, SEM, are trademarks or registered trademarks of SAP AG in
Germany and in several other countries all over the world. All other products mentioned are trademarks or registered
trademarks of their respective companies.
n Design: SAP Communications Media
Contents
Course Overview......................................................................................................................................................................1
Target Group ........................................................................................................................................................................2
Course Prerequisites............................................................................................................................................................3
Course Goals ........................................................................................................................................................................4
Course Composition............................................................................................................................................................5
TABCUO - Sections...........................................................................................................................................................6
TABCNS - Sections............................................................................................................................................................7
TABCNO - Sections...........................................................................................................................................................8
Section: Workload Analysis ...................................................................................................................................................9
Introduction to Workload Analysis ................................................................................................................................10
Introduction to Workload Analysis ............................................................................................................................11
Introduction: Performance Bottlenecks .....................................................................................................................12
Typical Tuning Measures ............................................................................................................................................13
R/3 Basis Tuning Tasks ...............................................................................................................................................14
R/3 Application Tuning Tasks ....................................................................................................................................15
Multi-Tier Client/ Server Architecture ......................................................................................................................16
Dialog Step: Wait Time ...............................................................................................................................................17
Dialog Step: Roll-in time .............................................................................................................................................18
Dialog Step: Database Time ........................................................................................................................................19
Dialog Step: Access to SAP Buffers..........................................................................................................................20
Dialog Step: Response time ........................................................................................................................................21
Dialog Step: Roll out time ...........................................................................................................................................22
Summary: Response Time Components ...................................................................................................................23
CPU Time .......................................................................................................................................................................24
Workload Statistics (1).................................................................................................................................................25
Workload Statistics (2).................................................................................................................................................26
Initial Analysis Roadmap (1) ......................................................................................................................................27
Initial Analysis Roadmap (2) ......................................................................................................................................28
Analysis Roadmap: Using the Workload Monitor..................................................................................................29
Performance Monitors for the R/3 Basis ...................................................................................................................30
Transaction Profile ........................................................................................................................................................31
Statistical Records.........................................................................................................................................................32
Analysis Roadmap: Using the Transaction Profile .................................................................................................33
Performance Monitors for R/3 Applications............................................................................................................34
Availability of the New Workload Transactions.....................................................................................................35
Workload Statistics (until 4.6B) .................................................................................................................................36
Transaction Profile (until 4.6B) ..................................................................................................................................37
Summary of this Unit ...................................................................................................................................................38
Performance Analysis Monitors......................................................................................................................................39
Performance Analysis Monitors .................................................................................................................................40
Performance Monitors for the R/3 Basis ...................................................................................................................41
Work Process Overview...............................................................................................................................................42
Analysis Roadmap: Using the Work Process Overview ........................................................................................43
Operating System Monitor ..........................................................................................................................................44
OS Monitor: TOP CPU Processes..............................................................................................................................45
Setups / Tune Buffers Monitor (1).............................................................................................................................46
Setups / Tune Buffers Monitor (2).............................................................................................................................47
Getting Started Exercise...............................................................................................................................................48
Workload Analysis Exercise.......................................................................................................................................49
Work Process Overview...............................................................................................................................................50
Workload Monitor.........................................................................................................................................................51
Setups / Tune Buffers Monitor...................................................................................................................................52
Poor Configuration Example .......................................................................................................................................53
Optimal Configuration .................................................................................................................................................54
Workload Monitor.........................................................................................................................................................55
Setup / Tune Buffers Monitor.....................................................................................................................................56
Reasons for Program Buffer Swaps...........................................................................................................................57
Summary of this Unit ...................................................................................................................................................58
R/3 Memory Management ...............................................................................................................................................59
R/3 Memory Management...........................................................................................................................................60
R/3 Memory Management...........................................................................................................................................61
First Topic in Unit .........................................................................................................................................................62
R/3 Memory Areas........................................................................................................................................................63
Physical and Virtual Memory .....................................................................................................................................64
R/3 Memory I: Local Memory for Work Processes................................................................................................65
R/3 Memory II: R/3 Buffers ........................................................................................................................................66
R/3 Memory III: Extended Memory ..........................................................................................................................67
R/3 Memory IV: Heap Memory .................................................................................................................................68
R/3 Memory V: Roll Memory ....................................................................................................................................69
R/3 Memory VI: Paging Memory ..............................................................................................................................70
R/3 Memory - System Point of View........................................................................................................................71
R/3 Memory Areas - Summary...................................................................................................................................72
Next Topic in Unit ........................................................................................................................................................73
User Context Data.........................................................................................................................................................74
Roll Out (1) ....................................................................................................................................................................75
Roll Out (2) ....................................................................................................................................................................76
Roll In..............................................................................................................................................................................77
Roll Area and Paging Area..........................................................................................................................................78
Roll Buffer and Paging Buffer....................................................................................................................................79
R/3 Extended Memory .................................................................................................................................................80
Allocation Concepts - Summary (1) ..........................................................................................................................81
Allocation Concepts - Summary (2) ..........................................................................................................................82
Next Topic in Unit ........................................................................................................................................................83
Allocation Sequence for Dialog WPs (1)..................................................................................................................84
Allocation Sequence for Dialog WPs (2)..................................................................................................................85
Allocation Sequence for Dialog WPs (3)..................................................................................................................86
Allocation Sequence for Dialog WPs (4)..................................................................................................................87
Allocation Sequence for Dialog WPs (5)..................................................................................................................88
Allocation Sequence for Dialog WPs (6)..................................................................................................................89
Heap Memory and PRIV Mode (1)............................................................................................................................90
Heap Memory and PRIV Mode (2)............................................................................................................................91
Allocation Sequence for Dialog WPs - Overview...................................................................................................92
Allocation Sequence for Dialog WPs - Summary ...................................................................................................93
Next Topic in Unit ........................................................................................................................................................94
Allocation Sequence for Non-Dialog WPs ...............................................................................................................95
Next Topic in Unit ........................................................................................................................................................96
Freeing Heap Memory (1) ...........................................................................................................................................97
Freeing Heap Memory (2) ...........................................................................................................................................98
Freeing Heap Memory (3) ...........................................................................................................................................99
Parameter ABAP/HEAPLIMIT...............................................................................................................................100
Memory Management Parameters ..........................................................................................................................101
Demonstration: Testing Memory Limits (1) .........................................................................................................102
Demonstration: Testing Memory Limits (2) .........................................................................................................103
R/3 Memory Consumption.......................................................................................................................................104
Mode List.....................................................................................................................................................................105
Work Process Overview............................................................................................................................................106
Analysis Roadmap: R/3 Memory Configuration..................................................................................................107
Workload Analysis Exercise....................................................................................................................................108
Workload Analysis Exercise: Solution...................................................................................................................109
Insufficient Extended Memory ................................................................................................................................110
Sufficient Extended Memory ...................................................................................................................................111
Next Topic in Unit .....................................................................................................................................................112
Zero Administration Memory Management..........................................................................................................113
R/3 Extended Memory on UNIX (1)......................................................................................................................114
R/3 Extended Memory on UNIX (2)......................................................................................................................115
Benefits of 64-Bit Address Space for R/3..............................................................................................................116
R/3 Extended Memory on NT..................................................................................................................................117
Summary of this Unit ................................................................................................................................................118
Appendix: Menu Paths for R/3 Memory Management .......................................................................................119
Hardware Capacity Verification ..................................................................................................................................120
Hardware Capacity Verification..............................................................................................................................121
Hardware Capacity Verification..............................................................................................................................122
First Topic in Unit ......................................................................................................................................................123
What is a Hardware Bottleneck? .............................................................................................................................124
Hardware Bottlenecks ...............................................................................................................................................125
Next Topic in Unit .....................................................................................................................................................126
Hardware Analysis Roadmap (1) ............................................................................................................................127
Hardware Analysis Roadmap (2) ............................................................................................................................128
Response Time Components ....................................................................................................................................129
Hardware Analysis Roadmap (3) ............................................................................................................................130
Workload Analysis Exercise....................................................................................................................................131
Exercise Analysis: Work Process Overview .........................................................................................................132
Exercise Analysis: Workload Monitor...................................................................................................................133
Exercise Analysis: Operating System Monitor.....................................................................................................134
Exercise Analysis: Top CPU Processes .................................................................................................................135
Exercise Analysis: Conclusion (1)..........................................................................................................................136
Exercise Analysis: Conclusion (2)..........................................................................................................................137
Checking Tuning Results (1) ...................................................................................................................................138
Checking Tuning Results (2) ...................................................................................................................................139
Checking Tuning Results (3) ...................................................................................................................................140
Next Topic in Unit .....................................................................................................................................................141
Optimizing Memory Configuration (1) ..................................................................................................................142
Optimizing Memory Configuration (2) ..................................................................................................................143
Checking R/3 Virtual Memory Allocation ............................................................................................................144
Configuring CPU (1) .................................................................................................................................................145
Configuring CPU (2) .................................................................................................................................................146
Summary of this Unit ................................................................................................................................................147
Appendix: 32 Bit Configuration Example (1) .......................................................................................................148
Appendix: 32 Bit Configuration Example (2) .......................................................................................................149
Appendix: Quick Sizing (1) .....................................................................................................................................150
Appendix: Quick Sizing (2) .....................................................................................................................................151
Appendix: Quick Sizing (3) .....................................................................................................................................152
Appendix: Quick Sizing (4) .....................................................................................................................................153
Expensive SQL Statements...........................................................................................................................................154
Expensive SQL Statements ......................................................................................................................................155
Expensive SQL Statements ......................................................................................................................................156
Topics Covered Elsewhere .......................................................................................................................................157
First Topic in Unit ......................................................................................................................................................158
What is an Expensive SQL Statement?..................................................................................................................159
Consequences of Expensive SQL Statements.......................................................................................................160
Next Topic in Unit .....................................................................................................................................................161
Detecting Expensive SQL Statements....................................................................................................................162
Monitors for Detection and Analysis......................................................................................................................163
Detection Using the Transaction Profile ................................................................................................................164
Detection Roadmap (1) .............................................................................................................................................165
Detection Using the Work Process Overview.......................................................................................................166
Detection Using the Database Monitor..................................................................................................................167
Detection Using the Database Process Monitor....................................................................................................168
Detection Using the Database Lock Monitor........................................................................................................169
Detection Roadmap (2) .............................................................................................................................................170
Monitoring Buffer Gets / Disk Reads (1)...............................................................................................................171
Monitoring Buffer Gets / Disk Reads (2)...............................................................................................................172
Monitoring Buffer Gets / Disk Reads (3)...............................................................................................................173
Detection Using the SQL Trace (1) ........................................................................................................................174
Detection Using the SQL Trace (2) ........................................................................................................................175
Detection Using the Where-Used List....................................................................................................................176
Detection Roadmap (3) .............................................................................................................................................177
SQL Statement Exercise (1) .....................................................................................................................................178
SQL Statement Exercise (2) .....................................................................................................................................179
Exercise Solution for 1st SQL Statement...............................................................................................................180
Exercise Solution for 2nd SQL Statement.............................................................................................................181
Next Topic in Unit .....................................................................................................................................................182
Two Types of Expensive SQL Statements ............................................................................................................183
Detailed Analysis of Expensive SQL Statements.................................................................................................184
Detailed Analysis of Expensive SQL Statements.................................................................................................185
Index Use in SQL Statements (1) ............................................................................................................................186
Index Use in SQL Statements (2) ............................................................................................................................187
Index Use in SQL Statements (3) ............................................................................................................................188
Rules for Creating a Secondary Index (1)..............................................................................................................189
Rules for Creating a Secondary Index (2)..............................................................................................................190
Additional Tips for Creating a Secondary Index..................................................................................................191
Optimizer Determination of Access Path...............................................................................................................192
Table Statistics for the Optimizer............................................................................................................................193
Checking the Optimizer using EXPLAIN .............................................................................................................194
Why Optimizer Decisions May Cause Performance Problems ..........................................................................195
Tips for Optimizing ABAP Coding (1) ..................................................................................................................196
Tips for Optimizing ABAP Coding (2) ..................................................................................................................197
Detection Roadmap (3) .............................................................................................................................................198
Tuning Roadmap ........................................................................................................................................................199
Workload Analysis Exercise....................................................................................................................................200
Workload Analysis Exercise: Detection ................................................................................................................201
Workload Analysis Exercise: Solution...................................................................................................................202
Before-and-After Comparison.................................................................................................................................203
Summary of this Unit ................................................................................................................................................204
Appendix1: Optimizing ABAP Database Programming.....................................................................................205
ABAP Database Programming ................................................................................................................................206
Creating Efficient SQL Statements.........................................................................................................................207
Tuning Checklist for ABAP Coding (1) ................................................................................................................208
Tuning Checklist for ABAP Coding (2) ................................................................................................................209
Tuning Checklist for ABAP Coding (3) ................................................................................................................210
Appendix 2: Database Locks and R/3 Enqueues..................................................................................................211
Exclusive Lock Waits (1) .........................................................................................................................................212
Exclusive Lock Waits (2) .........................................................................................................................................213
Exclusive Lock Waits (3) .........................................................................................................................................214
R/3 Enqueues versus Database Locks ....................................................................................................................215
Using R/3 Enqueues and Database Locks..............................................................................................................216
Locking and Performance.........................................................................................................................................217
OS Monitor and Top CPU Processes......................................................................................................................218
The Database Process Monitor................................................................................................................................219
R/3 Table Buffering .......................................................................................................................................................220
R/3 Table Buffering...................................................................................................................................................221
R/3 Table Buffering...................................................................................................................................................222
First Topic in Unit ......................................................................................................................................................223
Table Buffers in R/3 ..................................................................................................................................................224
Why Use Table Buffe rs in R/3? (1) ........................................................................................................................225
Why Use Table Buffers in R/3? (2) ........................................................................................................................226
Table Buffering Types...............................................................................................................................................227
Buffer Synchronization (1) .......................................................................................................................................228
Buffer Synchronization (2) .......................................................................................................................................229
Buffer Synchronization (3) .......................................................................................................................................230
Granularity of Invalidation .......................................................................................................................................231
Setting the Buffering for a Table .............................................................................................................................232
SQL Statements Bypassing the Buffer (1).............................................................................................................233
SQL Statements Bypassing the Buffer (2).............................................................................................................234
SQL/Buffering Exercise............................................................................................................................................235
SQL/Buffering Exercise Solution (1) .....................................................................................................................236
SQL/Buffering Exercise Solution (2) .....................................................................................................................237
SQL/Buffering Exercise Solution (3) .....................................................................................................................238
SQL/Buffering Exercise Solution (4) .....................................................................................................................239
SQL/Buffering Exercise Solution (5) .....................................................................................................................240
SQL/Buffering Exercise Solution (6) .....................................................................................................................241
SQL/Buffering Exercise Solution (7) .....................................................................................................................242
SQL/Buffering Exercise: 2nd Run of ZZBUFFER.............................................................................................243
Next Topic in Unit .....................................................................................................................................................244
Buffering Strategy: Technical Criteria ...................................................................................................................245
Buffering Strategy: Application Criteria ................................................................................................................246
Buffering Strategy: Condition Tables.....................................................................................................................247
Buffering Optimization .............................................................................................................................................248
Next Topic in Unit .....................................................................................................................................................249
Analysis Roadmap: Using the Transaction Profile ..............................................................................................250
Table Call Statistics (Transaction ST10) ...............................................................................................................251
Analysis Roadmap: Using Table Call Statistics ...................................................................................................252
Detection Roadmap: Monitoring Table Buffering ...............................................................................................253
Example: Monitoring Table Buffering...................................................................................................................254
Example: Table Analysis (1)....................................................................................................................................255
Example: Table Analysis (2)....................................................................................................................................256
Example: SQL Cursor Cache...................................................................................................................................257
Summary......................................................................................................................................................................258
Appendix: ATP Server..............................................................................................................................................259
Introduction: Availability Checks with ATP Logic .............................................................................................260
First Topic in Appendix............................................................................................................................................261
Material Locking (1)..................................................................................................................................................262
Material Locking (2)..................................................................................................................................................263
Database Accesses .....................................................................................................................................................264
Next Topic in Appendix............................................................................................................................................265
Overview of ATP Related Techniques...................................................................................................................266
Locking with Quantities (1) .....................................................................................................................................267
Locking with Quantities (2) .....................................................................................................................................268
ATP Server (1)............................................................................................................................................................269
ATP Server (2)............................................................................................................................................................270
ATP Server (3)............................................................................................................................................................271
Next Topic in Appendix............................................................................................................................................272
Monitoring the Export/Import Buffer.....................................................................................................................273
Monitoring R/3 Enqueues.........................................................................................................................................274
Monitoring SQL Statements.....................................................................................................................................275
Setting ATP Server Parameters ...............................................................................................................................276
Interface Monitoring ......................................................................................................................................................277
Interface Monitoring..................................................................................................................................................278
Processing Modes.......................................................................................................................................................279
mySAP.com Interfaces..............................................................................................................................................280
Remote Function Calls (RFCs)................................................................................................................................281
'Simple’ Transaction Step.........................................................................................................................................282
Transaction Step with Synchronous RFC..............................................................................................................283
RFC Monitoring : Statistical Records.....................................................................................................................284
RFC Monitoring : Statistical Sub-Records (1) ......................................................................................................285
RFC Monitoring : Statistical Sub-Records (2) ......................................................................................................286
RFC Monitoring: RFC Destinations.......................................................................................................................287
RFC Monitoring: Performance Trace .....................................................................................................................288
Next Topic in Unit .....................................................................................................................................................289
R/3 Release 4.6: Enjoy SAP.....................................................................................................................................290
Interaction Model: Controls Technology...............................................................................................................291
Interaction Model: Implications for Performance ................................................................................................292
Transaction Step with Roundtrip .............................................................................................................................293
Example (I): ST03 - High Roll Wait Time ............................................................................................................294
Example (II): STAD - Statistical Record ...............................................................................................................295
RFC Monitoring: Performance Trace .....................................................................................................................296
Trouble Shooting : High GUI Time ........................................................................................................................297
Example (III): ST06 - Network Check by Ping ....................................................................................................298
Trouble Shooting : High GUI Time (2)..................................................................................................................299
Trouble Shooting: New Visual Design...................................................................................................................300
Trouble Shooting: LOW Speed Connection..........................................................................................................301
Trouble Shooting: SAP Easy Access Menu..........................................................................................................302
Next Topic in Unit .....................................................................................................................................................303
Remote Function Calls (RFC and aRFC) ..............................................................................................................304
Troubleshooting: Incoming RFC Load (Problem) ...............................................................................................305
Troubleshooting: Incoming RFC Load (Monitoring)..........................................................................................306
Troubleshooting: Incoming RFC Load (Solution) ...............................................................................................307
Troubleshooting: Outgoing RFC Load (Monitoring) ..........................................................................................308
Troubleshooting: High RFC Load...........................................................................................................................309
Remote Function Calls: tRFCs ................................................................................................................................310
Next Topic in Unit .....................................................................................................................................................311
Workload Analysis Exercise....................................................................................................................................312
Exercise: Work Process Monitor.............................................................................................................................313
Exercise: User Overview ..........................................................................................................................................314
Exercise: Workload Monitor (RFC Profile) ..........................................................................................................315
Exercise: Transactional RFC Monitor....................................................................................................................316
Conclusion | Appendix..................................................................................................................................................317
Conclusion...................................................................................................................................................................318
Further Documentation .............................................................................................................................................319
Analysis Roadmap: Using the Workload Monitor...............................................................................................320
Analysis Roadmap: Using the Transaction Profile ..............................................................................................321
Analysis Roadmap: Using the Work Process Overview (1) ...............................................................................322
Analysis Roadmap: Using the Work Process Overview (2) ...............................................................................323
Analysis Roadmap: Using the Operating System Monitor (1)...........................................................................324
Analysis Roadmap: Using the Operating System Monitor (2)...........................................................................325
Analysis Roadmap: R/3 Memory Configuration..................................................................................................326
Analysis Roadmap: Using Table Call Statistics ...................................................................................................327
Section: Technical Optimization of ALE Processing...................................................................................................328
Technical Optimization of ALE Processing..............................................................................................................329
Goals.............................................................................................................................................................................330
Intent of ALE..............................................................................................................................................................331
Distributing Data ........................................................................................................................................................332
Business Scenario.......................................................................................................................................................333
Typical Scenario .........................................................................................................................................................334
Technical Background of ALE ....................................................................................................................................335
How ALE Works - Step 1.........................................................................................................................................336
How ALE Works - Step 2.........................................................................................................................................337
How ALE Works - Step 3.........................................................................................................................................338
Sender Details - Three Ways to an IDOC..............................................................................................................339
Sender Details - First Way to an IDOC..................................................................................................................340
Sender Details - Second Way to an IDOC............................................................................................................341
Sender Details - Third Way to an IDOC................................................................................................................342
Communication Methods..........................................................................................................................................343
TRFC Details 1 ...........................................................................................................................................................344
TRFC Details 2 ...........................................................................................................................................................345
TRFC Communication Error Handling..................................................................................................................346
Communication Details - Sender FTP....................................................................................................................347
Communication Details - Receiver FTP ................................................................................................................348
R/3 Communications to Ext. Programs ..................................................................................................................349
R/3 Communications.................................................................................................................................................350
Receiver Details - Unwrapping an IDOC ..............................................................................................................351
IDOC Processing Options.........................................................................................................................................352
Sender Details .............................................................................................................................................................353
IDOC Processing Options.........................................................................................................................................354
Update Details ............................................................................................................................................................356
Basic Functions used by ALE 1...............................................................................................................................357
ARFC: usage of RFC groups...................................................................................................................................358
ARFC: Resource determination...............................................................................................................................359
Basic Functions used by ALE 2...............................................................................................................................360
Structure of an IDOC.................................................................................................................................................361
Customizing ................................................................................................................................................................362
Batch Administration.................................................................................................................................................363
Administration............................................................................................................................................................364
Analysis Tools and Optimization Methods................................................................................................................365
IDOC Lists Overview................................................................................................................................................366
Time Distribution of IDOC Creation......................................................................................................................367
IDOC Trace.................................................................................................................................................................368
TRFC Monitor............................................................................................................................................................369
Monitoring Transactions...........................................................................................................................................370
Job List of ALE User on Sender Side.....................................................................................................................371
Dialog Work is Disturbed at Receiver....................................................................................................................372
Outbound Processing Options..................................................................................................................................373
Inbound Processing Options (1) ..............................................................................................................................374
Inbound Processing Options (2) ..............................................................................................................................375
RFC Customization....................................................................................................................................................376
The 10 Golden ALE Rules (1).................................................................................................................................377
The 10 Golden ALE Rules (2).................................................................................................................................378
The 10 Golden ALE Rules (3).................................................................................................................................379
Analysis Flow Chart.......................................................................................................................................................380
Possible Performance Problems ..............................................................................................................................381
Analysis and Tuning Flowchart (1).........................................................................................................................382
Application Data Does not Arrive (Subchart 1)....................................................................................................383
Application Data Does not Arrive (Subchart 1.1) ................................................................................................384
Application Data Does not Arrive (Subchart 1.2) ................................................................................................385
Application Data Arrive too Late (Subchart 2).....................................................................................................386
Application Data Arrive too Late (Subchart 2.1) .................................................................................................387
Application Data Arrive too Late (Subchart 2.2) .................................................................................................388
Application Data Arrive too Late (Subchart 2.3) .................................................................................................389
Application Data Arrive too Slow (Subchart 3)....................................................................................................390
Dialog Work is Disturbed (Subchart 4)..................................................................................................................391
Dialog Work is Disturbed at Sender (Subchart 4.1).............................................................................................392
Dialog Work is Disturbed at Receiver (Subchart 4.2).........................................................................................393
Exercises - Technical Optimization of ALE Processing..........................................................................................394
Solutions - Technical Optimization for ALE Processing........................................................................................396
© SAP AG 1999
Course Overview
© SAP AG 1999
Target Group
l Audience:
n future SAP R/3 Technical Consultants
n experienced System Administrators
n experienced Database Administrators
n with no or less R/3 knowledge
l Duration: 5 weeks
© SAP AG 1999
Course Prerequisites
l In-depth knowledge of the UNIX or NT operating system,
the ORACLE or MS SQL Server database and TCP/IP
network administration.
l Practical experience with these issues is essential for
passing the SAP R/3 Certified Technical Consultant exam.
© SAP AG 1999
Course Goals
l Course participants receive comprehensive expert level
training in R/3 System management
l The course prepares participants for the “SAP R/3 Certified
Technical Consultant” exam.
© SAP AG 1999
Course Composition
UNIX/ORACLE: TABCUO = TABC10 + TABC20 + TABC30
NT/ORACLE: TABCNO = TABC11 + TABC20 + TABC30
NT/MS SQL Server: TABCNS = TABC11 + TABC21 + TABC30
5 weeks = 3 weeks + 1 week + 1 week
© SAP AG 1999
TABCUO - Sections
TABC10
Section SAP Basis Technology
Section Technical Core Competence - UNIX
Section Software Logistics
Section R/3 Technical Implementation and Operation Management
Section Advanced R/3 System Administration
Section Ready-to-Run
Section Technical Core Competence - Workplace
TABC20
Section Database Administration ORACLE
Section SQL Cache Analysis - CBO - ORACLE
TABC30
Section Workload Analysis
Section Technical Optimization of ALE Processing
© SAP AG 1999
TABCNS - Sections
TABC11
Section SAP Basis Technology
Section Technical Core Competence - NT
Section Software Logistics
Section R/3 Technical Implementation and Operation Management
Section Advanced R/3 System Administration
Section Ready-to-Run
Section Technical Core Competence - Workplace
TABC21
Section Database Administration MS SQL Server
Section SQL Cache Analysis - CBO - MS SQL Server
TABC30
Section Workload Analysis
Section Technical Optimization of ALE Processing
© SAP AG 1999
TABCNO - Sections
TABC11
Section SAP Basis Technology
Section Technical Core Competence - NT
Section Software Logistics
Section R/3 Technical Implementation and Operation
Management
Section Advanced R/3 System Administration
Section Ready-to-Run
Section Technical Core Competence - Workplace
TABC20
Section Database Administration ORACLE
Section SQL Cache Analysis - CBO - ORACLE
TABC30
Section Workload Analysis
Section Technical Optimization of ALE Processing
© SAP AG 1999
Section: Workload Analysis
1. Introduction to
Workload Analysis
6. R/3 Table Buffering
2. Performance Analysis
Monitors
7. Interface Monitoring
3. R/3 Memory
Management
4. Hardware Capacity
Verification
5. Expensive SQL
Statements
© SAP AG 1999
Introduction to Workload Analysis
1. Introduction to
Workload Analysis
6. R/3 Table Buffering
2. Performance Analysis
Monitors
7. Interface Monitoring
3. R/3 Memory
Management
4. Hardware Capacity
Verification
5. Expensive SQL
Statements
© SAP AG 1999
Contents:
l Review of multi-tier R/3 architecture
l Workload analysis theory
Objectives:
At the end of this unit you will be able to:
l Outline multi-tier R/3 architecture
l Interpret the Workload Monitor
l Outline the tuning potential of an R/3 System
l Explain the standard methods for approaching
a performance problem
Introduction to Workload Analysis
© SAP AG 1999
Introduction: Performance Bottlenecks
System bottlenecks
l Hardware (CPU, RAM, I/O,
network)
l Configuration
(memory/buffer
configuration,
process configuration)
Long-running programs
l Unnecessary functionality
l Non-optimal implementation
n Technical implementation (e.g.
database indexes, table
buffering, ABAP coding)
n Logical implementation (non-
optimal use of SAP standard
functionality
Long-running
programs may cause
system bottlenecks
System bottlenecks may
cause long-running
programs
© SAP AG 1999
Basis Tuning
l Goal:
n Distribute the given workload
optimally to avoid performance
bottlenecks
l Responsible persons:
n Technical team leader
n System/database administrator
n Technical consultant
Application Tuning
l Goal:
n Avoid unnecessary workload
by optimised programs and
optimal usage of applications
l Responsible persons:
n ABAP developers
n Application consultant
n System/database administrator
n Technical consultant
Typical Tuning Measures
© SAP AG 1999
l Optimize system parameters (S)
n R/3 parameters (for example, for memory management)
n Database parameters (for example, for database buffer sizes)
n Operating system and network parameters
l Optimize database disk layout through I/O balancing (S)
l Optimization of workload distribution (S)
n Number of work processes, background scheduling, log-on groups
l Verify hardware sizing by detecting hardware bottlenecks (S)
____________________________________
: Covered in this course
S: Performed by the R/3 System administrator
R/3 Basis Tuning Tasks
© SAP AG 1999
l Find and apply SAP Notes from SAPNet (D,S)
n Bug fixes, corrections, patches, hints
l Optimize the SAP Customizing (D)
n For example, in SD and PP
l Optimize ABAP-coding of customer’s modifications (D)
n For example, Z reports, user exits
l Create, change or drop indexes (D,S)
l Design table buffering (D,S)
___________________________________
S: R/3 System administrator
D: R/3 developer, R/3 application consultant
R/3 Application Tuning Tasks
© SAP AG 1999
LAN / WAN
Presentation
Application
Database
Create
Production
Orders
Release
Production
Orders
Schedule
Production
Accept
Customer
Order
Confirm
Delivery
Build
Products
Explode
Bill-of-
Material
Reserve
Material
Customer
Service
Rep
Plant
Personnel
Production
Order
Customer
Order
Part Material Task
Internet
LAN
LAN / WAN
Multi-Tier Client/ Server Architecture
n The diagram shows a common way of setting up the hardware components for a multi-tier system
architecture.
n One larger machine contains the database as well as the central application server that is mainly used
for administration and monitoring work.
n A number of application servers, each on its own machine, allow the connection of users and form
the application layer.
n The internet layer translates SAP screens to HTML readable format. It consists of SAP Internet
Transaction Servers and Web Servers (such as the Microsoft Internet Information Server or Netscape
Enterprise Server).
n The presentation layer consists of the SAP GUIs or Web browsers that run on user PCs.
© SAP AG 1999
Database
Layer
Network
Application
Layer
Presentation
Layer
Network
Wait queue
(memory)
. . .
Work process
Dispatcher
Wait time
Presentation server
Dialog Step: Wait Time
n This and the following slides describe the sequence of actions that contribute to total response time
in multi-tier architecture.
n To complete the logon process, the presentation server connects with a dispatcher.
n When the user tries to run a transaction, the user's request comes from the presentation server to the
dispatcher and is put into the local wait queue.
n When the dispatcher recognizes that a work process is available, the user's request is taken from the
wait queue and sent to the work process.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Dispatcher
Roll buffer
Roll fileRoll file
Roll memory
. . .
Work process
ExtendedExtended
memorymemory
Roll-in time
Dialog Step: Roll-in time
n When a user is dispatched to a work process, "user context" data – the user's logon attributes,
authorizations, and other relevant information – is transferred from the roll buffer, extended memory,
or the roll file into the work process. This transfer (by copying or mapping, as appropriate) of user
context data into work process memory is the mechanism known as a "roll in".
n Transaction processing then begins.
© SAP AG 1999
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Roll buffer
Roll fileRoll file
Roll memory
Dispatcher
ExtendedExtended
memorymemory
Database
Layer
Database
buffers
. . .
Work process
Database
process
Database
interface
Database time
Dialog Step: Database Time
n If data from the database is required to support transaction processing, a request for data is sent to the
database interface, which in turn sends a request through the network to retrieve the information
from the database.
n When it receives the request, the database searches its shared memory buffers. If the data is found, it
is sent back to the work process. If the data is not found, it is loaded from the disk into the shared
memory buffers.
n After being located, the data is taken from the shared memory buffers and sent back across the
network to the requesting database interface. Transaction processing resumes.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Database
buffers
Roll buffer
Roll fileRoll file
Dispatcher
Database
process
Extended memoryExtended memory
Database
interface
Roll memory
. . .
Work process
R/3 shared pool buffers
Dialog Step: Access to SAP Buffers
n Before accessing the database service, the database interface searches for the data in the R/3 buffers.
If the data is found, it is relayed back to the work process where processing resumes. If the data is
not found, the database interface sends a request over the network to retrieve the information from
the database (as described on the last slide).
n If the data loaded from the database is eligible for R/3 buffering, it is placed in the R/3 buffers.
Transaction processing resumes.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Database
buffers
Roll buffer
Roll fileRoll file
Database
interface
Roll memory
. . .
Work process
Dispatcher
SAP shared pool buffers
Database
process
ExtendedExtended
memorymemory
Response time
Dialog Step: Response time
n When transaction processing is completed, the dispatcher is notified of its completion. The results of
the transaction are then sent back to the presentation server.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Database
buffers
Dispatcher
SAP shared pool buffers
Database
process
Roll buffer
Roll fileRoll file
Database
interface
Roll memory
. . .
Work process
ExtendedExtended
memorymemory
Roll out time
Dialog Step: Roll out time
n After the transaction finishes and the work process is no longer required, the user context data is
rolled out of the work process.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Database
buffers
Roll buffer
Roll fileRoll file
Database
interface
Roll memory
. . .
Work process
Dispatcher
SAP shared pool buffers
Database
process
ExtendedExtended
memorymemory
Response time
Database request time
Roll-in time
Wait time
Summary: Response Time Components
n This slide summarizes the previous slides describing the sequence of actions that contribute to total
response time in multi-tier architecture.
© SAP AG 1999
Database
Layer
Network
Network
Application
Layer
Presentation
Layer
Wait queue
(memory)
Database
buffers
Roll buffer
Roll fileRoll file
Database
interface
Roll memory
ABAP processing
. . .
Work process
Dispatcher
SAP shared pool buffers
Database
process
Extended memoryExtended memory
CPU time
CPU Time
n CPU time is the amount of time during which a particular work process has active control of the
central processing unit (CPU).
© SAP AG 1999
CPU time
Presentation
Server
Roll
in
Load
time
Processing timeWait
time
Database time
Response time
Application Server Database Server
NetworkNetwork
NetworkNetwork
Workload Statistics (1)
n Workload time statistics include:
Ÿ Response time in milliseconds: Starts when a user request enters the dispatcher queue; ends when
the next screen is returned to the user. The response time does not include the time to transfer from
the screen to the front end.
Ÿ Wait time in milliseconds: This is the time a user request sits in the dispatcher queue. It starts
when user request is entered in the dispatcher queue; and ends when the request starts being
processed.
Ÿ Roll-in time in milliseconds: The amount of time needed to roll user context information into the
work process.
Ÿ Load time in milliseconds: The time needed to load from the database and generate objects like
ABAP source code, CUA, and screen information.
Ÿ Processing time : This is equivalent to response time minus the sum of wait time, database request
time, load time, roll time, and enqueue time.
Ÿ Database request time : Starts when a database request is put through to the database interface;
ends when the database interface has delivered the result.
Ÿ CPU time in milliseconds: This is the CPU time used by the R/3 work process
n Roll-wait time and GUI time are covered in the unit Interface Monitoring.
© SAP AG 1999
Workload Statistics (2)
SAP Transaction ST03N,
the Workload Monitor,
summarizes statistics
n To access the Workload Monitor, use Transaction code ST03N. or, from the R/3 initial screen,
choose Tools → Administration → Monitor → Performance → Workload → Analysis. Choose
Performance database and make the selections required by the dialog boxes. The Performance:
Workload Overview for Server is displayed.
n In the “Administrator’s Mode” that is chosen by default the time frame of the workload analysis is
the current day.
n Important for this training:
Ÿ Change to “Expert Mode”. Choose under “Detailed Analysis” -> “Last minutes load”
Ÿ During a workload exercise, restrict the time period to the time when the exercise is running.
n Under Analysis views, you can access, for example:
Ÿ Workload overview - Workload statistics according to work process type
Ÿ Transaction Profile - Workload statistics according to transaction.
Ÿ Time Profile - Workload statistics according to hour
n See also the R/3 Knowledge Product CD, System Monitoring.
n Note: Roll wait time and GUI time are explained in section 7, Interface Monitoring.
© SAP AG 1999
AllAll
transactionstransactions
affected?affected?
Program
analysis
No
Yes
(Cont.)
Performance
problem?
Check:
WorkloadWorkload
on all serverson all servers
Problem symptoms:
Large load timeLarge load time
Processing timeProcessing time
much larger thanmuch larger than
CPU timeCPU time
Large databaseLarge database
request timesrequest times
(Average)Large CPU timesLarge CPU times
Large roll-wait timeLarge roll-wait time
Initial Analysis Roadmap (1)
n If a problem is detected, the data in the Workload Monitor (Transaction ST03N) can be used as
follows to identify the area of the system where the problem is located.
n First check for general performance problems affecting all transactions. Good general performance
is normally indicated by:
Ÿ Wait time < 10% response time
Ÿ Main menu (choose Transaction Profile) < 100 ms
n In the Workload Monitor, the following values normally indicate good performance:
Ÿ Average roll-in time < 20 ms
Ÿ Average roll wait time < 200 ms
Ÿ Average load (and generation) time < 10 % of response time (<50 ms)
Ÿ Average database request time < 40 % of (response time - wait time)
Ÿ Average CPU time < 40 % of (response time - wait time)
Ÿ Average CPU time Not much less than processing time
Ÿ Average response time - Depends on customer requirements – there is no general rule
© SAP AG 1999
Program buffer, CUA buffer, or screen buffer too smallLarge load timeLarge load time
CPU bottlenecks, network problems,
communication problems
Processing timeProcessing time
much larger thanmuch larger than
CPU timeCPU time
CPU/memory bottleneck on database server, network
problems, expensive SQL statements, database locks,
missing indexes, missing statistics, small buffers
Large databaseLarge database
request timesrequest times
(Average)Large CPU timesLarge CPU times Expensive ABAP processing, for example, processing
large tables, frequent accessing of R/3 buffers
Communication problem with GUI
or external system
Large roll-wait timeLarge roll-wait time
Initial Analysis Roadmap (2)
n These are some of the more common problems indicated by Workload Monitor statistics.
© SAP AG 1999
Analysis Roadmap: Using the Workload Monitor
R/3 Workload Monitor (ST03N)
High database time: database time > 40% (response time - wait time)
Detailed analysis of the database
Processing time > CPU time x 2
Detailed analysis of hardware bottlenecks
? Wait time > 10% of response time
General performance problem
Load time > 50 ms
Detailed analysis of R/3 memory configuration (is the program buffer
too small?)
Roll-wait time or GUI time > 200 ms
Detailed analysis of interfaces and GUI communication
Transaction Profile (Transaction ST03) sorted by “Response time total”
Programs with high CPU time: CPU time > 40% (response time - wait time)
!
?
?
?
?
?
n For more detail on analyzing:
Ÿ The database, see the unit Expensive SQL statements
Ÿ R/3 memory configuration, see the unit R/3 Memory Management
Ÿ Hardware bottlenecks, see the unit Hardware Capacity Verification
Ÿ Interfaces and GUI problems, see the unit Interface Monitoring
© SAP AG 1999
Database
Monitor
Setups
Buffers
Operating System
Monitor
Work Process
Overview
Workload Monitor
… Details in the following units
Transaction
ST04
Transaction
ST02
Transaction
ST06
Transaction
SM50 / SM66
Transaction
ST03 or
ST03N
Performance Monitors for the R/3 Basis
n To begin a workload analysis, use the Workload Monitor (Transaction ST03 or ST03N).
n If you find statistics that indicate a performance problem, use the other monitoring tools to
obtain further data on the problem.
© SAP AG 1999
Transaction Profile
n In the Workload Monitor, choosing Transaction Profile enables you to find out:
Ÿ The most-used transactions. Tuning these transactions creates the greatest improvements in overall
performance.
Ÿ The average response times for typical R/3 transactions.
© SAP AG 1999
Statistical Records
n To access the statistics records for a specific server:
Ÿ As of R/3 Release 4.5, use transaction STAD
Ÿ Prior to R/3 Release 4.5, use transaction STAT or, from the R/3 initial screen, choose Tools
→ Administration → Monitor → Performance → Workload → Statistics Records.
© SAP AG 1999
Analysis Roadmap: Using the Transaction Profile
R/3 Workload Monitor (transaction ST03N)
? Programs with high CPU time: CPU time > 40% (response time - wait time)
...
Transaction Profile (Transaction ST03N) sorted by “Response time total”
Programs with high database time (databases time > 40% (response time - wait time)
Detailed analysis with ABAP-Trace
Detailed analysis of SQL statements
?
? Problems with high GUI times (> 200 ms)
Network check
n To analyze transactions with a large CPU time, use an ABAP trace.
n To analyze transactions with a high database time, use an SQL trace.
n To analyze transactions with a high GUI time, use a network check.
© SAP AG 1999
Statistical
records
SQL trace Application
Monitors
ABAP trace
Workload Monitor
Transaction
ST03N
… Details in the following units
Transactions
ST07 / ST14
Transaction
SE30
Transaction
ST05
Transaction
STAT / STAD
Performance Monitors for R/3 Applications
n Transactions ST07, ST14, and SE30 are not covered in this course.
© SAP AG 1999
4.5B 4.6B4.0B 5.0
STAD
First
availability
Full
functionality
4.6C/D
STAT
General
availability
Last functional
enlargement
Planned last
availability
General
availability ST03
ST03N
First
availability
Planned full
functionality
Availability of the New Workload Transactions
© SAP AG 1999
Workload Statistics (until 4.6B)
SAP Transaction ST03,
the Workload Monitor,
summarizes statistics
n To access the Workload Monitor, use Transaction ST03 or, from the R/3 initial screen, choose
Tools → Administration → Monitor → Performance → Workload → Analysis. Choose Performance
database and make the selections required by the dialog boxes. The Performance: Workload
Overview for Server is displayed.
n To display the 40 slowest dialog steps by response time, choose Top time.
n Under Goto → Profiles, you can access, for example:
Ÿ Task Type Profile - Workload statistics according to work process type
Ÿ Time Profile - Workload statistics according to hour
Ÿ Transaction Profile - Workload statistics according to transaction.
n The proportion of database calls to database requests gives an indication of the efficiency of table
buffering. If access to information in a table is buffered in the R/3 pool buffers, then database calls to
the database server are not needed and performance is better. Thus, the fewer database calls result in
database requests, the better.
n See also the R/3 Knowledge Product CD, System Monitoring.
n Note: Roll wait time and GUI time are explained in section 7, „Interfaces“
© SAP AG 1999
Transaction Profile (until 4.6B)
n In the Workload Monitor, choosing Transaction Profile enables you to find out:
Ÿ Which transactions are used most? Tuning these transactions creates the greatest improvements in
overall performance.
Ÿ What are the average response times for typical R/3 transactions?
© SAP AG 1999
Summary of this Unit
Now you are able to:
l Outline multi-tier R/3 architecture
l Interpret the Workload Monitor
l Outline the tuning potential of an R/3 System
l Explain the standard methods for approaching
a performance problem
© SAP AG 1999
1. Introduction to
Workload Analysis
6. R/3 Table Buffering
2. Performance Analysis
Monitors
7. Interface Monitoring
3. R/3 Memory
Management
4. Hardware Capacity
Verification
5. Expensive SQL
Statements
Performance Analysis Monitors
© SAP AG 1999
Contents:
l Monitors: Work Process Overview, Operating System Monitor,
Setups/Tune Buffers
l Getting Started Exercise
l Workload Analysis Exercise
Objectives:
At the end of this unit you will be able to:
l Use the performance monitors
l Analyze the performance of an R/3 System
l Find performance bottlenecks
Performance Analysis Monitors
© SAP AG 1999
Setups/
Buffers
Database
Monitor
Operating System
Monitor
Work Process
Overview
Workload Monitor
Transaction
ST04
Transaction
ST02
Transaction
ST06
Transaction
SM50 / SM66
Transaction
ST03N
Performance Monitors for the R/3 Basis
n To begin a workload analysis, use the Workload Monitor (transaction ST03).
n If you find statistics that indicate a performance problem, use the other monitoring tools to
obtain further data on the problem.
n The Database Monitor (transaction ST04) will be discussed in the unit Expensive SQL statements.
© SAP AG 1999
Work Process Overview
n To display a snapshot of the current activities on the instance you are logged on to, use the Work
Process Monitor. Call transaction SM50, or, from the R/3 initial screen, choose Tools
→ Administration → Monitor → System monitoring → Process overview.
n The information displayed includes:
- Type of work process
- Name of the ABAP program running
- Operating system PID number
- Client being used
- Name of the job executing
- Current action
- Number of detected errors in the work process
- Table being utilized
- Semaphore resource being used
- CPU accumulation
- Time in process accumulation
- User holding the resource
n If all work processes are being blocked by long running transactions, the above information is also
available on operating system level by using program dpmon.
n In an R/3 System with more than one instance, you can access a global work process overview using
transaction SM66.
© SAP AG 1999
Analysis Roadmap: Using the Work Process
Overview
Work Process Overview (transaction SM50 / SM66)
Work processes in status “running”?
Action: “Dir. Read”, “Seq. Read”, “Insert”, “Update”, “Delete”, “Commit”
Detailed analysis of the database
Action: “Load program”?
Action: “Roll In” / “Roll Out”?
Detailed analysis of R/3 memory configuration (problems with extended
memory or roll buffer)
Work processes in status “stopped”?
Reason: “PRIV”?
Detailed analysis of R/3 memory configuration (problems with extended
memory or roll buffer)
Reason: “CPIC”?
Problems with CPIC connections such as "All work processes blocked in
destination system"?
Detailed analysis of R/3 memory configuration (program buffer too small?)
?
?
?
?
?
?
?
?
n The diagram shows the procedures for analyzing the current workload using the Work Process
Overview (transaction SM50).
n For more detail on analyzing:
Ÿ The database, see the unit Expensive SQL statements
Ÿ R/3 memory configuration, see the unit R/3 Memory Management
© SAP AG 1999
Operating System Monitor
n To call the Operating System Monitor, use transaction ST06, or, from the R/3 initial screen, choose
Tools → Administration → Monitor → Performance → Operating System → Local [or Remote]
→ Activity.
n Important statistics displayed in the Operating System Monitor include:
Ÿ CPU load average and % CPU utilization
Ÿ Operating system swapping and % memory utilization
Ÿ % disk utilization
Ÿ Operating system configuration parameters
n CPU bottlenecks are indicated during several snapshots by:
Ÿ Idle CPU < 10 %
Ÿ Load Average: N processes waiting in front of the CPU
n Note: you must refresh your screen several times, as each display is a momentary snapshot.
n Memory bottlenecks are indicated during several snapshots by:
Ÿ An increase in page outs for UNIX or page ins for NT.
Ÿ This topic is covered in more depth in unit Hardware Capacity Verification.
© SAP AG 1999
OS Monitor: TOP CPU Processes
n "Disp+work" signifies an R/3 work process.
n "ORACLE80" signifies a database process.
n "DOC_SNYDER" is an external processes which does not belong to an R/3 instance or to the
database. External processes may affect performance critically.
n On detecting hardware bottlenecks, see the unit Hardware Capacity Verification.
© SAP AG 1999
Setups / Tune Buffers Monitor (1)
n For the instance on which the user is logged on, the Setups / Tune Buffers monitor shows the
percentage usage of buffers and memory. To access the monitor, use transaction ST02 or, from the
R/3 initial screen, choose Tools → Administration → Monitor → Performance → Setup/buffers
→ Buffers.
n The Setups / Tune Buffers monitor displays data on:
Ÿ Buffer sizes
Ÿ Buffer qualities (hit ratios)
n Bottlenecks may be indicated if buffer swaps occur.
n Choose Detail analysis menu to display other data, such as :
Ÿ Memory usage
Ÿ Semaphores usage
Ÿ Table calls
© SAP AG 1999
Setups / Tune Buffers Monitor (2)
n Max. use (in KB) should be less than In memory (in KB).
n The lower part of the Setups / Tune Buffers monitor displays data on:
Ÿ Extended memory size and usage
Ÿ Usage and configuration of the roll mechanism
n Bottlenecks may be indicated if:
Ÿ For extended memory: Max use. = In memory
Ÿ For roll area: Max use. > In memory
n For a detailed analysis of R/3 memory management, see unit R/3 Memory Management.
© SAP AG 1999
Objectives:
In this exercise you will learn how to:
l Use the R/3 performance monitors
Activities:
l Log on to the training system
l Determine:
n CPU load
n Size of allocated memory and available physical memory
n Which transactions were executed in which R/3 modules
n Response times for these transactions
n Whether there are buffer swaps and
operating system paging
Getting Started Exercise
To perform the Getting Started exercise, enter the required data:
CPU Load ........................
Allocated Memory ........................MB
Physical Memory ........................MB
Top 5 transactions ................., .................., .................., .................., ..................
- Related R/3 modules ................., .................., .................., .................., ..................
- Related response times................., .................., .................., .................., ..................
Buffer Swaps:
Buffer: .............................. Amount: .............................
Buffer: .............................. Amount: .............................
Buffer: .............................. Amount: .............................
Buffer: .............................. Amount: .............................
Buffer: .............................. Amount: .............................
Operating system paging: Yes/No Amount .............................KB/s
© SAP AG 1999
Objectives:
In this exercise you will learn how to:
l Analyze a workload problem related to the program buffer
l Distinguish an optimal system configuration from a poor system
configuration with respect to its effect on the program buffer
Activities:
After your trainer starts the workload simulation:
l Log on to the training system
l Use the workload monitors to identify the problem
l Make recommendations
Workload Analysis Exercise
© SAP AG 1999
Work Process Overview
n To access the Work Process Overview, use transaction SM50.
© SAP AG 1999
Workload Monitor
n To access the Workload Monitor, use transaction ST03 and choose Performance database. Make the
selections required by the dialog boxes. The screen Performance: Workload Overview for Server is
displayed.
© SAP AG 1999
Setups / Tune Buffers Monitor
n To access the Setups / Tune Buffers monitor, use transaction ST02.
© SAP AG 1999
Work
Process
Work
Process
Work
Process
Work
Process
Memory
Code Code
Program buffer
PERFORM Costing.
ENDIF.
SELECT * FROM
MARA
PERFORM Costing.
ENDIF.
SELECT * FROM
MARA
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT
. . .. . .
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT
DATA: A TYPE I,
B TYPE I.
PERFORM DOIT
USING A B.
. . .. . .
REPORT RFBIBL00.
PARAMETERS: A.
SUBMIT RFBIBL01
Change cost center
?? é
éé é
3333
Cost center
Profitfrom
Change cost center
?? é
éé é
3333
Cost center
Profit from
Change cost center
?? é
é é é
3333
Cost center
Profit from
Change cost center
?? é
éé é
3333
Cost center
Profit from
Change cost center
?? é
éé é
3333
Cost center
Profit from
Change cost center
?? é
éé é
3333
Cost center
Profit from
PresentationPresentationApplicationserverApplicationserverDatabaseDatabase
Poor Configuration Example
n The program buffer is set to 110 MB (the SAP instance profile parameter Buffersize is set to
110,000), and the simulation of 10 users for each of MM, SD and PP is started.
© SAP AG 1999
PresentationPresentationApplicationserverApplicationserver
Work
process
Work
process
Work
process
Work
process
Memory
Code
Program buffer
DatabaseDatabase
Code CodeCode
. . .. . .
PERFORM Costing.
ENDIF.
SELECT * FROM
MARA . . .. . .
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT . . .. . .
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT
. . .. . .
PERFORM Costing.
ENDIF.
SELECT * FROM
MARA . . .. . .
SELECT * FROM.
VBAK.
CALL FUNCTION
ENDSELECT. . .. . .
DATA: A TYPE I,
B TYPE I.
PERFORM DOIT
USING A B. . . .. . .
REPORT RFBIBL00.
PARAMETERS: A.
SUBMIT RFBIBL01
Change cost center
??
é
éé é
3333
Cost center
Profit from
Change cost center
??
é
éé é
3333
Cost center
Profit from
Change cost center
??
é
éé é
3333
Cost center
Profitfrom
Change cost center
??
é
éé é
3333
Cost center
Profit from
Change cost center
??
é
é é é
3333
Cost center
Profit from
Change cost center
??
é
é é é
3333
Cost center
Profit from
Optimal Configuration
n The program buffer is set to 400 MB (the SAP instance profile parameter Buffersize is set to
400,000), and the simulation started. The program buffer is now big enough to hold all necessary
code.
© SAP AG 1999
Workload Monitor
© SAP AG 1999
Setup / Tune Buffers Monitor
© SAP AG 1999
Buffer size is too small:
Programs are swapped out, and the reloads cause high load and long DB request times
è Solution: Increase buffer size
Frequently changed programs:
Programs are changed frequently and have to be reloaded, causing buffer swaps
è Solution: Avoid frequent transporting and development in the production system
Reasons for Program Buffer Swaps
© SAP AG 1999
Now you are able to:
l Use the performance monitors
l Analyze the performance of an R/3 System
l Find performance bottlenecks
Summary of this Unit
© SAP AG 1999
1. Introduction to
Workload Analysis
6. R/3 Table Buffering
2. Performance Analysis
Monitors
7. Interface Monitoring
3. R/3 Memory
Management
4. Hardware Capacity
Verification
5. Expensive SQL
Statements
R/3 Memory Management
© SAP AG 1999
R/3 Memory Management
Contents:
l R/3 memory areas
l R/3 memory allocation
n Concepts
n Allocation sequence for dialog work processes
n Allocation sequence for non-dialog work processes
n Freeing heap memory
l Demonstration: testing memory limits
l Workload analysis exercise
l Implementing R/3 extended memory
n R/3 memory areas introduces the various R/3 memory areas, which may be physically located in one
or more of the following:
Ÿ Local memory
Ÿ Shared memory
Ÿ File system
n R/3 memory allocation explains what the different memory areas are used for.
n After the demonstration and exercise, the topic Implementing R/3 extended memory compares
memory management for different hardware platforms:
Ÿ UNIX versus Windows NT
Ÿ 32 bit versus 64 bit architecture
n This unit does not explain how large you should make the various memory areas. This is explained
in the following unit, Hardware Capacity Verification.
© SAP AG 1999
Objectives:
At the end of this unit you will be able to:
l Outline the types of memory in R/3 memory
management
l Explain how these types of memory work together
l Use R/3 memory management monitors
l Configure parameters as part of R/3 memory
management
R/3 Memory Management
© SAP AG 1999
First Topic in Unit
l R/3 memory areas
l R/3 memory allocation
n Concepts
n Allocation sequence for dialog work processes
n Allocation sequence for non-dialog work processes
n Freeing heap memory
l Implementing R/3 extended memory
è
© SAP AG 1999
R/3 Memory
Roll memory
Extended
R/3 buffers
WP
WP
R/3 Memory Areas
Users need two
kinds of memory:
n R/3 buffers
Memory accessible to all users, for:
w Programs
w Table and field definitions
w Customizing tables
n User context
Memory attached to individual users, for:
w Variables, lists, internal tables
w Administrative data (such as authorizations)
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5
Basis week5

Más contenido relacionado

Similar a Basis week5

Pension Management
Pension ManagementPension Management
Pension Managementguest61450b4
 
Sap sd pricing
Sap sd pricingSap sd pricing
Sap sd pricingGhassen B
 
SAP AC020 - Investment Management
SAP AC020 - Investment ManagementSAP AC020 - Investment Management
SAP AC020 - Investment ManagementVannak9
 
Accessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionAccessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionadatta12
 
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...Vijeth Karthik
 
Funds management configuration sap ag
Funds management configuration sap agFunds management configuration sap ag
Funds management configuration sap agLluckyy
 
Capture Accurate Solution Requirements with Exploratory Modeling at SAP
Capture Accurate Solution Requirements with Exploratory Modeling at SAPCapture Accurate Solution Requirements with Exploratory Modeling at SAP
Capture Accurate Solution Requirements with Exploratory Modeling at SAPESUG
 
142 bb config_guide_en_co
142 bb config_guide_en_co142 bb config_guide_en_co
142 bb config_guide_en_coSachin Kamat
 
Sap gui administration_guide
Sap gui administration_guideSap gui administration_guide
Sap gui administration_guideVivek Srivastava
 

Similar a Basis week5 (20)

Pension Management
Pension ManagementPension Management
Pension Management
 
Caarcpm
CaarcpmCaarcpm
Caarcpm
 
Sap sd pricing
Sap sd pricingSap sd pricing
Sap sd pricing
 
46 b printing
46 b printing46 b printing
46 b printing
 
Pacmp
PacmpPacmp
Pacmp
 
PLM 200.pdf
PLM 200.pdfPLM 200.pdf
PLM 200.pdf
 
SAP CS Material.pdf
SAP CS Material.pdfSAP CS Material.pdf
SAP CS Material.pdf
 
SAP AC020 - Investment Management
SAP AC020 - Investment ManagementSAP AC020 - Investment Management
SAP AC020 - Investment Management
 
Accessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_versionAccessibility guideline web_dynpro_external_version
Accessibility guideline web_dynpro_external_version
 
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...
SAP- HCM mini project report on - Design Enterprise Structure in Personnel Ad...
 
Sap tree and tree model (bc ci)
Sap tree and tree model (bc ci)Sap tree and tree model (bc ci)
Sap tree and tree model (bc ci)
 
sap
sapsap
sap
 
Basic sap2
Basic sap2Basic sap2
Basic sap2
 
Funds management configuration sap ag
Funds management configuration sap agFunds management configuration sap ag
Funds management configuration sap ag
 
Capture Accurate Solution Requirements with Exploratory Modeling at SAP
Capture Accurate Solution Requirements with Exploratory Modeling at SAPCapture Accurate Solution Requirements with Exploratory Modeling at SAP
Capture Accurate Solution Requirements with Exploratory Modeling at SAP
 
CAARCSD
CAARCSDCAARCSD
CAARCSD
 
Sr pm
Sr pmSr pm
Sr pm
 
sap pp
sap ppsap pp
sap pp
 
142 bb config_guide_en_co
142 bb config_guide_en_co142 bb config_guide_en_co
142 bb config_guide_en_co
 
Sap gui administration_guide
Sap gui administration_guideSap gui administration_guide
Sap gui administration_guide
 

Más de nanda nanda

Sap basis r3 hand book
Sap basis r3 hand bookSap basis r3 hand book
Sap basis r3 hand booknanda nanda
 
Sap basis-notes-keylabs-training
Sap basis-notes-keylabs-trainingSap basis-notes-keylabs-training
Sap basis-notes-keylabs-trainingnanda nanda
 
programming errors
programming errorsprogramming errors
programming errorsnanda nanda
 
How to check port in sap
How to check port in sapHow to check port in sap
How to check port in sapnanda nanda
 
What is ticketing tool in sap
What is ticketing tool in sapWhat is ticketing tool in sap
What is ticketing tool in sapnanda nanda
 
St22 abap programming
St22 abap programming St22 abap programming
St22 abap programming nanda nanda
 
What is sap client
What is sap clientWhat is sap client
What is sap clientnanda nanda
 
Group06ctsfinal 110518191859-phpapp01
Group06ctsfinal 110518191859-phpapp01Group06ctsfinal 110518191859-phpapp01
Group06ctsfinal 110518191859-phpapp01nanda nanda
 
Step by-step-guide-on-how-to-create-an-sap-oss-notes
Step by-step-guide-on-how-to-create-an-sap-oss-notesStep by-step-guide-on-how-to-create-an-sap-oss-notes
Step by-step-guide-on-how-to-create-an-sap-oss-notesnanda nanda
 
1388060514383 sbi technical_officers_interview_schedule
1388060514383 sbi technical_officers_interview_schedule1388060514383 sbi technical_officers_interview_schedule
1388060514383 sbi technical_officers_interview_schedulenanda nanda
 
Complete Sap Basis
Complete Sap Basis Complete Sap Basis
Complete Sap Basis nanda nanda
 
Sap security-administration
Sap security-administrationSap security-administration
Sap security-administrationnanda nanda
 

Más de nanda nanda (14)

Sap basis r3 hand book
Sap basis r3 hand bookSap basis r3 hand book
Sap basis r3 hand book
 
Sap basis-notes-keylabs-training
Sap basis-notes-keylabs-trainingSap basis-notes-keylabs-training
Sap basis-notes-keylabs-training
 
programming errors
programming errorsprogramming errors
programming errors
 
How to check port in sap
How to check port in sapHow to check port in sap
How to check port in sap
 
What is ticketing tool in sap
What is ticketing tool in sapWhat is ticketing tool in sap
What is ticketing tool in sap
 
St22 abap programming
St22 abap programming St22 abap programming
St22 abap programming
 
What is sap client
What is sap clientWhat is sap client
What is sap client
 
Group06ctsfinal 110518191859-phpapp01
Group06ctsfinal 110518191859-phpapp01Group06ctsfinal 110518191859-phpapp01
Group06ctsfinal 110518191859-phpapp01
 
52845
5284552845
52845
 
Step by-step-guide-on-how-to-create-an-sap-oss-notes
Step by-step-guide-on-how-to-create-an-sap-oss-notesStep by-step-guide-on-how-to-create-an-sap-oss-notes
Step by-step-guide-on-how-to-create-an-sap-oss-notes
 
1388060514383 sbi technical_officers_interview_schedule
1388060514383 sbi technical_officers_interview_schedule1388060514383 sbi technical_officers_interview_schedule
1388060514383 sbi technical_officers_interview_schedule
 
Complete Sap Basis
Complete Sap Basis Complete Sap Basis
Complete Sap Basis
 
Siva1241
Siva1241Siva1241
Siva1241
 
Sap security-administration
Sap security-administrationSap security-administration
Sap security-administration
 

Último

Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxShobhayan Kirtania
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 

Último (20)

Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 

Basis week5

  • 1. © SAP AG 1999 TABC30 Technical Consultant Training Week 5: Performance Analysis & Tuning Technical Consultant Training: Performance Analysis & Tuning Technical Consultant Training: Performance Analysis & Tuning TABC30R/3 Release 4.6C 50039594 TABC30R/3 Release 4.6C 50039594 Week 5Week 5 Oct-19-2000
  • 2. © SAP AG 1999 Copyright 2000 SAP AG. All rights reserved. Neither this training manual nor any part thereof may be copied or reproduced in any form or by any means, or translated into another language, without the prior consent of SAP AG. The information contained in this document is subject to change and supplement without prior notice. All rights reserved. Copyright n Trademarks: n Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. n Microsoft®, WINDOWS®, NT®, EXCEL®, Word® and SQL Server® are registered trademarks of Microsoft Corporation. n IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®, OS/390®, and OS/400® are registered trademarks of IBM Corporation. n ORACLE® is a registered trademark of ORACLE Corporation, California, USA. n INFORMIX®-OnLine for SAP and Informix® Dynamic ServerTM are registered trademarks of Informix Software Incorporated. n UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of The Open Group. n HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Laboratory for Computer Science NE43-358, Massachusetts Institute of Technology, 545 Technology Square, Cambridge, MA 02139. n JAVA® is a registered trademark of Sun Microsystems, Inc. , 901 San Antonio Road, Palo Alto, CA 94303 USA. n JAVASCRIPT® is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. n SAP, SAP Logo, mySAP.com, mySAP.com Marketplace, mySAP.com Workplace, mySAP.com Business Scenarios, mySAP.com Application Hosting, WebFlow, R/2, R/3, RIVA, ABAP™, SAP Business Workflow, SAP EarlyWatch, SAP ArchiveLink, BAPI, SAPPHIRE, Management Cockpit, SEM, are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other products mentioned are trademarks or registered trademarks of their respective companies. n Design: SAP Communications Media
  • 3. Contents Course Overview......................................................................................................................................................................1 Target Group ........................................................................................................................................................................2 Course Prerequisites............................................................................................................................................................3 Course Goals ........................................................................................................................................................................4 Course Composition............................................................................................................................................................5 TABCUO - Sections...........................................................................................................................................................6 TABCNS - Sections............................................................................................................................................................7 TABCNO - Sections...........................................................................................................................................................8 Section: Workload Analysis ...................................................................................................................................................9 Introduction to Workload Analysis ................................................................................................................................10 Introduction to Workload Analysis ............................................................................................................................11 Introduction: Performance Bottlenecks .....................................................................................................................12 Typical Tuning Measures ............................................................................................................................................13 R/3 Basis Tuning Tasks ...............................................................................................................................................14 R/3 Application Tuning Tasks ....................................................................................................................................15 Multi-Tier Client/ Server Architecture ......................................................................................................................16 Dialog Step: Wait Time ...............................................................................................................................................17 Dialog Step: Roll-in time .............................................................................................................................................18 Dialog Step: Database Time ........................................................................................................................................19 Dialog Step: Access to SAP Buffers..........................................................................................................................20 Dialog Step: Response time ........................................................................................................................................21 Dialog Step: Roll out time ...........................................................................................................................................22 Summary: Response Time Components ...................................................................................................................23 CPU Time .......................................................................................................................................................................24 Workload Statistics (1).................................................................................................................................................25 Workload Statistics (2).................................................................................................................................................26 Initial Analysis Roadmap (1) ......................................................................................................................................27 Initial Analysis Roadmap (2) ......................................................................................................................................28 Analysis Roadmap: Using the Workload Monitor..................................................................................................29 Performance Monitors for the R/3 Basis ...................................................................................................................30 Transaction Profile ........................................................................................................................................................31 Statistical Records.........................................................................................................................................................32 Analysis Roadmap: Using the Transaction Profile .................................................................................................33 Performance Monitors for R/3 Applications............................................................................................................34 Availability of the New Workload Transactions.....................................................................................................35 Workload Statistics (until 4.6B) .................................................................................................................................36 Transaction Profile (until 4.6B) ..................................................................................................................................37 Summary of this Unit ...................................................................................................................................................38 Performance Analysis Monitors......................................................................................................................................39 Performance Analysis Monitors .................................................................................................................................40 Performance Monitors for the R/3 Basis ...................................................................................................................41 Work Process Overview...............................................................................................................................................42 Analysis Roadmap: Using the Work Process Overview ........................................................................................43 Operating System Monitor ..........................................................................................................................................44 OS Monitor: TOP CPU Processes..............................................................................................................................45 Setups / Tune Buffers Monitor (1).............................................................................................................................46 Setups / Tune Buffers Monitor (2).............................................................................................................................47 Getting Started Exercise...............................................................................................................................................48 Workload Analysis Exercise.......................................................................................................................................49 Work Process Overview...............................................................................................................................................50 Workload Monitor.........................................................................................................................................................51 Setups / Tune Buffers Monitor...................................................................................................................................52 Poor Configuration Example .......................................................................................................................................53 Optimal Configuration .................................................................................................................................................54 Workload Monitor.........................................................................................................................................................55 Setup / Tune Buffers Monitor.....................................................................................................................................56 Reasons for Program Buffer Swaps...........................................................................................................................57 Summary of this Unit ...................................................................................................................................................58 R/3 Memory Management ...............................................................................................................................................59 R/3 Memory Management...........................................................................................................................................60 R/3 Memory Management...........................................................................................................................................61 First Topic in Unit .........................................................................................................................................................62
  • 4. R/3 Memory Areas........................................................................................................................................................63 Physical and Virtual Memory .....................................................................................................................................64 R/3 Memory I: Local Memory for Work Processes................................................................................................65 R/3 Memory II: R/3 Buffers ........................................................................................................................................66 R/3 Memory III: Extended Memory ..........................................................................................................................67 R/3 Memory IV: Heap Memory .................................................................................................................................68 R/3 Memory V: Roll Memory ....................................................................................................................................69 R/3 Memory VI: Paging Memory ..............................................................................................................................70 R/3 Memory - System Point of View........................................................................................................................71 R/3 Memory Areas - Summary...................................................................................................................................72 Next Topic in Unit ........................................................................................................................................................73 User Context Data.........................................................................................................................................................74 Roll Out (1) ....................................................................................................................................................................75 Roll Out (2) ....................................................................................................................................................................76 Roll In..............................................................................................................................................................................77 Roll Area and Paging Area..........................................................................................................................................78 Roll Buffer and Paging Buffer....................................................................................................................................79 R/3 Extended Memory .................................................................................................................................................80 Allocation Concepts - Summary (1) ..........................................................................................................................81 Allocation Concepts - Summary (2) ..........................................................................................................................82 Next Topic in Unit ........................................................................................................................................................83 Allocation Sequence for Dialog WPs (1)..................................................................................................................84 Allocation Sequence for Dialog WPs (2)..................................................................................................................85 Allocation Sequence for Dialog WPs (3)..................................................................................................................86 Allocation Sequence for Dialog WPs (4)..................................................................................................................87 Allocation Sequence for Dialog WPs (5)..................................................................................................................88 Allocation Sequence for Dialog WPs (6)..................................................................................................................89 Heap Memory and PRIV Mode (1)............................................................................................................................90 Heap Memory and PRIV Mode (2)............................................................................................................................91 Allocation Sequence for Dialog WPs - Overview...................................................................................................92 Allocation Sequence for Dialog WPs - Summary ...................................................................................................93 Next Topic in Unit ........................................................................................................................................................94 Allocation Sequence for Non-Dialog WPs ...............................................................................................................95 Next Topic in Unit ........................................................................................................................................................96 Freeing Heap Memory (1) ...........................................................................................................................................97 Freeing Heap Memory (2) ...........................................................................................................................................98 Freeing Heap Memory (3) ...........................................................................................................................................99 Parameter ABAP/HEAPLIMIT...............................................................................................................................100 Memory Management Parameters ..........................................................................................................................101 Demonstration: Testing Memory Limits (1) .........................................................................................................102 Demonstration: Testing Memory Limits (2) .........................................................................................................103 R/3 Memory Consumption.......................................................................................................................................104 Mode List.....................................................................................................................................................................105 Work Process Overview............................................................................................................................................106 Analysis Roadmap: R/3 Memory Configuration..................................................................................................107 Workload Analysis Exercise....................................................................................................................................108 Workload Analysis Exercise: Solution...................................................................................................................109 Insufficient Extended Memory ................................................................................................................................110 Sufficient Extended Memory ...................................................................................................................................111 Next Topic in Unit .....................................................................................................................................................112 Zero Administration Memory Management..........................................................................................................113 R/3 Extended Memory on UNIX (1)......................................................................................................................114 R/3 Extended Memory on UNIX (2)......................................................................................................................115 Benefits of 64-Bit Address Space for R/3..............................................................................................................116 R/3 Extended Memory on NT..................................................................................................................................117 Summary of this Unit ................................................................................................................................................118 Appendix: Menu Paths for R/3 Memory Management .......................................................................................119 Hardware Capacity Verification ..................................................................................................................................120 Hardware Capacity Verification..............................................................................................................................121 Hardware Capacity Verification..............................................................................................................................122 First Topic in Unit ......................................................................................................................................................123 What is a Hardware Bottleneck? .............................................................................................................................124 Hardware Bottlenecks ...............................................................................................................................................125 Next Topic in Unit .....................................................................................................................................................126 Hardware Analysis Roadmap (1) ............................................................................................................................127
  • 5. Hardware Analysis Roadmap (2) ............................................................................................................................128 Response Time Components ....................................................................................................................................129 Hardware Analysis Roadmap (3) ............................................................................................................................130 Workload Analysis Exercise....................................................................................................................................131 Exercise Analysis: Work Process Overview .........................................................................................................132 Exercise Analysis: Workload Monitor...................................................................................................................133 Exercise Analysis: Operating System Monitor.....................................................................................................134 Exercise Analysis: Top CPU Processes .................................................................................................................135 Exercise Analysis: Conclusion (1)..........................................................................................................................136 Exercise Analysis: Conclusion (2)..........................................................................................................................137 Checking Tuning Results (1) ...................................................................................................................................138 Checking Tuning Results (2) ...................................................................................................................................139 Checking Tuning Results (3) ...................................................................................................................................140 Next Topic in Unit .....................................................................................................................................................141 Optimizing Memory Configuration (1) ..................................................................................................................142 Optimizing Memory Configuration (2) ..................................................................................................................143 Checking R/3 Virtual Memory Allocation ............................................................................................................144 Configuring CPU (1) .................................................................................................................................................145 Configuring CPU (2) .................................................................................................................................................146 Summary of this Unit ................................................................................................................................................147 Appendix: 32 Bit Configuration Example (1) .......................................................................................................148 Appendix: 32 Bit Configuration Example (2) .......................................................................................................149 Appendix: Quick Sizing (1) .....................................................................................................................................150 Appendix: Quick Sizing (2) .....................................................................................................................................151 Appendix: Quick Sizing (3) .....................................................................................................................................152 Appendix: Quick Sizing (4) .....................................................................................................................................153 Expensive SQL Statements...........................................................................................................................................154 Expensive SQL Statements ......................................................................................................................................155 Expensive SQL Statements ......................................................................................................................................156 Topics Covered Elsewhere .......................................................................................................................................157 First Topic in Unit ......................................................................................................................................................158 What is an Expensive SQL Statement?..................................................................................................................159 Consequences of Expensive SQL Statements.......................................................................................................160 Next Topic in Unit .....................................................................................................................................................161 Detecting Expensive SQL Statements....................................................................................................................162 Monitors for Detection and Analysis......................................................................................................................163 Detection Using the Transaction Profile ................................................................................................................164 Detection Roadmap (1) .............................................................................................................................................165 Detection Using the Work Process Overview.......................................................................................................166 Detection Using the Database Monitor..................................................................................................................167 Detection Using the Database Process Monitor....................................................................................................168 Detection Using the Database Lock Monitor........................................................................................................169 Detection Roadmap (2) .............................................................................................................................................170 Monitoring Buffer Gets / Disk Reads (1)...............................................................................................................171 Monitoring Buffer Gets / Disk Reads (2)...............................................................................................................172 Monitoring Buffer Gets / Disk Reads (3)...............................................................................................................173 Detection Using the SQL Trace (1) ........................................................................................................................174 Detection Using the SQL Trace (2) ........................................................................................................................175 Detection Using the Where-Used List....................................................................................................................176 Detection Roadmap (3) .............................................................................................................................................177 SQL Statement Exercise (1) .....................................................................................................................................178 SQL Statement Exercise (2) .....................................................................................................................................179 Exercise Solution for 1st SQL Statement...............................................................................................................180 Exercise Solution for 2nd SQL Statement.............................................................................................................181 Next Topic in Unit .....................................................................................................................................................182 Two Types of Expensive SQL Statements ............................................................................................................183 Detailed Analysis of Expensive SQL Statements.................................................................................................184 Detailed Analysis of Expensive SQL Statements.................................................................................................185 Index Use in SQL Statements (1) ............................................................................................................................186 Index Use in SQL Statements (2) ............................................................................................................................187 Index Use in SQL Statements (3) ............................................................................................................................188 Rules for Creating a Secondary Index (1)..............................................................................................................189 Rules for Creating a Secondary Index (2)..............................................................................................................190 Additional Tips for Creating a Secondary Index..................................................................................................191 Optimizer Determination of Access Path...............................................................................................................192
  • 6. Table Statistics for the Optimizer............................................................................................................................193 Checking the Optimizer using EXPLAIN .............................................................................................................194 Why Optimizer Decisions May Cause Performance Problems ..........................................................................195 Tips for Optimizing ABAP Coding (1) ..................................................................................................................196 Tips for Optimizing ABAP Coding (2) ..................................................................................................................197 Detection Roadmap (3) .............................................................................................................................................198 Tuning Roadmap ........................................................................................................................................................199 Workload Analysis Exercise....................................................................................................................................200 Workload Analysis Exercise: Detection ................................................................................................................201 Workload Analysis Exercise: Solution...................................................................................................................202 Before-and-After Comparison.................................................................................................................................203 Summary of this Unit ................................................................................................................................................204 Appendix1: Optimizing ABAP Database Programming.....................................................................................205 ABAP Database Programming ................................................................................................................................206 Creating Efficient SQL Statements.........................................................................................................................207 Tuning Checklist for ABAP Coding (1) ................................................................................................................208 Tuning Checklist for ABAP Coding (2) ................................................................................................................209 Tuning Checklist for ABAP Coding (3) ................................................................................................................210 Appendix 2: Database Locks and R/3 Enqueues..................................................................................................211 Exclusive Lock Waits (1) .........................................................................................................................................212 Exclusive Lock Waits (2) .........................................................................................................................................213 Exclusive Lock Waits (3) .........................................................................................................................................214 R/3 Enqueues versus Database Locks ....................................................................................................................215 Using R/3 Enqueues and Database Locks..............................................................................................................216 Locking and Performance.........................................................................................................................................217 OS Monitor and Top CPU Processes......................................................................................................................218 The Database Process Monitor................................................................................................................................219 R/3 Table Buffering .......................................................................................................................................................220 R/3 Table Buffering...................................................................................................................................................221 R/3 Table Buffering...................................................................................................................................................222 First Topic in Unit ......................................................................................................................................................223 Table Buffers in R/3 ..................................................................................................................................................224 Why Use Table Buffe rs in R/3? (1) ........................................................................................................................225 Why Use Table Buffers in R/3? (2) ........................................................................................................................226 Table Buffering Types...............................................................................................................................................227 Buffer Synchronization (1) .......................................................................................................................................228 Buffer Synchronization (2) .......................................................................................................................................229 Buffer Synchronization (3) .......................................................................................................................................230 Granularity of Invalidation .......................................................................................................................................231 Setting the Buffering for a Table .............................................................................................................................232 SQL Statements Bypassing the Buffer (1).............................................................................................................233 SQL Statements Bypassing the Buffer (2).............................................................................................................234 SQL/Buffering Exercise............................................................................................................................................235 SQL/Buffering Exercise Solution (1) .....................................................................................................................236 SQL/Buffering Exercise Solution (2) .....................................................................................................................237 SQL/Buffering Exercise Solution (3) .....................................................................................................................238 SQL/Buffering Exercise Solution (4) .....................................................................................................................239 SQL/Buffering Exercise Solution (5) .....................................................................................................................240 SQL/Buffering Exercise Solution (6) .....................................................................................................................241 SQL/Buffering Exercise Solution (7) .....................................................................................................................242 SQL/Buffering Exercise: 2nd Run of ZZBUFFER.............................................................................................243 Next Topic in Unit .....................................................................................................................................................244 Buffering Strategy: Technical Criteria ...................................................................................................................245 Buffering Strategy: Application Criteria ................................................................................................................246 Buffering Strategy: Condition Tables.....................................................................................................................247 Buffering Optimization .............................................................................................................................................248 Next Topic in Unit .....................................................................................................................................................249 Analysis Roadmap: Using the Transaction Profile ..............................................................................................250 Table Call Statistics (Transaction ST10) ...............................................................................................................251 Analysis Roadmap: Using Table Call Statistics ...................................................................................................252 Detection Roadmap: Monitoring Table Buffering ...............................................................................................253 Example: Monitoring Table Buffering...................................................................................................................254 Example: Table Analysis (1)....................................................................................................................................255 Example: Table Analysis (2)....................................................................................................................................256 Example: SQL Cursor Cache...................................................................................................................................257
  • 7. Summary......................................................................................................................................................................258 Appendix: ATP Server..............................................................................................................................................259 Introduction: Availability Checks with ATP Logic .............................................................................................260 First Topic in Appendix............................................................................................................................................261 Material Locking (1)..................................................................................................................................................262 Material Locking (2)..................................................................................................................................................263 Database Accesses .....................................................................................................................................................264 Next Topic in Appendix............................................................................................................................................265 Overview of ATP Related Techniques...................................................................................................................266 Locking with Quantities (1) .....................................................................................................................................267 Locking with Quantities (2) .....................................................................................................................................268 ATP Server (1)............................................................................................................................................................269 ATP Server (2)............................................................................................................................................................270 ATP Server (3)............................................................................................................................................................271 Next Topic in Appendix............................................................................................................................................272 Monitoring the Export/Import Buffer.....................................................................................................................273 Monitoring R/3 Enqueues.........................................................................................................................................274 Monitoring SQL Statements.....................................................................................................................................275 Setting ATP Server Parameters ...............................................................................................................................276 Interface Monitoring ......................................................................................................................................................277 Interface Monitoring..................................................................................................................................................278 Processing Modes.......................................................................................................................................................279 mySAP.com Interfaces..............................................................................................................................................280 Remote Function Calls (RFCs)................................................................................................................................281 'Simple’ Transaction Step.........................................................................................................................................282 Transaction Step with Synchronous RFC..............................................................................................................283 RFC Monitoring : Statistical Records.....................................................................................................................284 RFC Monitoring : Statistical Sub-Records (1) ......................................................................................................285 RFC Monitoring : Statistical Sub-Records (2) ......................................................................................................286 RFC Monitoring: RFC Destinations.......................................................................................................................287 RFC Monitoring: Performance Trace .....................................................................................................................288 Next Topic in Unit .....................................................................................................................................................289 R/3 Release 4.6: Enjoy SAP.....................................................................................................................................290 Interaction Model: Controls Technology...............................................................................................................291 Interaction Model: Implications for Performance ................................................................................................292 Transaction Step with Roundtrip .............................................................................................................................293 Example (I): ST03 - High Roll Wait Time ............................................................................................................294 Example (II): STAD - Statistical Record ...............................................................................................................295 RFC Monitoring: Performance Trace .....................................................................................................................296 Trouble Shooting : High GUI Time ........................................................................................................................297 Example (III): ST06 - Network Check by Ping ....................................................................................................298 Trouble Shooting : High GUI Time (2)..................................................................................................................299 Trouble Shooting: New Visual Design...................................................................................................................300 Trouble Shooting: LOW Speed Connection..........................................................................................................301 Trouble Shooting: SAP Easy Access Menu..........................................................................................................302 Next Topic in Unit .....................................................................................................................................................303 Remote Function Calls (RFC and aRFC) ..............................................................................................................304 Troubleshooting: Incoming RFC Load (Problem) ...............................................................................................305 Troubleshooting: Incoming RFC Load (Monitoring)..........................................................................................306 Troubleshooting: Incoming RFC Load (Solution) ...............................................................................................307 Troubleshooting: Outgoing RFC Load (Monitoring) ..........................................................................................308 Troubleshooting: High RFC Load...........................................................................................................................309 Remote Function Calls: tRFCs ................................................................................................................................310 Next Topic in Unit .....................................................................................................................................................311 Workload Analysis Exercise....................................................................................................................................312 Exercise: Work Process Monitor.............................................................................................................................313 Exercise: User Overview ..........................................................................................................................................314 Exercise: Workload Monitor (RFC Profile) ..........................................................................................................315 Exercise: Transactional RFC Monitor....................................................................................................................316 Conclusion | Appendix..................................................................................................................................................317 Conclusion...................................................................................................................................................................318 Further Documentation .............................................................................................................................................319 Analysis Roadmap: Using the Workload Monitor...............................................................................................320 Analysis Roadmap: Using the Transaction Profile ..............................................................................................321 Analysis Roadmap: Using the Work Process Overview (1) ...............................................................................322
  • 8. Analysis Roadmap: Using the Work Process Overview (2) ...............................................................................323 Analysis Roadmap: Using the Operating System Monitor (1)...........................................................................324 Analysis Roadmap: Using the Operating System Monitor (2)...........................................................................325 Analysis Roadmap: R/3 Memory Configuration..................................................................................................326 Analysis Roadmap: Using Table Call Statistics ...................................................................................................327 Section: Technical Optimization of ALE Processing...................................................................................................328 Technical Optimization of ALE Processing..............................................................................................................329 Goals.............................................................................................................................................................................330 Intent of ALE..............................................................................................................................................................331 Distributing Data ........................................................................................................................................................332 Business Scenario.......................................................................................................................................................333 Typical Scenario .........................................................................................................................................................334 Technical Background of ALE ....................................................................................................................................335 How ALE Works - Step 1.........................................................................................................................................336 How ALE Works - Step 2.........................................................................................................................................337 How ALE Works - Step 3.........................................................................................................................................338 Sender Details - Three Ways to an IDOC..............................................................................................................339 Sender Details - First Way to an IDOC..................................................................................................................340 Sender Details - Second Way to an IDOC............................................................................................................341 Sender Details - Third Way to an IDOC................................................................................................................342 Communication Methods..........................................................................................................................................343 TRFC Details 1 ...........................................................................................................................................................344 TRFC Details 2 ...........................................................................................................................................................345 TRFC Communication Error Handling..................................................................................................................346 Communication Details - Sender FTP....................................................................................................................347 Communication Details - Receiver FTP ................................................................................................................348 R/3 Communications to Ext. Programs ..................................................................................................................349 R/3 Communications.................................................................................................................................................350 Receiver Details - Unwrapping an IDOC ..............................................................................................................351 IDOC Processing Options.........................................................................................................................................352 Sender Details .............................................................................................................................................................353 IDOC Processing Options.........................................................................................................................................354 Update Details ............................................................................................................................................................356 Basic Functions used by ALE 1...............................................................................................................................357 ARFC: usage of RFC groups...................................................................................................................................358 ARFC: Resource determination...............................................................................................................................359 Basic Functions used by ALE 2...............................................................................................................................360 Structure of an IDOC.................................................................................................................................................361 Customizing ................................................................................................................................................................362 Batch Administration.................................................................................................................................................363 Administration............................................................................................................................................................364 Analysis Tools and Optimization Methods................................................................................................................365 IDOC Lists Overview................................................................................................................................................366 Time Distribution of IDOC Creation......................................................................................................................367 IDOC Trace.................................................................................................................................................................368 TRFC Monitor............................................................................................................................................................369 Monitoring Transactions...........................................................................................................................................370 Job List of ALE User on Sender Side.....................................................................................................................371 Dialog Work is Disturbed at Receiver....................................................................................................................372 Outbound Processing Options..................................................................................................................................373 Inbound Processing Options (1) ..............................................................................................................................374 Inbound Processing Options (2) ..............................................................................................................................375 RFC Customization....................................................................................................................................................376 The 10 Golden ALE Rules (1).................................................................................................................................377 The 10 Golden ALE Rules (2).................................................................................................................................378 The 10 Golden ALE Rules (3).................................................................................................................................379 Analysis Flow Chart.......................................................................................................................................................380 Possible Performance Problems ..............................................................................................................................381 Analysis and Tuning Flowchart (1).........................................................................................................................382 Application Data Does not Arrive (Subchart 1)....................................................................................................383 Application Data Does not Arrive (Subchart 1.1) ................................................................................................384 Application Data Does not Arrive (Subchart 1.2) ................................................................................................385 Application Data Arrive too Late (Subchart 2).....................................................................................................386 Application Data Arrive too Late (Subchart 2.1) .................................................................................................387 Application Data Arrive too Late (Subchart 2.2) .................................................................................................388
  • 9. Application Data Arrive too Late (Subchart 2.3) .................................................................................................389 Application Data Arrive too Slow (Subchart 3)....................................................................................................390 Dialog Work is Disturbed (Subchart 4)..................................................................................................................391 Dialog Work is Disturbed at Sender (Subchart 4.1).............................................................................................392 Dialog Work is Disturbed at Receiver (Subchart 4.2).........................................................................................393 Exercises - Technical Optimization of ALE Processing..........................................................................................394 Solutions - Technical Optimization for ALE Processing........................................................................................396
  • 10. © SAP AG 1999 Course Overview
  • 11. © SAP AG 1999 Target Group l Audience: n future SAP R/3 Technical Consultants n experienced System Administrators n experienced Database Administrators n with no or less R/3 knowledge l Duration: 5 weeks
  • 12. © SAP AG 1999 Course Prerequisites l In-depth knowledge of the UNIX or NT operating system, the ORACLE or MS SQL Server database and TCP/IP network administration. l Practical experience with these issues is essential for passing the SAP R/3 Certified Technical Consultant exam.
  • 13. © SAP AG 1999 Course Goals l Course participants receive comprehensive expert level training in R/3 System management l The course prepares participants for the “SAP R/3 Certified Technical Consultant” exam.
  • 14. © SAP AG 1999 Course Composition UNIX/ORACLE: TABCUO = TABC10 + TABC20 + TABC30 NT/ORACLE: TABCNO = TABC11 + TABC20 + TABC30 NT/MS SQL Server: TABCNS = TABC11 + TABC21 + TABC30 5 weeks = 3 weeks + 1 week + 1 week
  • 15. © SAP AG 1999 TABCUO - Sections TABC10 Section SAP Basis Technology Section Technical Core Competence - UNIX Section Software Logistics Section R/3 Technical Implementation and Operation Management Section Advanced R/3 System Administration Section Ready-to-Run Section Technical Core Competence - Workplace TABC20 Section Database Administration ORACLE Section SQL Cache Analysis - CBO - ORACLE TABC30 Section Workload Analysis Section Technical Optimization of ALE Processing
  • 16. © SAP AG 1999 TABCNS - Sections TABC11 Section SAP Basis Technology Section Technical Core Competence - NT Section Software Logistics Section R/3 Technical Implementation and Operation Management Section Advanced R/3 System Administration Section Ready-to-Run Section Technical Core Competence - Workplace TABC21 Section Database Administration MS SQL Server Section SQL Cache Analysis - CBO - MS SQL Server TABC30 Section Workload Analysis Section Technical Optimization of ALE Processing
  • 17. © SAP AG 1999 TABCNO - Sections TABC11 Section SAP Basis Technology Section Technical Core Competence - NT Section Software Logistics Section R/3 Technical Implementation and Operation Management Section Advanced R/3 System Administration Section Ready-to-Run Section Technical Core Competence - Workplace TABC20 Section Database Administration ORACLE Section SQL Cache Analysis - CBO - ORACLE TABC30 Section Workload Analysis Section Technical Optimization of ALE Processing
  • 18. © SAP AG 1999 Section: Workload Analysis 1. Introduction to Workload Analysis 6. R/3 Table Buffering 2. Performance Analysis Monitors 7. Interface Monitoring 3. R/3 Memory Management 4. Hardware Capacity Verification 5. Expensive SQL Statements
  • 19. © SAP AG 1999 Introduction to Workload Analysis 1. Introduction to Workload Analysis 6. R/3 Table Buffering 2. Performance Analysis Monitors 7. Interface Monitoring 3. R/3 Memory Management 4. Hardware Capacity Verification 5. Expensive SQL Statements
  • 20. © SAP AG 1999 Contents: l Review of multi-tier R/3 architecture l Workload analysis theory Objectives: At the end of this unit you will be able to: l Outline multi-tier R/3 architecture l Interpret the Workload Monitor l Outline the tuning potential of an R/3 System l Explain the standard methods for approaching a performance problem Introduction to Workload Analysis
  • 21. © SAP AG 1999 Introduction: Performance Bottlenecks System bottlenecks l Hardware (CPU, RAM, I/O, network) l Configuration (memory/buffer configuration, process configuration) Long-running programs l Unnecessary functionality l Non-optimal implementation n Technical implementation (e.g. database indexes, table buffering, ABAP coding) n Logical implementation (non- optimal use of SAP standard functionality Long-running programs may cause system bottlenecks System bottlenecks may cause long-running programs
  • 22. © SAP AG 1999 Basis Tuning l Goal: n Distribute the given workload optimally to avoid performance bottlenecks l Responsible persons: n Technical team leader n System/database administrator n Technical consultant Application Tuning l Goal: n Avoid unnecessary workload by optimised programs and optimal usage of applications l Responsible persons: n ABAP developers n Application consultant n System/database administrator n Technical consultant Typical Tuning Measures
  • 23. © SAP AG 1999 l Optimize system parameters (S) n R/3 parameters (for example, for memory management) n Database parameters (for example, for database buffer sizes) n Operating system and network parameters l Optimize database disk layout through I/O balancing (S) l Optimization of workload distribution (S) n Number of work processes, background scheduling, log-on groups l Verify hardware sizing by detecting hardware bottlenecks (S) ____________________________________ : Covered in this course S: Performed by the R/3 System administrator R/3 Basis Tuning Tasks
  • 24. © SAP AG 1999 l Find and apply SAP Notes from SAPNet (D,S) n Bug fixes, corrections, patches, hints l Optimize the SAP Customizing (D) n For example, in SD and PP l Optimize ABAP-coding of customer’s modifications (D) n For example, Z reports, user exits l Create, change or drop indexes (D,S) l Design table buffering (D,S) ___________________________________ S: R/3 System administrator D: R/3 developer, R/3 application consultant R/3 Application Tuning Tasks
  • 25. © SAP AG 1999 LAN / WAN Presentation Application Database Create Production Orders Release Production Orders Schedule Production Accept Customer Order Confirm Delivery Build Products Explode Bill-of- Material Reserve Material Customer Service Rep Plant Personnel Production Order Customer Order Part Material Task Internet LAN LAN / WAN Multi-Tier Client/ Server Architecture n The diagram shows a common way of setting up the hardware components for a multi-tier system architecture. n One larger machine contains the database as well as the central application server that is mainly used for administration and monitoring work. n A number of application servers, each on its own machine, allow the connection of users and form the application layer. n The internet layer translates SAP screens to HTML readable format. It consists of SAP Internet Transaction Servers and Web Servers (such as the Microsoft Internet Information Server or Netscape Enterprise Server). n The presentation layer consists of the SAP GUIs or Web browsers that run on user PCs.
  • 26. © SAP AG 1999 Database Layer Network Application Layer Presentation Layer Network Wait queue (memory) . . . Work process Dispatcher Wait time Presentation server Dialog Step: Wait Time n This and the following slides describe the sequence of actions that contribute to total response time in multi-tier architecture. n To complete the logon process, the presentation server connects with a dispatcher. n When the user tries to run a transaction, the user's request comes from the presentation server to the dispatcher and is put into the local wait queue. n When the dispatcher recognizes that a work process is available, the user's request is taken from the wait queue and sent to the work process.
  • 27. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Dispatcher Roll buffer Roll fileRoll file Roll memory . . . Work process ExtendedExtended memorymemory Roll-in time Dialog Step: Roll-in time n When a user is dispatched to a work process, "user context" data – the user's logon attributes, authorizations, and other relevant information – is transferred from the roll buffer, extended memory, or the roll file into the work process. This transfer (by copying or mapping, as appropriate) of user context data into work process memory is the mechanism known as a "roll in". n Transaction processing then begins.
  • 28. © SAP AG 1999 Network Network Application Layer Presentation Layer Wait queue (memory) Roll buffer Roll fileRoll file Roll memory Dispatcher ExtendedExtended memorymemory Database Layer Database buffers . . . Work process Database process Database interface Database time Dialog Step: Database Time n If data from the database is required to support transaction processing, a request for data is sent to the database interface, which in turn sends a request through the network to retrieve the information from the database. n When it receives the request, the database searches its shared memory buffers. If the data is found, it is sent back to the work process. If the data is not found, it is loaded from the disk into the shared memory buffers. n After being located, the data is taken from the shared memory buffers and sent back across the network to the requesting database interface. Transaction processing resumes.
  • 29. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Database buffers Roll buffer Roll fileRoll file Dispatcher Database process Extended memoryExtended memory Database interface Roll memory . . . Work process R/3 shared pool buffers Dialog Step: Access to SAP Buffers n Before accessing the database service, the database interface searches for the data in the R/3 buffers. If the data is found, it is relayed back to the work process where processing resumes. If the data is not found, the database interface sends a request over the network to retrieve the information from the database (as described on the last slide). n If the data loaded from the database is eligible for R/3 buffering, it is placed in the R/3 buffers. Transaction processing resumes.
  • 30. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Database buffers Roll buffer Roll fileRoll file Database interface Roll memory . . . Work process Dispatcher SAP shared pool buffers Database process ExtendedExtended memorymemory Response time Dialog Step: Response time n When transaction processing is completed, the dispatcher is notified of its completion. The results of the transaction are then sent back to the presentation server.
  • 31. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Database buffers Dispatcher SAP shared pool buffers Database process Roll buffer Roll fileRoll file Database interface Roll memory . . . Work process ExtendedExtended memorymemory Roll out time Dialog Step: Roll out time n After the transaction finishes and the work process is no longer required, the user context data is rolled out of the work process.
  • 32. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Database buffers Roll buffer Roll fileRoll file Database interface Roll memory . . . Work process Dispatcher SAP shared pool buffers Database process ExtendedExtended memorymemory Response time Database request time Roll-in time Wait time Summary: Response Time Components n This slide summarizes the previous slides describing the sequence of actions that contribute to total response time in multi-tier architecture.
  • 33. © SAP AG 1999 Database Layer Network Network Application Layer Presentation Layer Wait queue (memory) Database buffers Roll buffer Roll fileRoll file Database interface Roll memory ABAP processing . . . Work process Dispatcher SAP shared pool buffers Database process Extended memoryExtended memory CPU time CPU Time n CPU time is the amount of time during which a particular work process has active control of the central processing unit (CPU).
  • 34. © SAP AG 1999 CPU time Presentation Server Roll in Load time Processing timeWait time Database time Response time Application Server Database Server NetworkNetwork NetworkNetwork Workload Statistics (1) n Workload time statistics include: Ÿ Response time in milliseconds: Starts when a user request enters the dispatcher queue; ends when the next screen is returned to the user. The response time does not include the time to transfer from the screen to the front end. Ÿ Wait time in milliseconds: This is the time a user request sits in the dispatcher queue. It starts when user request is entered in the dispatcher queue; and ends when the request starts being processed. Ÿ Roll-in time in milliseconds: The amount of time needed to roll user context information into the work process. Ÿ Load time in milliseconds: The time needed to load from the database and generate objects like ABAP source code, CUA, and screen information. Ÿ Processing time : This is equivalent to response time minus the sum of wait time, database request time, load time, roll time, and enqueue time. Ÿ Database request time : Starts when a database request is put through to the database interface; ends when the database interface has delivered the result. Ÿ CPU time in milliseconds: This is the CPU time used by the R/3 work process n Roll-wait time and GUI time are covered in the unit Interface Monitoring.
  • 35. © SAP AG 1999 Workload Statistics (2) SAP Transaction ST03N, the Workload Monitor, summarizes statistics n To access the Workload Monitor, use Transaction code ST03N. or, from the R/3 initial screen, choose Tools → Administration → Monitor → Performance → Workload → Analysis. Choose Performance database and make the selections required by the dialog boxes. The Performance: Workload Overview for Server is displayed. n In the “Administrator’s Mode” that is chosen by default the time frame of the workload analysis is the current day. n Important for this training: Ÿ Change to “Expert Mode”. Choose under “Detailed Analysis” -> “Last minutes load” Ÿ During a workload exercise, restrict the time period to the time when the exercise is running. n Under Analysis views, you can access, for example: Ÿ Workload overview - Workload statistics according to work process type Ÿ Transaction Profile - Workload statistics according to transaction. Ÿ Time Profile - Workload statistics according to hour n See also the R/3 Knowledge Product CD, System Monitoring. n Note: Roll wait time and GUI time are explained in section 7, Interface Monitoring.
  • 36. © SAP AG 1999 AllAll transactionstransactions affected?affected? Program analysis No Yes (Cont.) Performance problem? Check: WorkloadWorkload on all serverson all servers Problem symptoms: Large load timeLarge load time Processing timeProcessing time much larger thanmuch larger than CPU timeCPU time Large databaseLarge database request timesrequest times (Average)Large CPU timesLarge CPU times Large roll-wait timeLarge roll-wait time Initial Analysis Roadmap (1) n If a problem is detected, the data in the Workload Monitor (Transaction ST03N) can be used as follows to identify the area of the system where the problem is located. n First check for general performance problems affecting all transactions. Good general performance is normally indicated by: Ÿ Wait time < 10% response time Ÿ Main menu (choose Transaction Profile) < 100 ms n In the Workload Monitor, the following values normally indicate good performance: Ÿ Average roll-in time < 20 ms Ÿ Average roll wait time < 200 ms Ÿ Average load (and generation) time < 10 % of response time (<50 ms) Ÿ Average database request time < 40 % of (response time - wait time) Ÿ Average CPU time < 40 % of (response time - wait time) Ÿ Average CPU time Not much less than processing time Ÿ Average response time - Depends on customer requirements – there is no general rule
  • 37. © SAP AG 1999 Program buffer, CUA buffer, or screen buffer too smallLarge load timeLarge load time CPU bottlenecks, network problems, communication problems Processing timeProcessing time much larger thanmuch larger than CPU timeCPU time CPU/memory bottleneck on database server, network problems, expensive SQL statements, database locks, missing indexes, missing statistics, small buffers Large databaseLarge database request timesrequest times (Average)Large CPU timesLarge CPU times Expensive ABAP processing, for example, processing large tables, frequent accessing of R/3 buffers Communication problem with GUI or external system Large roll-wait timeLarge roll-wait time Initial Analysis Roadmap (2) n These are some of the more common problems indicated by Workload Monitor statistics.
  • 38. © SAP AG 1999 Analysis Roadmap: Using the Workload Monitor R/3 Workload Monitor (ST03N) High database time: database time > 40% (response time - wait time) Detailed analysis of the database Processing time > CPU time x 2 Detailed analysis of hardware bottlenecks ? Wait time > 10% of response time General performance problem Load time > 50 ms Detailed analysis of R/3 memory configuration (is the program buffer too small?) Roll-wait time or GUI time > 200 ms Detailed analysis of interfaces and GUI communication Transaction Profile (Transaction ST03) sorted by “Response time total” Programs with high CPU time: CPU time > 40% (response time - wait time) ! ? ? ? ? ? n For more detail on analyzing: Ÿ The database, see the unit Expensive SQL statements Ÿ R/3 memory configuration, see the unit R/3 Memory Management Ÿ Hardware bottlenecks, see the unit Hardware Capacity Verification Ÿ Interfaces and GUI problems, see the unit Interface Monitoring
  • 39. © SAP AG 1999 Database Monitor Setups Buffers Operating System Monitor Work Process Overview Workload Monitor … Details in the following units Transaction ST04 Transaction ST02 Transaction ST06 Transaction SM50 / SM66 Transaction ST03 or ST03N Performance Monitors for the R/3 Basis n To begin a workload analysis, use the Workload Monitor (Transaction ST03 or ST03N). n If you find statistics that indicate a performance problem, use the other monitoring tools to obtain further data on the problem.
  • 40. © SAP AG 1999 Transaction Profile n In the Workload Monitor, choosing Transaction Profile enables you to find out: Ÿ The most-used transactions. Tuning these transactions creates the greatest improvements in overall performance. Ÿ The average response times for typical R/3 transactions.
  • 41. © SAP AG 1999 Statistical Records n To access the statistics records for a specific server: Ÿ As of R/3 Release 4.5, use transaction STAD Ÿ Prior to R/3 Release 4.5, use transaction STAT or, from the R/3 initial screen, choose Tools → Administration → Monitor → Performance → Workload → Statistics Records.
  • 42. © SAP AG 1999 Analysis Roadmap: Using the Transaction Profile R/3 Workload Monitor (transaction ST03N) ? Programs with high CPU time: CPU time > 40% (response time - wait time) ... Transaction Profile (Transaction ST03N) sorted by “Response time total” Programs with high database time (databases time > 40% (response time - wait time) Detailed analysis with ABAP-Trace Detailed analysis of SQL statements ? ? Problems with high GUI times (> 200 ms) Network check n To analyze transactions with a large CPU time, use an ABAP trace. n To analyze transactions with a high database time, use an SQL trace. n To analyze transactions with a high GUI time, use a network check.
  • 43. © SAP AG 1999 Statistical records SQL trace Application Monitors ABAP trace Workload Monitor Transaction ST03N … Details in the following units Transactions ST07 / ST14 Transaction SE30 Transaction ST05 Transaction STAT / STAD Performance Monitors for R/3 Applications n Transactions ST07, ST14, and SE30 are not covered in this course.
  • 44. © SAP AG 1999 4.5B 4.6B4.0B 5.0 STAD First availability Full functionality 4.6C/D STAT General availability Last functional enlargement Planned last availability General availability ST03 ST03N First availability Planned full functionality Availability of the New Workload Transactions
  • 45. © SAP AG 1999 Workload Statistics (until 4.6B) SAP Transaction ST03, the Workload Monitor, summarizes statistics n To access the Workload Monitor, use Transaction ST03 or, from the R/3 initial screen, choose Tools → Administration → Monitor → Performance → Workload → Analysis. Choose Performance database and make the selections required by the dialog boxes. The Performance: Workload Overview for Server is displayed. n To display the 40 slowest dialog steps by response time, choose Top time. n Under Goto → Profiles, you can access, for example: Ÿ Task Type Profile - Workload statistics according to work process type Ÿ Time Profile - Workload statistics according to hour Ÿ Transaction Profile - Workload statistics according to transaction. n The proportion of database calls to database requests gives an indication of the efficiency of table buffering. If access to information in a table is buffered in the R/3 pool buffers, then database calls to the database server are not needed and performance is better. Thus, the fewer database calls result in database requests, the better. n See also the R/3 Knowledge Product CD, System Monitoring. n Note: Roll wait time and GUI time are explained in section 7, „Interfaces“
  • 46. © SAP AG 1999 Transaction Profile (until 4.6B) n In the Workload Monitor, choosing Transaction Profile enables you to find out: Ÿ Which transactions are used most? Tuning these transactions creates the greatest improvements in overall performance. Ÿ What are the average response times for typical R/3 transactions?
  • 47. © SAP AG 1999 Summary of this Unit Now you are able to: l Outline multi-tier R/3 architecture l Interpret the Workload Monitor l Outline the tuning potential of an R/3 System l Explain the standard methods for approaching a performance problem
  • 48. © SAP AG 1999 1. Introduction to Workload Analysis 6. R/3 Table Buffering 2. Performance Analysis Monitors 7. Interface Monitoring 3. R/3 Memory Management 4. Hardware Capacity Verification 5. Expensive SQL Statements Performance Analysis Monitors
  • 49. © SAP AG 1999 Contents: l Monitors: Work Process Overview, Operating System Monitor, Setups/Tune Buffers l Getting Started Exercise l Workload Analysis Exercise Objectives: At the end of this unit you will be able to: l Use the performance monitors l Analyze the performance of an R/3 System l Find performance bottlenecks Performance Analysis Monitors
  • 50. © SAP AG 1999 Setups/ Buffers Database Monitor Operating System Monitor Work Process Overview Workload Monitor Transaction ST04 Transaction ST02 Transaction ST06 Transaction SM50 / SM66 Transaction ST03N Performance Monitors for the R/3 Basis n To begin a workload analysis, use the Workload Monitor (transaction ST03). n If you find statistics that indicate a performance problem, use the other monitoring tools to obtain further data on the problem. n The Database Monitor (transaction ST04) will be discussed in the unit Expensive SQL statements.
  • 51. © SAP AG 1999 Work Process Overview n To display a snapshot of the current activities on the instance you are logged on to, use the Work Process Monitor. Call transaction SM50, or, from the R/3 initial screen, choose Tools → Administration → Monitor → System monitoring → Process overview. n The information displayed includes: - Type of work process - Name of the ABAP program running - Operating system PID number - Client being used - Name of the job executing - Current action - Number of detected errors in the work process - Table being utilized - Semaphore resource being used - CPU accumulation - Time in process accumulation - User holding the resource n If all work processes are being blocked by long running transactions, the above information is also available on operating system level by using program dpmon. n In an R/3 System with more than one instance, you can access a global work process overview using transaction SM66.
  • 52. © SAP AG 1999 Analysis Roadmap: Using the Work Process Overview Work Process Overview (transaction SM50 / SM66) Work processes in status “running”? Action: “Dir. Read”, “Seq. Read”, “Insert”, “Update”, “Delete”, “Commit” Detailed analysis of the database Action: “Load program”? Action: “Roll In” / “Roll Out”? Detailed analysis of R/3 memory configuration (problems with extended memory or roll buffer) Work processes in status “stopped”? Reason: “PRIV”? Detailed analysis of R/3 memory configuration (problems with extended memory or roll buffer) Reason: “CPIC”? Problems with CPIC connections such as "All work processes blocked in destination system"? Detailed analysis of R/3 memory configuration (program buffer too small?) ? ? ? ? ? ? ? ? n The diagram shows the procedures for analyzing the current workload using the Work Process Overview (transaction SM50). n For more detail on analyzing: Ÿ The database, see the unit Expensive SQL statements Ÿ R/3 memory configuration, see the unit R/3 Memory Management
  • 53. © SAP AG 1999 Operating System Monitor n To call the Operating System Monitor, use transaction ST06, or, from the R/3 initial screen, choose Tools → Administration → Monitor → Performance → Operating System → Local [or Remote] → Activity. n Important statistics displayed in the Operating System Monitor include: Ÿ CPU load average and % CPU utilization Ÿ Operating system swapping and % memory utilization Ÿ % disk utilization Ÿ Operating system configuration parameters n CPU bottlenecks are indicated during several snapshots by: Ÿ Idle CPU < 10 % Ÿ Load Average: N processes waiting in front of the CPU n Note: you must refresh your screen several times, as each display is a momentary snapshot. n Memory bottlenecks are indicated during several snapshots by: Ÿ An increase in page outs for UNIX or page ins for NT. Ÿ This topic is covered in more depth in unit Hardware Capacity Verification.
  • 54. © SAP AG 1999 OS Monitor: TOP CPU Processes n "Disp+work" signifies an R/3 work process. n "ORACLE80" signifies a database process. n "DOC_SNYDER" is an external processes which does not belong to an R/3 instance or to the database. External processes may affect performance critically. n On detecting hardware bottlenecks, see the unit Hardware Capacity Verification.
  • 55. © SAP AG 1999 Setups / Tune Buffers Monitor (1) n For the instance on which the user is logged on, the Setups / Tune Buffers monitor shows the percentage usage of buffers and memory. To access the monitor, use transaction ST02 or, from the R/3 initial screen, choose Tools → Administration → Monitor → Performance → Setup/buffers → Buffers. n The Setups / Tune Buffers monitor displays data on: Ÿ Buffer sizes Ÿ Buffer qualities (hit ratios) n Bottlenecks may be indicated if buffer swaps occur. n Choose Detail analysis menu to display other data, such as : Ÿ Memory usage Ÿ Semaphores usage Ÿ Table calls
  • 56. © SAP AG 1999 Setups / Tune Buffers Monitor (2) n Max. use (in KB) should be less than In memory (in KB). n The lower part of the Setups / Tune Buffers monitor displays data on: Ÿ Extended memory size and usage Ÿ Usage and configuration of the roll mechanism n Bottlenecks may be indicated if: Ÿ For extended memory: Max use. = In memory Ÿ For roll area: Max use. > In memory n For a detailed analysis of R/3 memory management, see unit R/3 Memory Management.
  • 57. © SAP AG 1999 Objectives: In this exercise you will learn how to: l Use the R/3 performance monitors Activities: l Log on to the training system l Determine: n CPU load n Size of allocated memory and available physical memory n Which transactions were executed in which R/3 modules n Response times for these transactions n Whether there are buffer swaps and operating system paging Getting Started Exercise To perform the Getting Started exercise, enter the required data: CPU Load ........................ Allocated Memory ........................MB Physical Memory ........................MB Top 5 transactions ................., .................., .................., .................., .................. - Related R/3 modules ................., .................., .................., .................., .................. - Related response times................., .................., .................., .................., .................. Buffer Swaps: Buffer: .............................. Amount: ............................. Buffer: .............................. Amount: ............................. Buffer: .............................. Amount: ............................. Buffer: .............................. Amount: ............................. Buffer: .............................. Amount: ............................. Operating system paging: Yes/No Amount .............................KB/s
  • 58. © SAP AG 1999 Objectives: In this exercise you will learn how to: l Analyze a workload problem related to the program buffer l Distinguish an optimal system configuration from a poor system configuration with respect to its effect on the program buffer Activities: After your trainer starts the workload simulation: l Log on to the training system l Use the workload monitors to identify the problem l Make recommendations Workload Analysis Exercise
  • 59. © SAP AG 1999 Work Process Overview n To access the Work Process Overview, use transaction SM50.
  • 60. © SAP AG 1999 Workload Monitor n To access the Workload Monitor, use transaction ST03 and choose Performance database. Make the selections required by the dialog boxes. The screen Performance: Workload Overview for Server is displayed.
  • 61. © SAP AG 1999 Setups / Tune Buffers Monitor n To access the Setups / Tune Buffers monitor, use transaction ST02.
  • 62. © SAP AG 1999 Work Process Work Process Work Process Work Process Memory Code Code Program buffer PERFORM Costing. ENDIF. SELECT * FROM MARA PERFORM Costing. ENDIF. SELECT * FROM MARA SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT . . .. . . SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT DATA: A TYPE I, B TYPE I. PERFORM DOIT USING A B. . . .. . . REPORT RFBIBL00. PARAMETERS: A. SUBMIT RFBIBL01 Change cost center ?? é éé é 3333 Cost center Profitfrom Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é é é é 3333 Cost center Profit from Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é éé é 3333 Cost center Profit from PresentationPresentationApplicationserverApplicationserverDatabaseDatabase Poor Configuration Example n The program buffer is set to 110 MB (the SAP instance profile parameter Buffersize is set to 110,000), and the simulation of 10 users for each of MM, SD and PP is started.
  • 63. © SAP AG 1999 PresentationPresentationApplicationserverApplicationserver Work process Work process Work process Work process Memory Code Program buffer DatabaseDatabase Code CodeCode . . .. . . PERFORM Costing. ENDIF. SELECT * FROM MARA . . .. . . SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT . . .. . . SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT . . .. . . PERFORM Costing. ENDIF. SELECT * FROM MARA . . .. . . SELECT * FROM. VBAK. CALL FUNCTION ENDSELECT. . .. . . DATA: A TYPE I, B TYPE I. PERFORM DOIT USING A B. . . .. . . REPORT RFBIBL00. PARAMETERS: A. SUBMIT RFBIBL01 Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é éé é 3333 Cost center Profitfrom Change cost center ?? é éé é 3333 Cost center Profit from Change cost center ?? é é é é 3333 Cost center Profit from Change cost center ?? é é é é 3333 Cost center Profit from Optimal Configuration n The program buffer is set to 400 MB (the SAP instance profile parameter Buffersize is set to 400,000), and the simulation started. The program buffer is now big enough to hold all necessary code.
  • 64. © SAP AG 1999 Workload Monitor
  • 65. © SAP AG 1999 Setup / Tune Buffers Monitor
  • 66. © SAP AG 1999 Buffer size is too small: Programs are swapped out, and the reloads cause high load and long DB request times è Solution: Increase buffer size Frequently changed programs: Programs are changed frequently and have to be reloaded, causing buffer swaps è Solution: Avoid frequent transporting and development in the production system Reasons for Program Buffer Swaps
  • 67. © SAP AG 1999 Now you are able to: l Use the performance monitors l Analyze the performance of an R/3 System l Find performance bottlenecks Summary of this Unit
  • 68. © SAP AG 1999 1. Introduction to Workload Analysis 6. R/3 Table Buffering 2. Performance Analysis Monitors 7. Interface Monitoring 3. R/3 Memory Management 4. Hardware Capacity Verification 5. Expensive SQL Statements R/3 Memory Management
  • 69. © SAP AG 1999 R/3 Memory Management Contents: l R/3 memory areas l R/3 memory allocation n Concepts n Allocation sequence for dialog work processes n Allocation sequence for non-dialog work processes n Freeing heap memory l Demonstration: testing memory limits l Workload analysis exercise l Implementing R/3 extended memory n R/3 memory areas introduces the various R/3 memory areas, which may be physically located in one or more of the following: Ÿ Local memory Ÿ Shared memory Ÿ File system n R/3 memory allocation explains what the different memory areas are used for. n After the demonstration and exercise, the topic Implementing R/3 extended memory compares memory management for different hardware platforms: Ÿ UNIX versus Windows NT Ÿ 32 bit versus 64 bit architecture n This unit does not explain how large you should make the various memory areas. This is explained in the following unit, Hardware Capacity Verification.
  • 70. © SAP AG 1999 Objectives: At the end of this unit you will be able to: l Outline the types of memory in R/3 memory management l Explain how these types of memory work together l Use R/3 memory management monitors l Configure parameters as part of R/3 memory management R/3 Memory Management
  • 71. © SAP AG 1999 First Topic in Unit l R/3 memory areas l R/3 memory allocation n Concepts n Allocation sequence for dialog work processes n Allocation sequence for non-dialog work processes n Freeing heap memory l Implementing R/3 extended memory è
  • 72. © SAP AG 1999 R/3 Memory Roll memory Extended R/3 buffers WP WP R/3 Memory Areas Users need two kinds of memory: n R/3 buffers Memory accessible to all users, for: w Programs w Table and field definitions w Customizing tables n User context Memory attached to individual users, for: w Variables, lists, internal tables w Administrative data (such as authorizations)