ࡱ> nKڍڒ\骾PNG  IHDR , |sRGB pHYsjKIDATx^XTWU,{M콷51h{45k;vE`A,(tvYEؽٽ>>y93sٹ̌yFF}AsH**?b$O\bJL\Rr")E.6}kW^EŤrNE:ӾA%lFI@#RIpS+wm:r{J8{a=1=[ժVƃ7d 'eFquu˱kn==h +cjeao:8-4jFXIJm_sĚ#gk/Mfץ #P2>~×?{|@^$<8׮9C/Wn=q&D9r!Ņ?Yޘ&Y*r7kՈ  '@N 7BrҏC^KΌ@Ch7^fdMkEA#L Jԝc DO aevjpBNd"@0Q'k7vܝ@IXL ҨO< ӭY StO_}808RXIպ^S.*;u!D@LIFF/qvAD&V٭ 2HBЅ87Vժbԩiկ5Aq$ J"9w}s/Mlq4'0f'鵇./}5AfLT4QzڰHKnjD@ Iܷ.(ԱɽQ`UwQ$IϑKsiρ,ZbiҀ֨Jgڲ/R8@A36"7qLY9 +oj.0'j 6{#7]o5s#.bt('&4:0z$2/\s \~,<K6g8jKDRȝDB|+bII@ƧS4)=7 I&&B@6N" (| d"ϥfBw9$8y8+w}5w7&>[d>wp7oKRDd# '1gݱk8؞^m%.D7m7:I*" @BRYn NJ"<*fԼ'>ȠcjzPu"`gcrja$:$ Q'2tCMrRh!؋&D HI g/Q?zb׽esGP9 1Әr% 3XC%m2sӇdiI J@\uEi9 "U@5OFgD6yUR$|Jy;-xagCfRn:pNiCjwufhh" _XI8yc-[L5Vⱴچ! >gBfi"1;߷9"@r$ vswp<=bSk)4.81Wgn<3m-U#b ac<4cF"hNԵ˔.5&z"PiIOxI| t٫m'!4(OL#.DpȺsʚuћŒ@" kvbFd2uA5 # IC֍!I=UU!&`Ѓ@@H;"&A_umL,0Jba_Ʌ/+#B.ڒD@ $f=:zvA[oǵlŒ4" ;poYw)E&D GĪTĔ,XX## I zF!c " BNӲZ:SHH†[:A0!Iw`ݡL&!D|t`ߴEΧ|]w芶VD@6937q(+R$ sW$"N&kJMNg;LOX,eㆊZIW'}SDD =$@t%I Q"`2Pjb&LfPNC 6lcM7vhYK%yD89Ĕ7 GL*. $%I,v8 DZxuD@j;obVޤݑ4hwk'D pz H]DhqKDWRȎn"'!i#?"IDF}By8! P^}쨧hqK+] $"RB2B"49ǯGňIkFec249 :0 +ap^ D@Oru(PJɚĚ 37dI\m D@ }4!/:')Y/Ԙh"!jv#"G9;CҙHC"dgˍ@Nb[ eQ#D!@E @ 'Ʀ!8těڜ22H~iD4I< &zj>d}H&D@OrpSԏhXS'**=Jlꏁ$R#/H[" #t\FE@v'mJO7Qfe% dw?d> $D ⮑΀I+eHOD<'ML{*gmzOYlXkX4N>qAaoX'yԙmNN_4mߥA'4"-1|]l1[HO߃#2L!%ÿ$E>%O! D@g9ݤ3O@88I\b ԈJ?'q~pFFDTD4T%;L?'A<goTI 3osS@vP?Ӑ $;yQ" $:zNs:0 qdx] 'xA⊒zD*ӐȌ"sNԒE'$$>K?$H000Z8 'I(h%!u!:li:"z'v e]m;i|FrC!}j'e7I_WҐndsj|樝DHel# GF'OɫxkV$wǔ1jKX:8EXehbI PUyNx,Sh+~ < 2y@,F֑#K <*y㵏,= TKQ(eo@IEĻK@_t* w,._N Z@^h"QbbPCBDKLF:#}KLA̲To)i/fPx~"NSJ~k\++ K m/wRJuRh wB>㗝@p"nmeumZ<.,q_9qzf巭V6/t~%^l=|Cm[gA)S]i}obv[ >r)+Vޫ0V{Vglz4JSzvjo()& P΀_8HT-W6o9vo/.XUkPi@z^- oS22[RW+a_E"N lvj6z4􍙵&V2R?{ŷciXԮS7 }ѫ40{/WA36wÐhyyX3G/"(Z@^s@ڊI Uټ^Ǿu]2t~ݠ|{ɫÐa&.q}tQW7?wŞu^,MvL?*UհLL48w# K.nN,d—7MTQ`p䒝gێ]zOk_6tGnѠа>D [WaMd^ߦ tZk㻒x{C4?Vv_cx+ o;j -2EzbU0,Ɵ2}T+n^w3C%b`[M u-\[ )B!`,,,pgTzzm'οx.K1\ONUw˄ }_Km.3V Kl߆pW}|B!pmW1oLoz6^ ZOC6"  X缎fkx܂VbH߉P]_iݛ% Г$({)Ǜ#\8;H6j!vȰ2{_d+(U򫷱ΌskU,U28=u-ꥵqeNo"+H|s?7($˷aVl248L䍿vuZql[< -Cb8J%y!(8sȃ~EĻPDݩb$[*to (~?tafD@Ee.o\3yN`Y{St43K ;gGviVM qv3>|Z}ovm?qWk؊apۅzp[Ƭ.#pIJ _j67sQlx}Q"nGY\F{F6?^u. ax5c ^쨱&`Npm3B~djG wKy?cTJ]p~B\lvܬfmsܣeMS1T w~!f#Uxl1/sRz96k|`Ix%AA0]&tTu*{t/(i 8hPX ;ŒS~Ȳk2]y[]Ғ{ +[{[6ZjQW6*qJE;uu4e"unw6Aooquv(QEkj@HOcuOFO[\F)_ۛ[{n9G̳vmW5_ifꤣy:uAs5Idl.c: \&0È.o[bVJb"ZP"@sjޒO}̧JUEj{/ܞvvb'ϩF^;7ʹ?kzFHB+i9Yug 6t0w 9B$p-O]FHǼ}ekڃgN>仇V4EZ5\T}"Ny5a! 'frد`E{k~p h{/R/C$H`/|׸5U#*ȟ?zBLbM"Rg]CWWlT{C']pґ;u7SP׉5X6EJA 3&8\w2.h2) )7L*='.\I\Dѝ%5{5fT$'I`Yۈ>D@ (W\`\Rų[B٦~BKF}A2;D[8?M23h$8yYcYIvϙX|pաh.Tsʥ?U<>6I0]N5+0v7'&: f?]i<5eJc$-l71of(0)(IK!қ48~KĊυE*Ӷ6DNz҉ĚTEZ=[~z ux@byb۷`~7y)H֠5Cl3/6l^R0ڽ` nP8+'ZkȋCjfo  :: }[p7qNvҽ {DIp*vb Fc߾.cBݳͫzReS &r227:u^ )R:5lCg@}f=.)ul3 uº6d0FOmkni*\m;Jp)À۫7j,Iyunw-jc89pd dB!]D!e^a:&(uv[j`).ߘ^ͳ+ $ DKQK"/k_Ձ wq >gs32-%)55YOR0(C@z,^W 0+z~յ1~"I~X9(l怏%c%>K :T`A&K<r!3?aĂa׏̀cWq4c3J Ql͐.վaPe|>bB F5,b;b6i#r욆!<SN2uUQnlT".+Μ6Y+fYVM:O(@,0 l71*a  _po[:hVرR#?49Lݰ|XqZI:]/(eW猗ɹtOΣs63IE>8@BKq~y[XڮA%dL> fZڻk&qլ</8ya^L ߰Z? 6Vk^֐ PwݴjC dF@j<8`_t9+Jϛ~l?kwm(bue*{lm&I #ߟ\gg}udxJ­'-G/n\Cb\B'+z\cГ$V)=ZԨ]記lY3v)Mp/z!P_LŊ xCCa\ex`LpT66XT5 )TegĺO.30JBLm؀` w?U!/?e; VVixgQZG̭4ej6yU3F߁:IH;/'Ny _CH 2%tdF %vS"Ɋ֍tkCu|Yx7Y|2P2P#z45| YunQ foB}ulek4'N;LXo;#'QK;B@V#Ӵ@,#T8%ۤ) ;^hg{MYS/Wgft9a%Kob>\}5zĮYG\,I`Zh[a,\ ސycq}_u?'HLiQ\nɽqby5yݏ=SهQL?8Ǖy"9 A"95Zܤ}J , V#q8n3fi3ZY@_%s*:nqFmLJ5_f$eƪDE'~Xv%ґ5{[*z~pm / l8+xīƺB/Xbbre./oqz rv1N cWH~ (:7bx.^ܵx1?<\KzVD/\WQx V-1A τԓVYBwZq4Ui•Yk07Ǒ).ARG|\4 0m l=1$%h̋'^5L-//]/ 5͝;AL$P'8EL"AEO|!-GKS7 Ԋ1Fa&)(6yۘ5t+Iy5bsr~¹\ D w<0 u5.rJ),}#z<1P$서-.ͪq39YYy||l!RGfl0~.yrp(%gŐXr"P.ѯh4\_Vhq'l&dD Rެ4MBd&)D٣:X6HEgںWQ9svuȢ.&A U٫mm91;(LV ͪzHn?f\Y1J-J=rLY:mr񌪣{j;59;  pT p#2ؕf(&ۑ`P/Y׍q_1KMY0a: l(ϲn 2E6׋w'._4/!9; K^ҩHQtiRxmt$ĺׄkW=~L93f+4l4LW a%?+irpZӭE[~cbOnt4 ?~_qk/KH*0IR_ʲ]u}陋]n u XYT1זr*ūWU"Bj + kV-`: &;C ӑ%VZiH"uMN'j#Y F XHU"h e'Gy8 pna޲~ 8 .Wᡝ%|W%0MԨul 4קCiDvr.+kr^k'L{q9$P DdIBod1A 3:"enˈKbPU}q(kNXm?q,! ,!f P qL:Y]`MrL?+^Π.pmDkw-N (jC $J =봯z9BٺAr9aGرDW7jc~ZVID,kWfeΊ^lq7V /pl|7Du,(0[?CE8 8#ȋ<M{t,x~`;{q;y~(N;%%PVżo?T\pdLH'>,E!X==bwqF (*<*f暣l7sFuow'|a_ w5cBHBG5V eY4$ wY]:kҾ87k҅*v6~־MftnҺn]HaҞ|XupXƟʒ/%042z_ ]W)k]kt #oGh1Jr/Ȫp [I{*{/2IbRbhFf Y rjFUK%_#£NӰcH+S|LOثؑn f(gW62 [ G)VYMG֙#s.P]%Q4ǰM+beJ%^s#'6p[mPhR`i8C]tiQs\y-ňѷ1)䏉=qQ o''lҀ6S3P*NW䥰q Oy2a>N:nt@½&aC*SXD`8wl= g?|$&jmzU;!)cfNi) I-kp_A%A =2c7:-1\S *6Ӕ4{V˷(wcv{:[7A5|#`I+ٮ!PTXIh{tZr[y2p(7cD5t"/a*[*/ 8 ^+SXk_:^RIbbخ൚G J@Vt6:q#ClKUzsMSR|3u!ӏ5!,إCpRv6Eܜ澢XĔ^? dM $06c=„ ѕ2 p؆GDofonWư3Kk_!]xsEn=~ o e][ fX#.z|bIr<Ь7c pAi]&![/.EI$0bBwBmD 0yRvkJ|runۏBc߿22fmX0kWW 'FJWdk/Į؁wx55iOeb;-F-brVk|C?6D''Yxȑ@%*e#b*T⮓Gtl.^J]/^džY1LvbiF?p {d-tDS*i6x/ ̓n]rŦ_-u(SFtbu(Y`s@JhȀ6dR6p`Si ||a␣)1eZgCYMHo \9哞y4W[W0/+M}!DT"E<% zv7cz<dYWh>v@ʕri6HDFO/p,[]Ejh6se?q ępTI$A'[EMIݫŞ#jyn_/R5f%,?֖:n]ױ] ג}&T{Χ 5y*T?lgFPpLdD=|q=ԁw%cTZ1oej[vϽaf_ h–(/97ɤ4p4E66K\$mv̱='j%& }g2+ig([O:Hϼ,~!'D-X%&.Iu|"kf65+įro%7Fi*. /y75WðX̻BzPR*Pl9>1%C^rq@]V/}ۿxޛ9pAYRGpA%mqK緊?aA^TR-` I[wiV]X(6O# e~GgB Eeڣ7V{K>NYYCejf%;ԒA"ٸacvۉj?ѱ|Ʃ/D>vF=@A@2\Gį"D}|a`ei RKJ Ag8w6r&&#DQOB`o˷Y7U:Vp;dSY9 @`U,QNOG¸I@8$L'Ō@rvfBG^yܝpԡlv}MƗt48r|G@?Nv@Əo&.4uʅ'O@Aypw!og1'x{;kdD\`J2P_N S22<"ViH$tCzяs3Y& hm"HL"`'/<|]=o'\fD?qFjʐv|o 7zhSy"&&G'QĞtRJZ%a"&K@gYL>?qEL˗r^wIs w%S^w]I00 }[00sNj ͸D b%8^@"MDesI3$K!$Q%` '@HBa`U䋞4,YmOɪGC0U(s>%A{W 49JD ACa't'D@<ii_TCZBNF1]E% ΒIA" ? 0ep;" yPyJ q,_0t  n-j "@I K3.;҈Kg~43=.Q z2s7$2vpzŷwg솒}D@ Vt}'Gt$!tdHݍ+L(m7kNRՑV W8_9?'p>8&aSL" Dz⇿/qm$HGs#!D@+I$(#ˈZD@0|y܇<`Hh%g,; S W6wxe='FC@Np3b F 2]uEDׄ 2" Q'ǯ2sSD$U%KG˚e*_bD@$+42vIi%z%:(Lz&8uڽ` #MEE^:D@:$@*}>6@l#MOdQycb\IHCd7s9I#)&5D@^d$髎@^I[n@kC/li8"`|$@mL|yj|3A"0mXcFrl(3W]2MeGg#Hx"@Xȴ79GArNkg ARBIw :xޟz 1MIZ#GqȜOi]=Od]nPrHD; @~?x-C^ɔ2Qݛ֟R#MI`Sa7>%?:\KR . LHD}d AOz|3G~ho+}mIC" wF$0BhEN_Mipfb`z?iG龍mj 06'b;W0yR{[3m[_7jMnId2AEeϟ{DEt{HDױ{c{7^ȪDȜM8 h zizk j]k 1d!wql=uZΑ) MM~HI8LtZ̜uR$ßɁ@l9i2D d"ݘ;>=)9T:8Vz@$uz)p*y0y%ubVX=-f0StYC#g;赌 ͉R0#{$N0i'Q?|q30tA21#RO=[ժ[ɋJѬ)FԝD|%:&o,/mgOئ]JyIzCOGxTS7/zFaaK˽`֯\re+"$rЊ LL\>*SzWIhA$%|&ηy=6VjPMb`gë;5&D@ Ipb˱k(DŽ*ԡa}Z,_NLA Ӎ9 ~P_:{ ~=M5<3KcWg'L$O9Oj!{ RB"Xpwݦ Ux.jeia,D!x읣]ɤ?6<\ tlT_u*y؃L'5G?^ZC<y}q$t IC -jq wo D@I=zy2-|yкnzK4]9x\"@$IާOWoãbq66CnI4nv[%_BgYOʕp/WwL4 $@NӂlQ *C͇!AaQء 8T1.T,QLq:ܐXDH9 n#.!.iX ɩ)31Y5G" 'HrGѠ4[(πŁ `7[" ym(A4 R%sz=9fIENDB`@=>Ac-PlYe8ZxXkA~眳ήؐBEؒe-R⸄=n%w?j+?$kR$N̜3}2}}fADKu݂t*g :!. Rm.ģ/#0(mc;_Z'S-N336Ҷ;mmsMy-Ұc9u=]1!7qW`5p}=OIsUNdcWj5Q@}vǡ<Zy>0E\sɴ҈vfā@7x|QǟL&Pڍ9` J!T|1ޖt[-Bsk#SWG;@c=;^_%8P%M]$?祃7=16zLim,"[r׃7ʛ[3BQ_6u~m3pߢ>Rݳzq < HP#5de,O#&崣ru?!o-vjW\Wyl޽y!rikIm|VTgTˁ}o$ s7Ov؝Z~,R//)Qp忧3'Ue6nUl|6Z,B¹C=Z-̏}/7`{,ZM7_]U(|ۊŁo `m6oVm@}|SRv}XLyV|jizYViYwy}t{oxZvtRx^[{TeR{=uMsohV|zPyXbe]WIY[z`xwd{az[a^jp]ypo{tNOpjcwRs~d}mqyglvp~vrncbe}|avsL@}[|rjOyJ~fabjlld|Yw\mrr]e_ee`hznkpej[XaTlZ{rb`qSYvbP^nmu~|qwtksdysmxufdherl}S<}UNzSeqv\cuxvk~tih~}`~Qm\{pgq]p{ll~ps]tDie8H[oKp^vy\Ae4kTrwcyt|vvtf~y`Lt_O3^Q={;Kewbb[yIiIDVRriav\peqzy^`dI*vjTyBt~j>MwQK\grxnri{jhgknmGKEZ?g[s}p|IufyD~usnj^zw mTDp`b|{etzPOWS_ezI{yg2fCvVi|mb(Xo~mQ[t3U`\yk]tuPVGntbXfPx<_jj7-YT`iDlY(}rJg{k:Mkf~(jZnvZcPm][7^k*dF\Qxa=oORpWyj3ftk}a`nijSixuyd}{Xg~gtVpFvb@d|P|n{uR hu-M|{KpmOnxi}^K^csgsvtOWl{\dFYIzkllL}W;hfcvmlUWMaLtKMh\1wA@ggSA^`O|abqjoHbtaZl_UyRSvmn+5`doj9ifl>v{~VsLd\qAzQOinLh~jfQq`xrMAb?db5Yz~L8xaT{DjZ-xF~*@vknt`sals|}~q{~vxj`q{iN|{xekf]hbvV6zw-;~fXvW{)ȅE_Xcs~F5d9T|vPwf\8sgvN7cL]~>h\KYtb|eoh,C`wsVW}VlFuQRGzEMF"JRj|~l|QofnX|be]]IRI9+Vjh_gspBntnM%ā@ P<:vWc\R|^~>_| ^bGo{Pfk;x~xik_Jeu>(cD}916Btxcykd&!jGwXQD8~emR^x[kvShZ@I^&`euOklBYE*9\y2OYo^~h]Myth0nhnWijv}xfbtiY`uoOi^fOjhZ^h\i*t"6M.\eO/Sq|lhWul[S]Dt~l}0hhrWu|zsdgj_LF)E@Qo2WU}P4[b$aq:t[nL`d~pci{S_yv|9lRMOOtj=h}dJLU}dkyeJ628jshlz^*f}yXDBAqbKSp|cTjsjehZRzdKd=]DE~Z)LmwxV/'P_.@bnQL8DPZikjQF;HS[+V`fdruz{ngu}Pi}bJGW(J_W{~UF?Ī?Zdg8~xC-wo\w`xnv-c0ewz]~~yyZRao\p}t~|AktbPyl#{\X6Pu?ltdv2^|Goka[C^imvyklcfn`P~eWawScXo~6g}NǂCwzq([t-\vok}nkXf^~{~zv[yV9Nix~zgNoon]M|p`bNs;}jtMZYux~iQ\p\yQ|_c}|ba~\t_D~G]{pk;MpQCpldt~ri7sq[r[kex]h{TiT>_R{]tX:x#[z{UT{ne{Lb_qnrcnPChl^rr^zYiKzLS}xomilPz\xh[cVWWt7|h`~gkrku^^XxRiygl)rtWrfy{]rLyx`YnCNyWKrR~Tyzlxr]jvsTlsbZ{pnwG~](ip{rw0zjxQ{`xQKv~frc^}fu[o~r}ndooLBz_~s^}bTuJ[{=NRL~}qfy\~`rLs{urjmmjvbkzeVvh}\rlAwsX[exPTibplL~Yigrpsjgim{]vpgoDmmfwxiRRpxS.}hwvg`geS~t`uayoyh{~wnn]{|_imgSxWvegr~T|tkm^Y}h84C9fm\~k^jwa}ofw}lBtsSa|v|jgvhieFqnga]pkt}YC|L_zopTuk^dY~snPQGe}wbxZsdQvwifsP`k\djgmvRgMew_~yyp|j`qtoznyvsp}kjuWmq\KBsiZuDO(bcjxYkv}slhkWj[g{zdy^xnhzLVs`[}yaRwUcny`zrbotq}Xv{zwWus_W|J\wprfqrdnTMzev`htkwhos]zLk{jkm^nxx|mfUgqnTobwjiQwdt{Jtfrruvl]apwg[cqk{gu{YlrpjW~u\b!jQuo_z|ptj|rpsejXvQde`cnd_pOyzYavugb|qmpyo}Wtxy\gcu_c{^iqns|[hpLvttPorhkLsvYbMlOej~b^i~v`htvxw{v{{tf{t\{u~Q|lb;]D|mo}XPkoul}udxfgV~x{wqkkkr^df_bslypz}b~r{Nl{n`x`?s[>uePp{ewi`e`sv\vPuj}u~tg~ouxvqwu~gwzj|oun~jcjr|TAuShP:[Yksdgv{vn~k{xu}htgxngugvmptqroykwLkmdr^yhRdpQt}eYsM\pwajvMl{ddyYlo}kl}fv\|X~qrjyu{d_zn_o}y_dws|sauxx}hSSQaLsnYvjv_x}{znvs_Z|jXoy]mk{mvrknsnwyUy^yg|`T`}sglnuUspYasesXUSZ}t{fzpdwnygbsnagsws|kyfhp}nsjtktxp~iwco~xov_GcrW{d}VPq}jrxwqyp~o{nnvzmsiflpshpnclkuZpszyYZV[}w}j|ho_o}^jq\he[pssqolya^}xtgucsksxhrhXmisi|who|syv|dmgusl^lpxpYs|v\T^dxk}hxh|izsvzz]xs~[wiy~itkxi~[b_Wiwgmwv|{qjrVg~urpxxvsaY{ljenf`{muxXbkRw~y}{wzr{z{swrrqzmzt}ocliy}tZZ|ru]=[Zdkn]ujvkh~{sxtmuuov{eyc}ubonynU~`vzpQdri\ufxt}rm}piww||tu|owd|rYdvhr|e`hTdirxqa~]zfr}_qpvgqvkgzy{r~drtubjvrXdsXOsw}W}Qv]upwt{akr{_xp|rcpu~vlz~vw~sx^Uwhkxnf`{z_`tr}{j{t|mwql|wepqfUv}Z[s`bo{{w~kmlrjQp{kT}|kS`_Y~o_zizomi|trqtLVyqfkxksl`t[hsv|{m|r~hylxzdu{qwtpuuzzo~ptj\loy`In|W\_r~pgm{~w|}qrnwtjnry{hokXvmiljyKK`U~tb_owwmzsv|riscs_f{Zytngmniryqngstebum|jh{vxyx~|ypoh_{mjkbpfam|kqmg{zeciwl}ay`n]itkvq}yiw|jkio|o`Wxk[o}qWbedquaycuhn{kq~poqz}{xrshz]giYzqdk~zdclzjho}q}ni^r}gutzbzqPZu~Whv|{W~ouvjktqscoayW`rxipir|c^~uhcxsg[kzsovjiw|hw~w}so^j|jnx}sq|rx~vomreiRZzw{^f`dYyj{nyYixt\^ntle|mzgyonkryxw_]zmRf~c}bpg|dj`~ta~zs{zt{squwv{tsx}wmzilkhovk}qswtNa~\Wm|znwxhr}frxrqmr}qd~lz}_bc\\rvf{j~wWtl~~keucj]v{hybe}tm}suap]cuudlwors|zqfiu~z{uux~|py}sp~{o{ssuxqoqtgWvi\d}umnnqzzbcqx}ius|dhyv}^cy}ohpgwwomrvq|s\m{Xbr|^]y~{prwvuusxirwl_xmeqqjl}fdxvp|on{{kwswtgwv~}k~n{zyrkcwu~gmkyyzmydw{w[]`Qtri{[ookjpvwipvz~|ssufSl]Zxrpts|tizkvhT~w}|p|}{zxyoo}}stxumome}rszsh~rjZq~dxl{srutpfrsg{o~i|~}ijzzV_kxc{yzu]xpeXqaauqfrv~wbjwwwwx|oyrn{zrj_vj`~i^ke~n|w~wk}xl~}{|y{{xxzej}l`j}i{sycsvw|fxe~vXcwlpk{ytrwylruanqtmiovjo|cfxbqmrvmqzr|ppt}}}vgzvir{yzpjn_e^}kzi`bxMszbt{tbpzs~qfmwrzwvuxnu|d{nn}uku{qb}kuk{[~hpsvw{o`q{tiyl~onnzo^jfwwjtc}aomttcmuuksnuw|}fzqw~x{|wwhz|w|whzkql|qd~vxQk{gsskhpq_[ywrynyygvzofiipuk|grxfs~hkwvk~xv]p{ntory|e|~|{fu{|||p~yjyh`tnlg|s~wgr}ptoxxz{two}or~vou|w{qsy|~~jvl{h~kh[vmfxs{{quxVwlxzrnx~h}vm{u|pi}ogxxo|vhyit|la|nry~zyu~lsurrg~}itq}unvjn~xsq{so|{|jhr{m~xpyp~||l{qvomvzlut|swzfret}v{pt}mt~|spp}x|tuwuxwk{}inopu~~hruhwyosqpy~}~xmsvustx{trnrp~pwzpvskyuu~ezuzoevtl~wj~wz~|vywzqv|z{r}_m}vvy|ts}xzzzzxvst{w~rn~vxyzwwszzhyzsswpi}ht{xm}~mo}l}ut_}{q}utzt{xtr}m|w{yryouhoqzrngzsju{u~q~xz|~{lxhk|uzsvr|t~e}~w~ntvuy}x{|xvvww{v~uiu{wz~wspnkcvstx{xs|}}|o{t}||smt{rovj~{vxth^xqmzwo~{ow~v~Wuz{p}rp{wudiqwtbzk~wz~x}qr|vvu|qxxq|zty{|zhxx|uu|Z{p~kxw}||twquq}xpuou\z|v`ncuxhxxqrszy~xsw|iiqwyzlzrtt}votlz~zvyty|ot|yksybekv{s{ow~crxuzl^~}uqsxzcoyhn^{tYpkytZYhd~v}ogzi{s{Z}gumwr{tvov{hYt}bwwursb{fi\y~vsif~pyy}x|tvukstxclp{uxswwm{{~|q~OgZgtn{uv|~_rx{sc_|j~ttx~pjriqvorhz~qlvno~w~wxjndxslynnuu}mq}lfynp}w{uup}qX[{kv~{}_k~zp[}ba}kajt|}rmp_fpnr}w{w||~nyljrwrsxqtm~~v{|{{l}h{sxZ~lkzuytwexngoewszv|u{l|wl|gwii{_rt{cluehdr{{z{kjvn|wqypxny}}qjxpcw|iqsz}uzupv{vvhfuuh{ryvzjovouvk{jtwt~paxek``v}loidnrmys{xyxwmt{u~ev{p|muxjlypv}xy{pz}~tux{sn{zzy~xxsu}u}oznpsxx~|zzn}g{aU}rwr~ras{qklus{sssnlnpqmZ~|rs|yovtl~as}|xhpa}x~{z}~rx{yeq|wu{{}pczwyoo{uklw}pivmn`{qtvxt}t{pwtvurqVw~n{mrwtn|su|r{{{q{wp~uuuzfqwzttzyqx|~~q~rzvrr}xsbptq}r{p}q^oztvrnx{}wtz{xucd{mrxq{wvoy|pmnuxrjzrruz{vkqvjqt~{~w~x}~yesp`yty~wpuq|wxrkrr}u~h|x{uf~qmstqm|||xmuyvzhm{|}{itsqckyzor~{~|_}}znu}{v~tgsv}yqjttwcy}x|v~s|qs_mv}is~~x|wu}ylonhqo}}v|{q~oyil~vsiz~uy{{t|ps{{}uuyyz~|dpr|qhy~}}rxzn|~pv|sk~z{~mxwnzqxu~szjnsclxwrqzcsybjmwy|w{rknxzx|yxz~uwqt~{~zq~rwznvzzs{~o|~~|syrv{p}||x}|zl}vjvn~{y~w|wmwsmsk{mouzvmq}ryxsty}u|zvz}suztv{xv}~w||~tp{qk}xi}stww}v{uwt}~|vmzs~u~|squwzkt{{bly~~mo~n||}zor|jxt{zxruxq~vq{}||u|{m}|~}s~o}p}|ypvpu}|~}uw{oyu~ww|~{txxn~j{sp|tqr|zvueeps{t}xns{x}{h~}{|~v|vx^zuvw}uu|uz~~t~ytznz}{qs}xxx~{wymh{v~}uoxyvop~~yjzyw~k}}j}qtw{|rp|z~vovz{zrw|z~zynvzt}zwyr}{sxrxwz~zx{xxyxtyqqs}z||u~llqqy|}q~}r~rsyj|x{ntz~yux~wytor~yzvv{}w~w{}w}u|{~kn{{yw|yo|z}vrz{x~}~wxyttswxy{ih|n{xmzjp|m}z|q|nuz|~u{}wzqp{zy]nwpqwtmonrxptlkjwqmziq{rm|~~|}wm|qpzuylkwsg{kv}mrwwc|vwxjzzm{x}~tovvxtyuw|zewx{w|}z~zwxt{}~zuwv{w|vntrxwz~|{~sxu|xxrz|y~|xkruvuwz}{z~w~}~~y{{zup~zuv~}x~rts}|rwxzrq|xxsw|{z|~vy~zwt||}ronsyyw|~yt{~ztzx~vt}{~vvzq{ysvvyrxs{vy}~{wv{ql|s~|y}z~~~z~|w{zy~~{w}u|}|}pyywv|x{yy{z~yvz}xp|n{~rqwi|ipxz~{}{~su}w~|w}sw}z~tx{yx|u~xt}|tyy|~}z~~zy|}y|w{ww{}}~~}yxsy~x{y|oxvy}}y}kr{ywt}z}|}xq|}~|{|wy|}uqx~rrv}|~xu}yyx|~w{t|{|}zxy{|svuvzq|y{z}{{|uu}z}w~zrs}~|q|r|qxx|tz}y~}y|~yt||yzp~{~|x{z~w{yvyy{yzsy}n{~~v}sz~r}u|wuzzxwtu}}~wu~u}{~q{yow~{v}x~v~qq}~z||zx}zvy|y~zy||z~~y|}y|u|z{ztvx~zyw|z}~}{~{y|~xys~xvvx|x|ww~z|~stt|y~t~}yz~}}zxx{w}z~w}yz~xzty~}}vvzz}tyv|x~zyt{|rtyzrz|xuwzy{~~r}{~{zy}x~|}}|w~}x{|ww}~|~{x|}~|{|wyvu~~x~v{}}~{|}uy|x{{}|{t|~p}yz~z}vun}xuqz{~z}{z}yw{z}y~y|x{{|}~}{|}z{}}uxz|z{{yqp|xuztu{~rw}u}~}x{|t~~wy|~}z~{zzy~|v|~|}~{}u|z{p}{}z|{~~~|y}wtxyy{~zyy|w}v|rx{~t~wsv~{}s~vx~pwrxv{|wz{~~q~uwy|x{zz|vz|}||y~t{}~y}yv{|zu}~twry}}{|z|u}v{yw|wxsx|}{xu~}y{||~{|x}{uvz~tw~twz|~{{sw}|~~{{wtxs|txy~z}~yssrztzww~w~}yz}|u}~|vu~zwvoy~v}yx{||y{xyz}|v~z||vwswyw}ww~x|zw{wz{y{uzwv}q}{wwvt|qwyu}}{zz~{y~xxz~~~~~{z{|{}{~yyw|zz|yyy|~{|{z|}|yu~wxwx}||{~|xwvwwy}sv~z}|xxv}wy|s|zy{~{~y~|w~zx~z}||}~~{xw}{|z|~z|~z}z{zv~~x}zvzvxx}x~}}}zxyuvw}z}|}|~}}y}y|}|yz|{z}x}w{zwx~{}y|wuzzz}y|{}{{yy~y~{}v|z{}|}~{y~}~~}}~}|~y}v~|~}|wx}{}~{|~{zxyxzzy|}u}~}x~|}~}xyzuz~}~~{~}~z}|}~~zz||y{z~|z|{~x{{{|}|zut}u|w}z~}|~zz}zw|{}~}}|y}~{~}|~~yrz~xz~}wyv~wz{}|~~y{wt~zyw~wz~}|r{{{z}sw~xzyy{~}x~y~}}xxv{~x{uww~~|~y~v||sxxv{|yy}y}~}|v|~}s{xux|{{y||~|}}z|||~x|}z}{~~}}zx~}}}}~|y}{|y|}zv{|~|}|z{{w|z}|yv||u{~|~{x{yz~y~}zzwzyz|~|}~y}|{xwzy{|}y~{~~}z}~v}z{|~~}}zy}~~~}||~{{}y{z~{~{y~|~||~}|y||vzy~{{~{~}|z}~|x~{~|~{~{}{{|}{~~~~~|~}xzx~}}~~|v|z{}~~~~~|x~|v}~{}~}~{|~y~~~yz|}zz|}y~~{|}~}~|}}|z|}y}{}}~~~y}~|{z|{}{y~y{~|~|||}{y||||{||}z|{|}|~~|~}|}}|{|{~~}{|~y|||~~zz}{{~~~~~}v|z~|~{y~~z}|}}{}~|x~}}}~z{z~}~||z{|w}}|~}~w{z{~{{~|~~~~}{{|z}}yy~yy~|y}~{~|~~~{z{}~}}|~}y~|zy|}~~~z{{z~}~{~||~|}~|{}|}~~~{|~~{~|~}~~~~||}~~z}{z}||}~}~~yy}}}~~|~}~}|}~}{}~{||~|}~{~}}~|~}}}~}}|}{~|~|~}~}}|z~}~~{||}}~|~~}}}~~~{|~|~}|}|~~{{~~|~~~{~|~~}y~~}|~~~~~}~~~}}~||~}|~~~~|}~}~}||~~}~|~~~~}~~~~|~}~|{}~}}~~~~|}~}~{|{~}|~}~~|~}|}|~~~|}~~}}}{}}~}}}~|~}~~~~}}~}~}~|}~|~~}|~~||~~{}}~~|}~~~~}~}~}~|~~}}~}{}~~~~}~}}~}~~~~~~~~~~~~|~~}}|}~~|~~~~~~~}~}~}~~~}~~~}}}~~|~~}~~~~~~~~~}~~~~}~}~~~~~}~|~~~~~}~~}~~~~~~~~~~~~~~~~~~~~}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1w+             +""$#-&&'()  & ?b$ڍڒ\骾K$"$>Ac-PK 0AA 3f33f3@v)ʚ;2Nʚ;g4SdSd@z[ 0@ppp@ <4!d!dl 00<4ddddl 00 A9___PPT10 6?  O =| 1*       /(0) !"$%& '!(")#*$+%,&-' ` ` ̙33` 333MMM` ff3333f` f` f` 3>?" dd@,|?" dd@   " @ ` n?" dd@   @@``PR    @ ` ` p>> $ (    6 P  T Click to edit Master title style! !  0L   RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  0 ``  X*  0 `   Z*  0 `   Z*H  0޽h ? ̙33 Default Design  0 (    0t* P   0 T*    0<`0     V*  d  c $ ?  0  0b0  @ 0 RClick to edit Master text styles Second level Third level Fourth level Fifth level!     S  6j0 `P  0 T*    64n0 `  0 V*  H  0޽h ? ̙3380___PPT10.=o; 0{(    63m f$SPEEDING UP THAT REAL BATCH OF A JOB& 2(2% z ``l  ``l,$D 0  <A ??``4l   B`Z > 2   0p = Jim Poole 2 H  0޽h ? ̙33 vn@(    0x?` `XP___PPT92* CONTENTS: REPORTS USED. CHANGE OF FILE PROCESSING. MULTI-FETCH TRACK-LEVEL IO ADDITIONAL THOUGHTS APPENDIX: BASIC ADABAS DIRECT CALLSN 2X 2$ 2 X$ @`H  0޽h ? ̙33 P (    0[` nA. REPORTS USED., 2  @`  0U X"1. OPERATING SYSTEM VIEW: EPILOG# 2#  0``Z h22. SUMMARY REPORTS: BY FILE BY COMMAND BY . . . .3 23  0 e \&3. DETAIL REPORTS: COMMAND BY COMMAND' 2'  0h0* W!4. DATABASE FILE REPORT: ADAREP" 2"H  0޽h ? ̙33  d\` (    0{` &A. REPORTS USED: OPERATING SYSTEM VIEW:' 2 @`  0s -? ADABAS PERCENT VERSUS OTHER PERCENT ?@. 2 /  0`,$D 0 1 TOOLS: OMEGAMON, EPILOG, STROBE, SMF/RMF, etc. N2 2  l p p,$D 0ft p p,$D 0Z   s *3p  <A ??    0 HADABAS PORTION 23H  0޽h ? ̙33___PPT10+wD' = @B DF' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(+8+0+ +; p `(    0 ` 'A. REPORTS USED: OPERATING SYSTEM VIEW:( 2 @`  <40P  w+-----------------------------------------------------------------------------+ | JOB = jobname JES NUMBER = 30156 JOB STEPS = 1 / 2 | | JOB CLASS = A ACCT NO = 0000099999 INPUT QUEUE = .00 S | | FROM 22:13 ON 08/06/01 TO 09:51 ON 08/07/01 ELAP = 11:38 H PRD2 | +-----------------------------------------------------------------------------+ |WAIT_REASON_____________TIME_____%_|0___1___2___3___4___5___6___7___8___9___0| |USING CPU 14:16 M 2.0|. . . . . . . . . . .| |ECB WAIT 11:19 H 97.3|-----------------------=========>>>>>> .| |JOB ELAPSED TIME 11:38 H | +-----------------------------------------------------------------------------+  W  6p`  lEg. EPILOG (OUR TARGET JOB): 2  0 `  : 2 ,   0 0  ,$D 0 @NOTE: ECB WAIT = SUM.OF.DURATION + SUM.OF.ENQTIME (almost)A 2A:   6Ԕ  0 ,$D 0H  0޽h ? ̙33___PPT10+xc D' = @B DF' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(+8+0+  +       (     0l` !A. REPORTS USED: SUMMARY REPORTS:" 2 @`  0p `  : 2   0` |. THE ADABAS VIEW : COMMAND LOGGING, CLOGS 2/ 2(  0T` : 2   0H  /TOOLS: APAS/INSIGHT, REVIEW, TRIM, HOMEGROWN.N0 2 Vl P  P,$D 0@        64fp  LJOB: SUMMARIZE(SUBTOT=ON) COUNT (PF=N10) SUM(DURATION) (PF=N5.3) SUM(CMD-TIME) (PF=N4.3) SUM(TOTAL-IO) (PF=N10) BY FILE (PF=N3 SUBTOT=OFF) BY CMD (SUBTOT=OFF) WHERE JOBNAME =  jobname' INSIGHT-LINES=400 * PRINT TO ADHOC1 ;''.   0 z JBASIC SUMMARY REPORT 2   0 P:  PNOTE: ADARUN CLOGLAYOUT=5 2H  0޽h ? ̙33~___PPT10^+31DB' = @B D' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(+ SK(    0((`  A. REPORTS USED: SUMMARY REPORTS:! 2 @`  0\( ,$D 0 W!BASIC SUMMARY REPORT, DEFINITIONS" 2"7  <( ,$D 0 cDURATION : ELAPSED TIME IN ADABAS. FROM CQ SELECTION THRU THREAD EXECUTION.dd  <L@ P,$D 0 .CMDTIME : TIME IN ADABAS THREAD MINUS IO WAITS AND THREAD OVERLAPS ( CPU  LIKE) mmkx  <( P ,$D 0 TOTAL-IO : ASSOIO + DATAIO + WORKIO (MINUS WRITE IO IF ADARUN LFIOP USED) (NOT MINUS BLOCKS READ FROM ADABAS CACHE) /  <(  ,$D 0 [ENQTIME : TIME FROM USER TASK TO ADABAS (UNIQUE TO APAS/INSIGHT)\\H  0޽h ? ̙33N F ___PPT10& +7 D* ' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*%(++0+( ++0+( ++0+ ++0+( + 4 , $  (  $ $ 02(`  A. REPORTS USED: SUMMARY REPORTS:! 2 @`#  $ <6(` ,$D 0  C SUM SUM SUM FIL M CMD DURAT CMD TOT NUM D COUNT SECS TIME IO --- -- ------------- ---------- ---------- --------- 0 CL 1 0.000 0.000 0 0 RC 2 0.000 0.000 0 133 L3 19,728,425 39,225.718 1,335.562 7,318,467 ------------- ---------- ---------- --------- 19,728,428 39,225.718 1,335.562 7,318,467b55k5  $ 6t)(  ,$D 0 QBASIC SUMMARY REPORT, EG. 1 2  $ 6\A(  ,$D 0 d0SEE APPENDIX FOR CMD TO NATURAL/SQL EQUIVALENTS.11 $ 6PF( 0 ,$D 0 \( DURATION 39,225 SECONDS = 10 HR 54 MIN.))1 $ 6\I( ,$D 0 =! NOTE: WRITE IO NOT SHOWN IF ADARUN LFIOP USED, (USE LFIOP) >>;- $ 6LP(,$D 0 9! NOTE: ACTUAL IO MAY BE LESS IF CACHE USED, (USE CACHE) >:7H $ 0޽h ? ̙33N F ___PPT10& +D* ' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* $%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*$%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*$%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*$%(++0+ $( ++0+$( ++0+$( ++0+$( +     (4 (  ( ( 04o(`  A. REPORTS USED: SUMMARY REPORTS:! 2 @` ( 6Hs(,$D 0  C SUM SUM SUM FIL M CMD DURAT CMD TOT NUM D COUNT SECS TIME IO --- -- ---------- ---------- --------- --------- 0 CL 12 0.001 0.000 0 RC 189,384 10.813 1.002 0 RE 1 0.000 0.000 0 14 L3 42 0.406 0.005 40 L9 36 0.004 0.002 1 15 L3 57 0.044 0.008 6 L9 24 0.003 0.002 0 S1 6 0.002 0.001 0 19 L3 402 0.680 0.020 86 L9 6 0.001 0.001 0 S1 3 0.001 0.001 0 31 L3 142,845 865.726 13.731 121,061 48 L3 1 0.032 0.001 4 S1 55,767 875.512 11.437 95,785 133 L3 16,276,311 57,755.623 1,175.272 9,336,796 134 S1 53,118 749.678 11.489 109,449 136 L3 50,065 369.387 6.583 60,711 137 S1 27,638 299.991 6.061 44,528 ---------- ---------- --------- --------- 16,795,718 60,927.902 1,225.618 9,768,46782 ( 0u(  ,$D 0 QBASIC SUMMARY REPORT, EG. 2 2  ( 0y(@P K? WORST DURATION ? 2  ( 0(@P  K? WORST CPU TIME ? 2H ( 0޽h ? ̙331 0q(  0 0 0(`  A. REPORTS USED: SUMMARY REPORTS:! 2 @`X 0 6(P,$D 0 P C SUM SUM SUM FIL M CMD DURAT CMD TOT NUM D COUNT SECS TIME IO --- -- ---------- ----------- --------- ---------- 0 CL 2 0.000 0.000 0 RC 18,458,400 1,692.233 105.662 0 21 L3 1,320,324 275.315 139.834 2,468 48 L3 12,772,189 127,881.400 1,135.245 9,058,787 86 L3 1,699,256 2,696.412 174.910 231,830 108 L3 137,770 375.070 16.147 29,030 134 L3 18,575,906 24,339.890 1,633.992 3,118,124 136 L3 3,112,323 10,154.249 289.019 1,370,030 137 L3 3,241,708 3,387.474 258.485 407,801 195 L3 149,615 103.501 10.946 11,461 --- -- ---------- ----------- --------- ---------- 59,467,493 170,905.540 3,764.239 14,229,531&QJ$+ 0 0(  ,$D 0 QBASIC SUMMARY REPORT, EG. 3 2H 0 0޽h ? ̙33~ .& 8(  8 8 0̹(`  A. REPORTS USED: SUMMARY REPORTS:! 2 @` 8 6h(f@ z$JOB: SUMMARIZE (SUBTOT=ON) MIN(L3-SEQUENCE) (HD='L3','SEQ') MEAN(ISNQ) (PF=N3.1) COUNT (PF=N6) SUM(DURATION) (PF=N4.3) SUM(CMD-TIME) (PF=N3.3) MEAN(ASSO-IO) (PF=N2.3) MEAN(DATA-IO) (PF=N1.2) MEAN(WORK-IO) (PF=N1.2) MEAN(REC-LENGTH-DEC) (PF=N4.1) * BY NAT-PROGRAM BY CID (PF=H8 SUBTOT=OFF) BY FILE (PF=N3 SUBTOT=OFF) BY CMD (SUBTOT=OFF) WHERE JOBNAME = 'jobname' INSIGHT-LINES=400 * PRINT TO ADHOC1 ;%%.  8 0ج( JFANCY SUMMARY REPORT 2H 8 0޽h ? ̙33z    <, (  < < 0(0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @` < 0( ,$D 0 JBASIC SUMMARY REPORT 2 < 6((` \ C SUM SUM SUM FIL M CMD DURAT CMD TOT NUM D COUNT SECS TIME IO --- -- ---------- ---------- --------- ------------- 0 RC 1,146 0.557 0.004 0 39 L1 169 0.985 0.017 148 S1 1,288 2.915 0.176 487 108 L3 1,288 2.250 0.132 970 ---------- ---------- --------- ------------- === == 3,891 6.707 0.329 1,605&Pl 0PP  <0PP,$D 0 < 0(00 ,$D 0 JFANCY SUMMARY REPORT 2 < 6d)0 PP x" MEAN C MEAN SUM SUM MEAN MEAN MEAN REC FIL M L3 ISN CMD DURAT CMD ASSO DATA WORK LEN CID NUM D SEQ QUANT COUNT SECS TIME IO IO IO DECMP -------- --- -- --- ----- ------- ------- ------ ----- ---- ---- ------- 02500101 108 L3 AP 0.0 4,894 6.505 0.191 0.007 0.14 0.00 9.0 03000101 0 RC 0.0 4,536 0.907 0.020 0.000 0.00 0.00 0.0 03000101 39 L1 0.0 16,860 117.309 1.755 0.233 0.79 0.01 22.0 S1 4.4 4,872 11.744 0.674 0.028 0.37 0.01 2,773.2 --- ----- ------- ------- ------ ----- ---- ---- ------- ======== === == 0.7 31,162 136.465 2.640 0.131 0.51 0.01 446.9##CH < 0޽h ? ̙33~___PPT10^+cfDB' = @B D' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* <%(+ xp @(  @ @ 0)0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @` @ 0@) ,$D 0 a+EXTRACT REPORT : COMMAND BY COMMAND DETAIL, 2, @ 6!)f0  QEXT: EXTRACT (ML=10000) TIME CID (PF=H8) FILE (PF=N3) CMD ISNQ (PF=N3 HD='ISN','QTY') REC-LENGTH-DEC (PF=N5) DURATION (PF=N1.5) CMD-TIME (PF=N1.5) ISN (PF=N8) ASSO-IO (PF=N3) DATA-IO (PF=N3) WORK-IO (PF=N3) WHERE JOBNAME(6) = 'jobname' INSIGHT-LINES = 300 TITLE = ' JOB EXTRACT ' PRINT TO ADHOC1 ;6 O   @ 6')f 0 ` * DATE * PROGRAM NAT-PROGRAM * FBL RBL * L3-SEQUENCE * ADDITIONS-1 * COPT1 COPT2 * RESPONSE-CODE * SUB-CODE H @ 0޽h ? ̙33 UMD(  D D 0/)0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @` D 0D1) ,$D 0 MEXTRACT REPORT : EG 1. 2 D 6>)0P`  j C REC FIL M ISN LEN DURAT CMD ASSO DATA WORK TIME CID NUM D QTY DECMP SECS TIME ISN IO IO IO ------ -------- --- -- --- ----- ------- ------- ---------- --- ---- ---- 210559 20400101 133 L3 0 77 0.02878 0.00072 1,077,296 3 1 0 210559 20400101 133 L3 0 77 0.01061 0.00018 1,141,038 1 1 0 210559 20400101 133 L3 0 77 0.01128 0.00016 1,248,484 1 1 0 210559 20400101 133 L3 0 77 0.04034 0.00014 1,265,866 1 1 0 210559 20400101 133 L3 0 77 0.02984 0.00014 12,380,548 1 1 0 210559 20400101 133 L3 0 77 0.01810 0.00010 12,380,549 0 1 0 : : : : : : : :&H H D 0޽h ? ̙33  HC(  H H 0P)0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @` H 0d) |$D 0H@___PPT9" DATABASE FILE REPORT: ADAREP NEED TO ANSWER: NUMBER OF DATA STORAGE BLOCKS. NUMER OF INDEX BLOCKS (NI/MI/UI) AVERAGE RECORDS PER BLOCK. AVERAGE RECORDS PER TRACK. 65 2| 25| @` H 0g)` P$D 0ZR___PPT94, OTHER NICETIES: REUSEISN 2. REUSEDS 3. USERISN 4. PADDING ASSO/DATA FORWARD INDEX COMPRESSION EXPANDED FILE (VS. 4 BYTE ISN)^ 2 2+ 29 2E9 @`H H 0޽h ? ̙33___PPT10+L6DO' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*H%(+8+0+H) +S  u m  L(  L L 0x)0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @`  L 0~) ,$D 0 v*DATABASE FILE REPORT: ADAREP EXAMPLE + 2+ @` L 6L)0  L****************************** * FILE 133 (BIG-UGLY-FILE ) * 2001-08-15 10:11:58 ********************************* TOP-ISN = 25,982,683 HIGHEST INDEX LEVEL = 4 MAX-ISN EXPECTED = 30,000,437 PADDING FACTOR ASSO = 3% RECORDS LOADED = 25,982,683 PADDING FACTOR DATA = 1% MIN-ISN = 1 LENGTH OF CLIENT NR = 0 : : : : LIST I DEV BLOCK I SPACE ALLOC.I FROM TO I UNUSED SPACE I TYPE I TYPE LNGTH I BLOCKS CYLI RABN RABN I BLOCKS CYL I -----I------------I--------------I------------------I---------------I AC I 8391 4136 I 21771 120I 1439604 1461374I I NI I 8391 4136 I 800000 4444I 13689443 14489442I 432318 2401I UI I 8391 4136 I 3000 16I 6144106 6147105I 1598 8I DSST I 8391 4136 I 176 0I 1443 1618I I I I I I I DS I 8391 10796 I 724886 9665I 566842 1291727I 95614 1274I -----I------------I--------------I------------------I---------------I&M.l 0P0  LP00,$D 0 L BЕ)0@0 [#NOTE: RECORDS LOADED IS 25,982,683$$f  L 68cP@ H L 0޽h ? ̙33~___PPT10^+nIDB' = @B D' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* L%(+G" 0P|(  P P 0)0P  A. REPORTS USED: SUMMARY REPORTS:! 2 @`  P 0) ,$D 0 v*DATABASE FILE REPORT: ADAREP EXAMPLE + 2+ @` P 6Լ)0p uLIST I DEV BLOCK I SPACE ALLOC.I FROM TO I UNUSED SPACE I TYPE I TYPE LNGTH I BLOCKS CYLI RABN RABN I BLOCKS CYL I -----I------------I--------------I------------------I---------------I AC I 8391 4136 I 21771 120I 1439604 1461374I I NI I 8391 4136 I 800000 4444I 13689443 14489442I 432318 2401I UI I 8391 4136 I 3000 16I 6144106 6147105I 1598 8I DSST I 8391 4136 I 176 0I 1443 1618I I I I I I I DS I 8391 10796 I 724886 9665I 566842 1291727I 95614 1274Ivv P B)0 W#NOTE: RECORDS LOADED IS 25,982,683$$Vl 0   P0 ,$D 0  P <)0  RUSED DS BLOCKS = 724886  95614 = 629,272**f  P 68c`@pf  P 68c@ pzl 0@  P@0 ,$D 0" P <_)0   vUSED INDEX BLOCKS = 800000 + 3000  432318  1598 = 369,084<<3f P 638c`@pf P 638c@ 3l 0`  P0` ,$D 0 P <T)0p `  g/RECORDS PER BLOCK = 25,982,683 / 629,272 = 41.300f P 68cp f P 68c   P <) 0 ,$D 0 p<IF DS BLKSIZE = 5064 (DEFAULT), THEN 10 BLOCKS PER TRACK ==l 0 P0,$D 0  P <D)0  AIF DS BLKSIZE = 10796 (8391), THEN 5 BLOCKS PER TRACK BBf P 68cp&l 0p   Pp 0 ,$D 0 P <)00  Z"RECORDS PER TRACK = 41.3 * 5 = 206##f3f P 6f38cp ` f P 6f38c` H P 0޽h ? ̙33___PPT10+D{' = @B D6' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* P%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*P%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*P%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*P%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*P%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*P%(+8+0+P) + @T1(  T= T 0)0 EXAMPLE. BATCH JOB XYZ PRIMARY ACCESS: READ LOGICAL ( L3 ) OF FILE 133 JOB RUN TIME: 9.5 TO 20 HOURS 12.5 HOURS AVERAGE  2 T 6H(`,$D 0 _ C SUM SUM SUM FIL M CMD DURAT CMD TOT NUM D COUNT SECS TIME IO --- -- ------------- ---------- ---------- --------- 0 RC 6,232 0.289 0.043 0 133 L3 19,722,196 39,225.429 1,335.519 7,318,467 ------------- ---------- ---------- --------- 19,728,428 39,225.718 1,335.562 7,318,467t55^ T 0)Y @ SDATA FROM PRODUCTION RUN:  2H T 0޽h ? ̙33 P X](  X X 6*,$D 0 {oFIL CM CMD COUNT ENQTIME DURATION CMDTIME TOTALIO 133 L3 19,722,196 39,225.4 1,335.5 7,318,467p   8.Ap X <p *`  ,$D 0 FILE DETAIL: 26,982,683 RECORDS 629,272 USED DATA STORAGE BLOCKS 369,084 USED INDEX BLOCKS X <* @,$D 0 UABOUT 73% OF THE FILE IS READ X <*p,$D 0 s;BATCH JOB IO (7.3M) IS OVER 11 TIMES THE USED DS BLOCKS !<< X 0* o9NOTE: FOR COMPARISONS, ONLY DEAL WITH FILE READ, NO RC,CL: 2:  X 0*` A PRODUCTION: 2 H X 0޽h ? ̙33___PPT10+wFD' = @B D' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*X%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*X%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*X%(++0+X( ++0+X* ++0+X* + `\*(  \ \ 0h3*00 P gB. CHANGE OF FILE PROCESSING. 2 @` \ 6 5*f` SRULE: IF TOTAL-IO > > > USED DS, USE READ PHYSICAL (L2) WITH SORT. TT. \ 0P8*@` ,$D 0 FTWO STEP APPROACH: 1. READ PHYSICAL (L2) 2. SORT BY KEY 3. MAIN PROGRAM READ WORK FILE 8 2@cH \ 0޽h ? ̙33___PPT10+EjDO' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*\%(+8+0+\* +   p` (  ` ` 0HP*00@P v,B. CHANGE OF FILE PROCESSING. THE RESULTS- 2- @` ` <R*0 ` ,$D 0 h4SORT ON KEY: 900 SECONDS (SYNCSORT,DISK-TO-DISK)55 ` <`V*``,$D 0 d0TOTAL: 3944 SECONDS = 65 MINUTES 44 SECONDS !11 ` 6|Z*pP,$D 0 g3L3 19,722,196 39,225.4 1,335.5 7,318,46744S ` 0XI*vp 3CM CMD COUNT ENQTIME DURATION CMDTIME TOTALIO4    ` 0g*p`j :PROD 2l `P  ``P ,$D 0  ` 04l*`   \&OUTPUT: LRECL=52, KEY=28, 1.02G BYTES' 2'8@ P `P= ` 68i*P,$D 0 3L2 25,982,684 111.4 3,044.5 764.6 629,27244,  ` 0u*` ;PHYS. 2Pl @ pPp `p@ Pp,$D 0f ` 6>@ pf ` 6>0pP@H ` 0޽h ? ̙33  ___PPT10 +nD ' = @B D ' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*`%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*`%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*`%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*`%(+p+0+`* ++0+`* +   A(    0*00 * DC. MULTI-FETCH 2xz     ,$D 0  0|*  C WHAT IT DOES: 2;  <*  RETURN MULTIPLE RECORDS ON ONE CALL. ISSUES ASYNC REQUEST FOR NEXT SET OF RECS. SAVES ON USER-TO-DATABASE & DATABASE TIME.&wz & P  & P,$D 0  0Ȕ*&  GWHAT IS THE SAME: 2  <* P NSAME ADABAS IO (NEARLY)   68*  p l8PREFETCH vs. MULTIFETCH ( PREFNREC= ONLY WITH MLF)99H  0޽h ? ̙33___PPT10++lD~' = @B D9' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+ H@% (    0*00* DC. MULTI-FETCH 2  6Ы*@ 9PGMl    ,$D 0  <* P  EPREFNREC N RECS  6 * @ MULTIFETCH 2 >l P  P,$D 0Z2  s *p`2   0HPPl P Pp PP p,$D 0   6*P   EPREFNREC N RECS  6*Pp <ADABASZ  s *P @`  0EL   ,l 0p p0,$D 0  <*0pP  `PT = TIME TO PROCESS N RECS (  <* p `AT = TIME TO PROCESS N RECS (l  %,$D 0fR  6 l  <`    <*  8PT  <*`0 pp  9MLFfb  6 `P  64*& P  :TIME 2  6d*v `p  :LESS 2  6*` :MORE 2`b   0 `P ! 6*J  I LESS DB AFFECT 2 $ 0d*pv ` I MORE DB AFFECT 2H  0޽h ? ̙33v n ___PPT10N +D2 ' = @B D ' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%%(+    h (  h h 0\*00 * PC. MULTI-FETCH. CAUTIONS. 2  h <*P0 p,$D 0 o7MULTIFETCH CAN TAKE RUN TIMES OF HOURS DOWN TO MINUTES.88   h <|*0 ,$D 0 m5MULTIFETCH CAN TAKE RUN TIMES OF MINUTES UP TO HOURS.66#  h <*P0 p,$D 0 )MULTIFETCH JOBS CAN LOCK UP THE DATABASE.>*B h 0,0 ,$D 0 VGOAL: MAKE BATCH RUN FASTER BUT DO NOT KILL THE REST OF THE DATABASE! W 2WP h 0t,` ,$D 0 LGUIDELINES (OUR SHOP): 2 h < ,P 0 p ,$D 0 U!1. MLF JOBS SHOULD RUN OFF-HOURS."" h <,0 0 P ,$D 0 a-2. NO MORE THAN 2 TO 3 MLF JOBS CONCURRENTLY... h <$, 0 ,$D 0 g33. IDEAL MLF JOBS ARE NON-UPDATE AND READ PHYSICAL.44H h 0޽h ? ̙33RJ___PPT10*+B"?DN' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*h%(++0+ h, ++0+ h, ++0+ h, ++0+h* ++0+h, ++0+h, ++0+h, ++0+h, +U .&l(  l l 0/,00 * GC. MULTI-FETCH.  2 l 04, ` ,$D 0 SGUIDELINES (OUR SHOP): cont. 2N  l <x8,0 ,$D 0 z3. EACH JOB SHOULD BE PARM ED INDIVIDUALLY. ( ! NO PROCS ! )>>  l <=,0 ,$D 0 ^*4. IF JOB CHANGES, PARMS MUST BE REVIEWED.++  l <4A,0 ,$D 0 g35. SIZE PARMS TO LIMIT 7 TO 9 IO PER COMMAND. 44P l <PE, 0  ,$D 0 b6. USE PARMS TO EXCLUDE ALL FILES BUT MLF FILE SEQUENCE. ( EXCLUDE ALL NATURAL SYSTEM FILES )2cH% l <K, 0 p,$D 0 Q7. RECORDS PER COMMAND SHOULD BE LESS THAN RECORDS PER LOOP ( Lx PER RC).RRH l 0޽h ? ̙33  ___PPT10 +SDs ' = @B D. ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* l%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* l%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* l%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*l%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*l%(++0+ l, ++0+ l, ++0+ l, ++0+l, ++0+l, +  Z R p (  p p 0a,00P* s=C. MULTI-FETCH. OOPS, FORGETTING TO EXCLUDE (NAT SYS FILES)> 2>7  p <f,  FIL CMD SUM SUM NUM CM CNT DURAT IO --- -- --- ------ ---- 0 CL 3 0.000 0 OP 3 0.013 3 RC 55 0.011 0 14 L3 4 0.006 4 L9 8 0.004 1 15 L3 15 0.087 8 L9 2 0.014 1 S1 2 0.057 3 19 L3 141 1.229 80 L9 2 0.001 0 S1 3 0.027 1 108 L2 3 0.072 5 --- ------ ---- === == 241 1.521 106)8   pp .  p <Hp,  FIL CMD SUM SUM NUM CM CNT DURAT IO --- -- --- ------ ---- 0 CL 3 0.000 0 OP 3 0.018 3 RC 55 0.005 0 14 L3 5 0.140 17 L9 8 0.002 1 15 L3 19 0.080 12 L9 2 0.001 1 S1 2 0.024 2 19 L3 83 1.332 126 L9 2 0.000 0 S1 3 0.002 1 108 L2 3 0.069 5 --- ------ ---- === == 188 1.674 168  p 0k,0  C PREFETCH all 2  p 0y, ` LPREFETCH with EXCLUDE 2  p 0T|, 0 ;FUSER 2 p 0 ,y`  :FSEC 2 p 0X, g  :FNAT 2 p 0,i P  :DATA 2^ p 68c @ ^ p 6| P ^ p 6| H p 0޽h ? ̙33 <4t  (  t t 0Ў,00P* j4C. MULTI-FETCH. OOPS, USING A GENERALIZED APPROACH.5 25 t 0,0  >PROGRAM: 2  t <`, P M0200 READ SOURCE-FILE 0300 READ CHECK BY XKEY = SKEY(0200) THRU SKEY(0200) NNml 0  t0 ,$D 0 t <,p0  MFIL CM COUNT DURAT CMDTIME TOT-IO 0 CL 1 0.000 0.000 0 RC 19,980 1.730 0.173 0 241 L2 19,980 5.341 0.869 2,693 242 L3 59,937 15.474 2.902 6,981 === == 99,898 22.545 3.944 9,674B( (  t <4, L PREFETCH=NO $ 2 `B  t 0D)@p@% t 6,@ ,$D 0 )PREFETCH=YES (dflt) Buffers = 3000/30,000$ 2*l  0  t 0 ,$D 0  t <@,p 0  MFIL CM COUNT DURAT CMDTIME TOT-IO 0 CL 1 0.000 0.000 0 RC 19,980 1.220 0.181 0 241 L2 912 3.637 0.518 2,692 242 L3 59,937 19.100 6.775 6,988 === == 80,830 23.957 7.473 9,680B( (fB t 6D) p  t 6ܬ,f ,$D 0 u5PREFETCH=YES Buffers = 65,535/ 100,000$ 2(6l 0  t0  ,$D 0  t <ȶ,fp0  MFIL CM COUNT DURAT CMDTIME TOT-IO 0 CL 1 0.000 0.000 0 RC 19,980 1.477 0.240 0 241 L2 44 3.478 0.526 2,805 242 L3 59,788 123.101 110.270 7,259 === == 79,813 128.056 111.036 10,064B( (fB t 6D)@p@H t 0޽h ? ̙33  ___PPT10 +;DL ' = @B D ' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*t%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*t%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*t%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*t%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*t%(+p+0+t, ++0+t, +   x~(  x x 64,00@* PC. MULTI-FETCH. PARAMETERS. x 6,@` ,$D 0 @ PREFETCH=YES  x 0,   RSUPPLIED TO // DDCARD INPUT 2 x 0, ,$D 0 }!! ASSUME USE OF MLF PREFNREC=n" 2"l  0   x 0 ,$D 0[ x 6, p0  {! ALL NON MLF-FILES ! PREFXFIL=14,14,15,15 PREFXCMD=L3/L9/L3/L9/ PREFXFIL=19,19 PREFXCMD=L3/L9/ ! ALL NATURAL SYS FILES !4|Je  x 0 ,p  HEXCLUDE FILES/CMDS 2<l    x ,$D 0 x 6,  qPREFSBL=65535 (MAX BUFFER PER PROCESS) PREFTBL= N * PREFSBL (FOR ALL MLF PROCESSES) = 65535 rr  x 0L,  P  =BUFFERS 2H x 0޽h ? ̙33  ___PPT10 +rgvD ' = @B D ' = @BA?%,( < +O%,( < +DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*x%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* x%(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<*x%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* x%(+p+0+x, ++0+x, + {s| (  | | B.00 * PC. MULTI-FETCH. PARAMETERS. | 6d.PP,$D 0 = PRENREC=X  | 0`.0*D<4___PPT9 hLESS THAN AVERAGE RECORDS PER LOOP ( Lx s / RC s ) 5 25&  @` | 0P. l 2. IF IN DOUBT, PREFNREC = 10 ! 2! @` | 0!.&  73. IF READ PHYSICAL (L2), PREFNREC = RECORDS / TRACK 8 28 @` | 0*. 34. IF NOT L2, PREFNREC = 8 * ( COUNT / TOTAL.IO )4 24 @`H | 0޽h ? ̙33 (    66.00* Y%C. MULTI-FETCH. BACK TO OUR EXAMPLE.&&  0:.  |SEQUENCE IS READ PHYSICAL ( L2 ) RECORDS PER TRACK: 206 NATURAL SYSTEM FILES: 14,15,19,22 OTHER FILES/CMDS IN PROGRAM: NONE } 2}sz  0   @ ,$D 06  6?. p0  ADARUN PREFNREC=206 ADARUN PREFETCH=YES ADARUN PREFSBL=32000 ADARUN PREFTBL=32000 PREFXFIL=14,14,15,15,19,19,22,22 PREFXCMD=L3/L9/L3/L9/L3/L9/L3/L9  0@.p  C DDCARD PARMS: 2H  0޽h ? ̙33~___PPT10^+g,DB' = @B D' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+}    k (    60N.00* f2C. MULTI-FETCH. BACK TO OUR EXAMPLE. THE RESULTS.33  6S.pP,$D 0 g3L3 19,722,196 39,225.4 1,335.5 7,318,46744S  0pW.vp 3CM CMD COUNT ENQTIME DURATION CMDTIME TOTALIO4     0b.p`j :PROD 2DL P  # pP=   6e.P,$D 0 3L2 25,982,684 111.4 3,044.5 764.6 629,27244,    04k.` ;PHYS. 2?l 0vP  v0P ,$D 0  <n.@P ,$D 0 g3L2 126,133 1.8 1,541.4 522.2 629,27244  6s.0vp >PHYS.MLF 2   6> 0P ,$D 0  6>P ,$D 0  6>@ P ,$D 0H  0޽h ? ̙33: 2 ___PPT10 +j}/D ' = @B D ' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+9 y(    0̊.``Z ]D. TRACK-LEVEL IO 2 @`  0.60 81. WORKS BEST ON READ PHYSICAL (L2) JOBS AND UTILITIES.9 29 @`  0P.  >2. CAN IMPROVE DATA IO BY 10:1 ! ( 5:1 FOR 8391 DEVICES ) ? 2? @`  0.&  .3. DEPENDS ON DASD TYPE AN IO METHOD (Eg. EMC)/ 2/& @`  0P. i4. DEPENDS ON DATABASE LOAD.  2 @`  0.V P  i5. THE DBA MUST BE INVOLVED. 2 @`H  0޽h ? ̙33     (    0.``Z ]D. TRACK-LEVEL IO 2 @`  0. HPRE-SETUP DB CYCLE 2  6.3  yEADARUN CACHE=YES ADARUN CBUFNO=10 ADARUN CEXCLUDE=PHYS/LOGI/HIST/FINDFF  0.P  OENSURE ADEQUATE DB REGION 2#l ` @  ` @,$D 0  0.` FBEFORE JOB START 2(  6.3  ZDB OPERATOR COMMANDS: CINCLUDE=PHYS CDATAMAXS=1,000,000 CDATADSP=fromrabn-torabn [[$H    0l. @ Y! CAUTION IF OTHER DATA CACHE ! 2   <p.p 0 ,$D 0 =RUN JOB7l 0 p  0p,$D 0   0$.0   C AFTER JOB END 2   6.3@ p fDB OPERATOR COMMANDS: CEXCLUDE=PHYS CDATAMAXS=to previous setting CDELETE=cache space number ggH  0޽h ? ̙33C;___PPT10+MD' = @B D' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<* %(DA' =%(D' =%(D' =A@BBBB0B%(D' =1:Bvisible*o3>+B#style.visibility<* %(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+8+0+ . + y q 0  (    0D/``Z m!D. TRACK-LEVEL IO. THE RESULTS. " 2" @`  6/pP,$D 0 g3L3 19,722,196 39,225.4 1,335.5 7,318,46744S  0/vp 3CM CMD COUNT ENQTIME DURATION CMDTIME TOTALIO4     0X/p`j :PROD 2;  < /pP,$D 0 3L2 25,982,684 111.4 3,044.5 764.6 629,27244,   6/ 8L2 2;  </P@,$D 0 3L2 126,133 1.8 1,541.4 522.2 629,27244,   6D"/` <L2.MLF 2ll `P  `P ,$D 0  0&/`P  C L2.MLF CBUFNO 2=  6`*/ P ,$D 0 3L2 126,133 1.5 1,049.9 469.5 629,27244,  6>p 0 ,$D 0l  0  0,$D 0  <40/ 0 `, 125,855 READ EXCPS 503,417 CACHE READS --  01/   B CACHE STATS: 2 H  0޽h ? ̙33___PPT10+D' = @B Du' = @BA?%,( < +O%,( < +D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(D4' =%(D' =%(D' =4@BBBB%(D' =1:Bvisible*o3>+B#style.visibility<*%(+ WO@(    0H/``Z ^E. OTHER THOUGHTS. 2 @`c  6pJ/33P` ADACMP DECOMPRESS INFILE=,FORMAT= SELECT FIELDS, ENTIRE FILE. NO UPDATES TO FILE DURING. SELECTION PROCESS NEEDED FOR DESIRED RECORDS. SORT NEEDED. ADACMP TIME: 1335 SECONDS 7  6tN/ff`P  ADASTRIP SELECT FIELDS, SELECT RECORDS. NO UPDATES TO FILE DURING. FIELDS IN FDT SEQUENCE. SORT NEEDED. ADASTRIP TIME: 844 SECONDS ?  6O/|| ` ADAULD SELCRIT/SELVAL ! DO NOT USE ! DOES ADABAS FIND (Sx) TO CREATE ISN LIST OF RECORDS. ADAULD TIME: FOREVERK7H  0޽h ? ̙33 P,(    0e/``Z y-E. OTHER THOUGHTS. SUMMARY OF IMPROVEMENTS.. 2. @`  Bg/@ P0 B1 STEP PROGRAM  Bk/@0` 0 HREAD LOGICAL (PROD)   B<_/@` 0 =654 MINF 0@P  0P0  <q/ @P -WHERE LOGIC. STEPS: READ / SORT / PROGRAM..   <dw/0@`  A READ PHYSICAL  <{/` @  = 66 MINF 0@P  00P  <x/ @P A SAME AS ABOVE  </0@`  MREAD PHYSICAL, MULTIFETCH  <H/` @  <41 MINF 0@P  0P   <Ԋ/ @P A SAME AS ABOVE  <@v/0@`  V"READ PHYSICAL, MULTIFETCH,TRACK-IO##  <L/` @  <32 MINF 0@P   0P   <Ԕ/ @P LREAD,SELECT,SORT,PROGRAM  </0@`  MADACMP DECOMPRESS INFILE=  </` @  B 37 MIN*2 " 04/P` 7 J APPROACH TIME*1 NOTES K 2KF 0@P #  0P  $ </ @P EREAD,SORT,PROGRAM % </0@`  JADASTRIP FIELDS, RULES & </` @  = 29 MIN ' 0/ 0 A*1 TIME INCLUDES APPROACH + SORT , 900 secs. (IF SORT REQUIRED)B 2B) ( 0j¿ +??6JG];Ï'Ӫ& h ?_&Kl ow{ ?/9l[V5ma;va' ] P=a/U~P @8!p(p$G1p,?8'p P΀3g9P΅zP@Ch 44Zp!\C[hUV.ZwU|߶T94¸Q)r!Lc g0 f0"X K`), ᫉r `]Xև `C~?O3~M+~ ?_`s`k+lv=;N7@ vݡ&{^7~P @8!p(p$G1p,?8'p P΀3g9P΅zP@Ch 44Zp!\C[h..N+ \W5ptp==F n^p Ao;} @@A ! <#0qOpOHx Q < a < "/+0 x&[6a dx>)0>i| 3S fl00BXa ,eV@!+gZ6?ua=X6 a#!~ ?`c96_¯`S5~ f# a ᯰ l ;`g;5`W v {ް A- 8pGp pD')p*Cm8΄:p @]8A}h 4&΃fZ@KhCkhp\ m\B{ :@G:Ag.p\ @Wuzp&z-p+v>p~p7^>0< Pxa<a< #)xF3,1</ Xk0^7MoLI.}TG1LO`̄O3a|_\_|X a,%rXAv+k:Xփa6) 6/`% 6_o;=l?Ÿ-a+ l; v.Pv`w { Ԃ8p p Gp  O8NIp2ip:Ԇ3LgpԅsԇAchM6p\%p)ˠtˡt+JWp tnp-\ݡ\7@Onmn;NwA_WC(GlPʳ3}vWpߣ?.9wEEyAnNkQO b}܍X5']<ÛYf^OELͰ7ƵYݾül&,j8j1GSJ + s2"߹rL w`EHwO?󴬤X(; QRTp/>&g+ft~qF }:?bn&YDmHSVZ» je3zzOŰ{et577;wA*/?{P_.zi6>³/=L(.;qŅ B>lŀ&܇qGF 7sOɂ u 'ŝ9wx4]sfȟ .)*eA0#7Ir3Gښe0K!=9iaV{Sj‘?zM;WM!EQA@q3p#(] Bɩ(OK0#Sݲe_nA +=e278qAD%e.{.2RoHM:Pk=n2Hyg =ɮ%fB!۵ڴGB,sRlB$~B[Ei6XCD pɝze3ɃۼA5g3T\]s&^ݠ!+*n1R?Ejk>QG_Ύ3PI=Jh9PFk4wO!>ŅCwY j}(&ktދx//ߚEQ|B!H5V^d56'!fH- 2V0Ey}?=Ệ({עNh}t(O6Z)0 LiIQ5>PގvB F^պ}EeN)AHud(!~z;P+m^}PƵz>fK

aZY4Kae0A動:G&s1VL\JOYۗ CQӪQø~y//?|ĻQؓBI؎' 58s9w u'|рByg&w|1.Bs >P(~b ԑ#̵>>P(rf AYO{P%ڼ{ Ae%Şw| EZPߟ{P$-xw))b j2{=4ptݫgyw#BR0YjE(5 >]JK'nװ;74jtkԣiƵ0] ĕ0AEE9s0{n_-1vaߗ~:f~㞍̵>wj^| f wTʒ΂mQ7nJ͹C>3~vJC6JW\>3 kԱS_ Riq!vΙeR# Mn] ϲY]-4, Ki5^9{f5uqjʿi'X:=y VĐp>LOs-/#4<䕗 Fכ1B<cŽ+wpץ38X4uFw91G @y~eR`D MC Y%&dn_IW7Nn^T䑅*&>\?oxlľU [2R1SsIJc֡ԼJݬV%0Q^V2'=-C0\HRILb5)&d&ɻnڣG8N]=ocL*=$ȽRqr3+[*l Zs{Qޙ9*OlҺC9KWI K9i{{P/rFzA68bRs&w^W2`و3G.y8pģ@ݓߵ!Skwr6xj>8⮌OlW m6EƤׇ'|RŃ~}1ݻͼC$ }u*Iz3GYͼy;c)g+ >:tQۗ"^d=Bp>3HVeҲS\-꠫G/i'&dk5oR%y9Oo;e. XaR3 3b:JbЭ.6yjsw&ǟzRZ\ A&Iܩc15bc8 Xϰe3 E18 g5RVR6~9 gwLi.p럓Pt9 _>_8',} vV߯FflkLXQ4T.]bF쓽Ud?I/q=S r:ɏ|(l #-~)#Gep %KDn7Ҭ_O_@<+aŀn]ڭ%|qyΰ9Ӓ1?n_QG_vWE&t4=wCEWӘkCg.P؆MZ5>ȣyPx͘cl ~!~-~9MBjVv ;$:4Yt)MVz εg!BV|F1r֬5c(%3VB%5%E')0ElEwւm*y9vA"빯'tUŠrg3$|P1svd G;8fiפ+l'◯TGqǪ4jTVn_>Ey}.ugr"#$EgiމQ3`*P"|>ͼ[\ 0M[[ h¶ G 3bB}Ef&^e[ g,Vg9]؈}-E2<-'.?Ze$,|bof 쿱i=5VZR|-3,{}&ݽ.Ea0mHDo>~ₗc E5~AnKQh#Xk8m)˱Kp); Lz}$r0_Mզl+ l7H$_p;9NM(xk&wTeD'3NZ)ʙ?Lі% D \D9{K0]UԺuae&1\̰I<ʙi~%Mg ɃH<x粙缽0U>'ե/ l+v*w7¶␖/<bJO=ICyMY|.yT(sf,%H6s~~a1_oΘi5f{2GV)b5invINfälE]EB9(#^pՓJe%Ŏ;-'ES.36[#V㾁KnؽsT0 o&|'z]'.?g}#l y&ȋo(>أ޳҈mC*).BUU+&?JuUc`I F n%ckeOeպ}"o #5qȟRo۩ )X(ʜݘk)ֻP,Ű䱇ȧn@:TmPTOݾa9+y4Qd*'+&ȜWb7UC"2`2\ko]\U<]0ݍls3՞8LPksijoZ)unl&pt. Y5*s kA ΕVwㅏS +-xB3aVz JDF&m%Y|a~wϤ)N{nsg ,㞍vڿ.V |^Ƽvޅ2㬊'nYϘ*PX~_+.eRrOQ\Em)xt&%^Ta/mV+{v!ZʪxR`a2B`EzZSU0Y#)6JO6.FQUZm0e%&uԑ)lpS+8vL/F%ȫM ܩv91a/{V5=DE3Oy^kR 5/1>BW3ր+% yl>ay7;~Y6 _NQռZ6܏{֞=J%t!~l/⃼m9>0#7btn_e¤lRs/>Ơ[]Va 스%_8apY:7Ts #-K 9{M= C>J)B{(`Oճ km*3!J ۧtV'Ƶb\#2B(O&רϟ=J| ߳q~n堯9Lsy(DRpsNlP@qLg3^J /?{N_D8s` .`m^*GC-d/ *0\n26]4jQN?'c%v!eVo,:ܲ`"{y@D57#( ';M:-j[b l5I>jYCj-F3wKݫg@ Lo%ؾ81ůF-ݸVnz,ݴǬeLًpL1"{~!ԷPxSoE^_*)5~A >0p>y C*,3 ]/FX h¥Ș#~8!14߀.FPDgo=.mxBaEQ~nqaAg+ 9i5lt0.n,ASĎF"] u36b_z@(Ɍ_ۗh3o~ĞۂͤɰaR #o_:)S5s|0Vh,%xl7!EO|ha{3UgrdciϲS6SWbV)^UnDWbϓD y=LgԣaF#On^dUrcVZ^%|x'a !7[ h"˾ nZo{T0۝5BQ`5lr8ʛ|U3kny]^ΰqXobVkXR.:=0%EKƷfUCwMw''(~vط2`ͼ@W{0ѿ)߰^+iײi-÷bOgXcY0_ &Vwgh*k"v72'_d~/".W9kwe(3"g۞%śףoo#JR]t= a[i[Nb G.˪زZ ;۱][ ܭEPt+wBz}ȶN(jm+gVmvW_:W 5v@ibfJѪuur$VGJex} kr^O LR6Er^/r\;16m{}1KU zN'o''|7Ey"}pt?Xm1ɽkl  _m8I*R=_8VcT).xi3;Eݻ?a:LN]@:FQ4st.$Olz5A-qaXԘC;VBkTyEjPӷw_az;mz迩# –y#`4:Ӿۻ{IW#8N㵘C;*ZpוwTv<-lj ixw.Ơ`?Y|ION$p?WŠJ*_ۏC@JΩ@m}øgi$3jrtB@Ws* BNs'3ѐ{ʞpE`ܛGxH&%}ð{xI?BnGtshGY{7V6**3R1؇{)1) fGuBr\,PRT`7tkIKgpo ̃ڰbT#fl).xy!&CQ.t響n]8d(PT(=ntsXδ3|i^<܁{ %EY޷q)Up7.0aRk5dNfZ4pQT+Z {yJM3Ƴ;U7cIŅvc[ro ҥ,ˁ_bSýIoV] 򒯟 ڼst cpcv|j޸g#_OllDy'\,o.+sOHONP %{ZsظAҍ6^:G,x˲n"$ƞHS GiT쨿|,35)9v n!L6[ tj?-b1iO_5zJarGe@av9*Εמ9ՎLǏ^~Z\y}̡\t;2讀GU534@[{,"Tl/-|T=]YCQ`SI3?KN d, EsAT  ߜ { j9B#e oh #(9PfhPB9B#e oh #(9PfhP&:da fwι0@b?>Bs.= D8M{P9NZ G(ut"Űi8}BQu{ ju˽P(jnrpB9y nBm 5?N{ jس{7P6=e=~{ j|"{7P6}>{ jIӨͽP(= D8G{ Y50@RT7 E=u$cA0ؓS(Mvx޶S E=@PxxCwq)ƤׇY)x)t˽P(qJ y _0B[6Y `OvLsBQ_gŻ ktr/nj"TzF B,Wp/ZEOݫgyw}Nܻ V1035w'H=ץ^CO oVTǻX|a9KBQl?w' h9{P''|!vk(5 ]&T+ (?w' (._8}BQl_ͻlνP(3A^;AHLdz}B1aNCݝ $ZA݇BӜ'T'ni6ރ( f#xuÛqAJNy:AHIDE BJnރ(AMsywtₗG½Q(55޶Syr B:.N2q>t~DX ] d"-)ް{=Byq7»/DԼq1ݿ & ޝ xN7Q(l8Rޝ ذe_RrzFݚ 0>EԘ"7;w&f+(V]˻Oc,ȽgQ(5#Wywh`̱+, HAzrMy/ Ei1wo&nͽQ(kQywe 7{PT79# se&*h3~Lr$s1^Fh Muw'&9rY?o8Lr&;}BQğ9̻)ϵۂ{wPT+Ow BA(F( ~Q(sz +*xw\Ph.zrw%{-A(Wt˽Q(ʟe.Kf{9wg%\:ȽQ(J- ^BɝA Ejλ7rzo{"w%d&{gP-.z3.̽?R(ʖkCxwMP cת w$e!g^I(I{6ŽNIJDiq!vM EjƻG칈{ߤPǠ[{1#A(%E]P o ޵hsϹwR WN"O).Sz D½R(F1ACwq`x7yw>P Y Eϻʐ`3ݖBQL,AHJخ{.i6H?ǻA/3uuߝwW#aRB_=gDmދ)9fwI;A6}\e y4$ƞݽB)+-qMMF[} j.הټ;Abޯ)&뼻A4]uˁ_>ywg"HQ~8"KݓƂ#tz)Eui> 7w7"LSz]jqY1[YI1D5C^K~S(ruB]ƽS(bjP۱; A&C} E ʻڑb4ONFۊr݅ ԑϟ-ߚ @T ޽ Ԛ ƶ>P(og ʇ& o}@P^ZA/yw *yQ܇ *N~Ż[?n]8a՘@8L»C&: ߸Lx7v}gOLB4aЭ.Ⴂnq1I*O=߬g aRgnAK0㞍u TL6þ>Pjv6Y BEy|s6܇JM̈́—/x7s A%1͹&MǕnAJQ~&܇J^Zwݮ `FNf0z)Ei69w&=1vj>PT7c[$\ݐ ,>PT4&?J?ǻ !_^=k7BӨj4K"HKf?*w1f P(%Ea>}(sƶL8F/&B/uR]Nhz;w#%'IqgwI/?7w$?ŠkhEqJUf1ޭ "7-~~xލ e|G* Xm FXQ׃.d[ƵJP =4PX hZRTbܹi=[E~0J%Bjr2 `5)ь6z*^Aܿqa܇5 lN>ҒȀc[p(RG_Κ·nMALzP}H-nAA|8r=8YW`EY)AjƜMXeͰOӅi xw2VPkq7#] u$1N?>6Rppki[Š M <RGhAu nA廉,=9ḏ˒񭹏j=kt^8ꗓO!Ņmy~bkQyAPsM?(0z]j-f? ./+%AG!m4>t58O׈9WJS^4' srU%]?pe: ÄB!﯑ BݺmzOtl~8 5$m G]eHr 8SZ\~֥{B6ڍk}㞍6;d1ux q患N!nD>{=7; t : O&QX?LP[ \֕o s"xY]lW>wfvwֿ$vXuǵgD ؊4)AEBĥR+*T}T($DDPPTlPzιwvvkwm"$wug{=3~YniяS4LYymUa-tG@DB6An6Dg43Pbk8Z= ;ۿ2rEٌ2HhrU:[Y*ߞr6P?NO`GĪ~W11hx}8Zy'73{KW7RG/`7^/>̗sHSff_$ڎj_eY.(Z|5փIF!~ϙPcm4b}(CGaJ 0= tF:K!Apd 9כϔRrH Qd"Zc_!zSѓ%E vV]@"y6D󸒩I9N Fx3Y-P180dVl8x#7-|,02Fc"pqU噱CU+0Uf%`N X,Z+s`fIYaut:=%/a۔}'s)LLaib!v $HLbk  H$&٤I"$HL$h@$j& 3>s)b?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root EntrydO)PicturesPCurrent UserSummaryInformation(TPowerPoint Document()/*DocumentSummaryInformation8