usage, performance and future of pl1 at nrb benoit ebner
TRANSCRIPT
1
TESTIMONIAL
USAGE, PERFORMANCE AND FUTURE USE OF PL/1
Benoit Ebner
2
AGENDA
1. PL/1 USAGE2. PERFORMANCE ATTENTION3. PL/1 FUTURE AT NRB
3
AGENDA
1. PL/1 USAGE2. PERFORMANCE ATTENTION3. PL/1 FUTURE AT NRB
4
HARDWAREzEC 12 model 614
SOFTWAREz/OS 1.13PL/1 3.9IMS 12DB/2 10
SOME FACTS
5
100 PL/1 DEVELOPERS
16,000 PL/1 SOURCES3,250 AVERAGE LINES OF CODE/SOURCE
90,000,000 TRANSACTIONS/MONTH2,500,000 BATCH-BMP/MONTH
SOME FIGURES
6
PL/1 AND THE OTHER PIECES OF SOFTWARE
PL/1
DL/1
DB/2MQ
Series
PL/1
ASM
COBOLJAVA
PL/1
TSO/BATCH
IMS/BMPIMS/TP
7
STRONG TEMPLATE CODING
EACH PL/1 DEVELOPER USES THE SAME TEMPLATES FOR ENCODING
ONE TEMPLATE BY TYPE OF SOURCE (BATCH, BMP, TP, DB SERVICE…)
BENEFITS :• ALL THE CODING IS THE SAME• EVERY DEVELOPER CAN UNDERSTAND
THE STRUCTURE OF EVERY PROGRAM• QUICK DEVELOPMENT PROCESS
TP PROGRAM USES A “BLACKBOX” FOR STANDARD PROCESSING
• SAVE/RESTORE SPA• COMMIT / ROLLBACK• SWITCH BETWEEN TRANSACTIONS• SECURITY PROCESS• …
DEVELOPERS FOCUS ONLY ON DATA AND PRESENTATION.
ALL SYSTEM MECHANISMS ARE EMBEDDED.
8
AGENDA
1. PL/1 USAGE2. PERFORMANCE ATTENTION3. PL/1 FUTURE AT NRB
9
NRB CONTEXT
WE WANT TO DETECT ANY REGRESSION IN PERFORMANCE AS FAST AS POSSIBLE
QUICK VIEW ON PERFORMANCE WHEN WE CHANGE• COMPILE OPTION• MAJOR SOFTWARE CHANGE (EG.
PL/1 VN > VN+1)• MAJOR HARDWARE CHANGE (EG.
ZEC12 > Z13)
POTENTIAL PROBLEM• BATCH WINDOWS INCREASE• DEGRADATION OF TP RESPONSE
TIME
10
OUR DETECTION APPROACH
TEST THE EXECUTION TIME OF MAJOR PL/1 FUNCTION• EXECUTED AFTER EVERY MAJOR CHANGE• RESULT LOGGED IN DB/2• COMPARISON RESULT BEFORE/AFTER
CATEGORY OPT2 OPT3
Program for testing ZPE000 ZPE100
Date/time built-in functions ZPE001 ZPE101
Arithmetic built-in functions ZPE002 ZPE102
Precision-handling built-in functions ZPE003 ZPE103
String-handling built-in functions ZPE004 ZPE104
Miscellaneous built-in functions ZPE005 ZPE105
Array-handling built-in functions ZPE006 ZPE106
Storage control built-in functions ZPE007 ZPE107
11
TEST RESULT
WE PERFORM 2,272 TESTS TO VALIDATE A MAXIMUM OF POSSIBLE USAGES !
NRB HAS DECIDED TO USE THE OPT(2) OPTION• WE COMPILE THE SOURCE CODE IN EACH LPAR• OPT(3) CONSUMES TOO MUCH FOR US
JOBNAME PROGRAM PARAM LIBELLEESERVUNITOPT2
SERVUNITOPT3
TPTPDE03 ZPE004 1 TEST SUBSTR AVEC 3 PARAM CHAR 5989.95 5983.10
TPTPDE03 ZPE004 2 TEST SUBSTR AVEC 2 PARAM CHAR 6460.90 6453.75
TPTPDE03 ZPE004 3TEST SUBSTR AVEC 3 PARAM CHAR VAR 6099.80 6086.50
TPTPDE03 ZPE004 4TEST SUBSTR AVEC 2 PARAM CHAR VAR 6545.45 6540.25
TPTPDE03 ZPE004 5TEST SUBSTR AVEC 3 PARAM CHAR CONSTANT 6435.40 5985.65
TPTPDE03 ZPE004 6TEST SUBSTR AVEC 2 PARAM CHAR CONSTANT 6390.80 6400.75
TPTPDE03 ZPE004 7 TEST VERIFY AVEC CHAR 6734.00 6608.80
TPTPDE03 ZPE004 8 TEST VERIFY AVEC CHAR VAR 18521.35 18701.30
TPTPDE03 ZPE004 9 TEST VERIFY AVEC CHAR CONSTANT 230.65 230.30
12
APPLICATION MONITORING
NRB MONITORS ALL THE EXECUTIONS OF ALL THE PROGRAMS (TP, BMP, BATCH)• MONITORING OF EXECUTION TIME, MIPS CONSUMED, …• WE CAN QUICKLY DETECT BAD EXECUTION AND CORRECT IT
0 Mips
200 Mips
400 Mips
600 Mips
800 Mips
1.000 Mips
1.200 Mips
1.400 Mips
16/0
2
17/0
2
18/0
2
19/0
2
20/0
2
21/0
2
22/0
2
Mips TP
Mips Batch
Mips
1.198
13
AGENDA
1. PL/1 USAGE2. PERFORMANCE ATTENTION3. PL/1 FUTURE AT NRB
14
LEGACY MODERNIZATION
CONTINUATION OF THE INTEGRATION PL/1 – JAVA
INTERCONNECTION PL/1 LEGACY BASE AND THE « OUTSIDE WORLD »• MOBILE• WEB• API
USING PL/1 PROGRAM AS SOAMODIFY LEGACY PROGRAM FOR INTEGRATION IN• AG SOFTWARE ENTIREX (DCOM IMPLEMENTATION IN ESB WEBMETHODS)• IBM OPERATIONAL DECISION MANAGER• GT SOFTWARE IVORY
15
CONCLUSION
CONTINUES TO INVEST AND OPTIMIZE PL/1 CODE BASE
TRANSFORMS THE LEGACY CODE BASE TO INTEGRATE IT IN CONTEMPORARY ENVIRONMENT