Calculation involving SMF CPU Time
I needed to pull off some user SMF records, and so I used a small program that I had written about 6 or so years ago. In it, I have a line of code like this: SMFCPU = SMFCPU / 38400 I honestly cannot remember why I did that, to divide by 38400, but I must have had a good reason. It doesn't appear to be time related. I'm sure someone here knows, though. Thank you kindly :) Lindy -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Calculation involving SMF CPU Time
Lindy Mayfield wrote: I needed to pull off some user SMF records, and so I used a small program that I had written about 6 or so years ago. In it, I have a line of code like this: SMFCPU = SMFCPU / 38400 I honestly cannot remember why I did that, to divide by 38400, but I must have had a good reason. It doesn't appear to be time related. I'm sure someone here knows, though. I believe there are good reasons, since 38400 is a product of 640 and 60. I vaguely remember some threads about that, something about 'ticks' or CPU Timer which if you multiply it enough, you will come at about 1 second. Ok, After some RTFM in SMF book, POP, macros references, I believe it is 26.04166 microseconds (one timer unit), which if you multiply it by 38400, you arrive at 999 999.744 which could be translated to about 1 second AFAIK. What I know the resolution of CPU values in SMF records are in hundreds of seconds, while the STORE CLOCK (EXTENDED) use more bits in the clock value which is higher resolution. Alternatively, could you be kind to show all statements which contain SMFCPU before that SMFCPU / 38400? This is to see how you got your SMFCPU in the first place and at wat value format it was. Groete / Greetings Elardus Engelbrecht -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX syscall spawnp and IPCS
Shmuel Metz (Seymour J.) wrote: parm.1=/userhome/sa/myrexx.rx parm.1=myrexx.rx What are you trying to do? Good question. Hmm, I looked again at that posted code and found many such double assignments. In fact, the first parm.1 could be deleted or commented out. But the second one is not looking 'right' for me too. I'm also not comfortable with this snippet: pipe pfd. pipeout = pfd.2 pipein = pfd.1 pipe p2fd. pipe2out = p2fd.2 pipe2in = p2fd.1 map.0=-1 map.0=pipe2in What if p2fd.1 is not numeric? Then you cannot use map.0 The OP needs to ask for help + review for his REXX program. Groete / Greetings Elardus Engelbrecht -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Calculation involving SMF CPU Time
Thank you very much for your help, Elardus. I am using this: SMFCPU DS F CPU time in timer units So I am just converting to CPU seconds then. As soon as I noticed timer units in the DSECT I realized it. Thanks for checking for me. I'm not sure if I got that number myself from a doc, or if someone here helped me with it a long time ago. Perhaps that thread was mine and you remembered it. :-) Kind regards, Lindy -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Elardus Engelbrecht Sent: Wednesday, October 15, 2014 9:55 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Calculation involving SMF CPU Time Lindy Mayfield wrote: I needed to pull off some user SMF records, and so I used a small program that I had written about 6 or so years ago. In it, I have a line of code like this: SMFCPU = SMFCPU / 38400 I honestly cannot remember why I did that, to divide by 38400, but I must have had a good reason. It doesn't appear to be time related. I'm sure someone here knows, though. I believe there are good reasons, since 38400 is a product of 640 and 60. I vaguely remember some threads about that, something about 'ticks' or CPU Timer which if you multiply it enough, you will come at about 1 second. Ok, After some RTFM in SMF book, POP, macros references, I believe it is 26.04166 microseconds (one timer unit), which if you multiply it by 38400, you arrive at 999 999.744 which could be translated to about 1 second AFAIK. What I know the resolution of CPU values in SMF records are in hundreds of seconds, while the STORE CLOCK (EXTENDED) use more bits in the clock value which is higher resolution. Alternatively, could you be kind to show all statements which contain SMFCPU before that SMFCPU / 38400? This is to see how you got your SMFCPU in the first place and at wat value format it was. Groete / Greetings Elardus Engelbrecht -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Article: IBM Brings Real-Time Analytics to System z Mainframe
This article seems to refer to the N3001 announcement (among others) from last week, but doesn't directly reference it. So... http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=ansubtype=caappname=gpateamsupplier=897letternum=ENUS214-423 (mind the break) I haven't looked at all the details around the N3001, but having spent perhaps too much time working with IDAA over the last year, I believe every DB2 shop should take a look at what IDAA can provide them. There's been some rough spots with incremental update for sure, but they are improving things in that area. But when you hear from your users that processes that used to take them 6-8 hours are now completing in 10 minutes, it's a pretty compelling argument for spending the time to work the kinks out. Scott Chapman -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Performance in S9(08) COMP
Hi . In our cobol programs we have the variables declared as s9(09) COMP, now one of the experts in our area is proposing to use s9(08) COMP as this would give better performace . Could some one please let us know whether the change is going to provide good performance ? Thanks in Advance Regards Ron T -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX syscall spawnp and IPCS
On Wed, 15 Oct 2014 02:04:59 -0500, Elardus Engelbrecht wrote: parm.1=/userhome/sa/myrexx.rx parm.1=myrexx.rx Hmm, I looked again at that posted code and found many such double assignments. I frequently do similarly for testing: /* Second assignment prevails. (Comments are good!) */ parm.1 = parm for testing parm.1 = parm for production ... and simply swap the two lines to switch to testing mode. No need to comment. In fact, the first parm.1 could be deleted or commented out. But the second one is not looking 'right' for me too. Can't tell out of context. I'm also not comfortable with this snippet: pipe p2fd. pipe2out = p2fd.2 pipe2in = p2fd.1 map.0=-1 map.0=pipe2in What if p2fd.1 is not numeric? Then you cannot use map.0 If SYSCALL pipe p2fd. succeeds, it sets p2fd.1 and p2fd.2 to numeric values. It might be prudent to check status in RC and RETVAL. The OP needs to ask for help + review for his REXX program. On review I'm satisfied with the excerpts posted. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Issue with TS3500 Tape Library.
Greetings to all ! On our site we have installed a new TS3500 tape library. When we submit a backup job, the robot inside the library is not picking up the tape using the barcodes (As of now, we are manually moving the tapes to the drive). Also the drive is not ejecting the tape out(moving it to empty slot) after a successful read/write operation. What could be the problem here ? FYKI : We are using 3592 JB tapes and the VOLSER reporting on the tape library is configured to 6 digits. All the tapes are initialized with six digit VOLSER. Thanks, Arun Chinnadurai CAUTION - Disclaimer * This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely for the use of the addressee(s). If you are not the intended recipient, please notify the sender by e-mail and delete the original message. Further, you are not to copy, disclose, or distribute this e-mail or its contents to any other person and any such actions are unlawful. This e-mail may contain viruses. Infosys has taken every reasonable precaution to minimize this risk, but is not liable for any damage you may sustain as a result of any virus in this e-mail. You should carry out your own virus checks before opening the e-mail or attachment. Infosys reserves the right to monitor and review the content of all messages sent to or from this e-mail address. Messages sent to or from this e-mail address may be stored on the Infosys e-mail system. ***INFOSYS End of Disclaimer INFOSYS*** -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
Ron Thomas wrote: In our cobol programs we have the variables declared as s9(09) COMP, now one of the experts in our area is proposing to use s9(08) COMP as this would give better performace . Based on what (documentation / experience) did that expert made that suggestion? Could some one please let us know whether the change is going to provide good performance ? It could be very interesting depending on eventual usage of those variables. Groete / Greetings Elardus Engelbrecht -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX syscall spawnp and IPCS
Paul Gilmartin wrote: I frequently do similarly for testing: /* Second assignment prevails. (Comments are good!) */ parm.1 = parm for testing parm.1 = parm for production ... and simply swap the two lines to switch to testing mode. No need to comment. Your choice. I also find it good, but for myself, I like to comment out those first lines and check my lines with HILITE in ISPF edit sessions before putting it in production. But I also did that same trick you did when I'm in a hurry doing diagnostic. It might be prudent to check status in RC and RETVAL. Agreed. The OP needs to ask for help + review for his REXX program. On review I'm satisfied with the excerpts posted. If you say so. ;-) Groete / Greetings Elardus Engelbrecht -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Issue with TS3500 Tape Library.
Do you have hardware support? If so, I would have them come onsite and see if the robot needs to be taught Lizette -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Arun Prasad Chinnadurai Sent: Wednesday, October 15, 2014 6:44 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Issue with TS3500 Tape Library. Greetings to all ! On our site we have installed a new TS3500 tape library. When we submit a backup job, the robot inside the library is not picking up the tape using the barcodes (As of now, we are manually moving the tapes to the drive). Also the drive is not ejecting the tape out(moving it to empty slot) after a successful read/write operation. What could be the problem here ? FYKI : We are using 3592 JB tapes and the VOLSER reporting on the tape library is configured to 6 digits. All the tapes are initialized with six digit VOLSER. Thanks, Arun Chinnadurai -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
On Wed, 15 Oct 2014 08:46:51 -0500, Ron Thomas ron5...@gmail.com wrote: Hi . In our cobol programs we have the variables declared as s9(09) COMP, now one of the experts in our area is proposing to use s9(08) COMP as this would give better performace . Could some one please let us know whether the change is going to provide good performance ? Thanks in Advance Regards Ron T Pic S9(09) Comp and Pic S9(08) Comp are the exact same size in a COBOL program, (1 fullword, 4 bytes). So there should be no difference in performance in changing the number of digits. From the COBOL Language Reference: Digits in PICTURE clause Storage occupied 1 through 4 2 bytes (halfword) 5 through 9 4 bytes (fullword) 10 through 18 8 bytes (doubleword) I can't speak to COBOL 5.1 since we don't have it yet, but in releases of COBOL prior to 5.1, there may be a performance penalty for Comp items that are larger than 9 digits, (subroutines may be used instead of native code). There is no real performance difference between a 2 byte and a 4 byte Comp field, (one will use Halfword binary instructions and the other will use Fullword binary instructions). Of more importance to the performance of Comp fields is the TRUNC COBOL Compiler option. OS/VS COBOL had only TRUNC or NOTRUNC and generated pretty efficient code for both options. COBOL II, (for some reason), felt the need to change this so you had 3 options, of which none of them generate code as good as OS/VS COBOL. Of the three TRUNC options available, TRUNC(OPT) is the best choice. If you need the equivalent of TRUNC(BIN) for one or more Comp fields, then define them as Comp-5 instead of Comp. -- Dale R. Smith -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
-Original Message- From: IBM Mainframe Discussion List On Behalf Of Ron Thomas Sent: Wednesday, October 15, 2014 8:47 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Performance in S9(08) COMP Hi . In our cobol programs we have the variables declared as s9(09) COMP, now one of the experts in our area is proposing to use s9(08) COMP as this would give better performace . Could some one please let us know whether the change is going to provide good performance ? It depends. See the following two links (Enterprise COBOL v4.2, but probably valid back to VS COBOL II): http://www-01.ibm.com/support/knowledgecenter/#!/SS6SG3_4.2.0/com.ibm.entcobol.doc_4.2/PGandLR/ref/rlddecom.htm http://www-01.ibm.com/support/knowledgecenter/#!/SS6SG3_4.2.0/com.ibm.entcobol.doc_4.2/PGandLR/ui/up4060.htm -jc- ** Information contained in this e-mail message and in any attachments thereto is confidential. If you are not the intended recipient, please destroy this message, delete any copies held on your systems, notify the sender immediately, and refrain from using or disclosing all or any part of its content to any other person. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
The range of a signed twos-complement fullword binary integer value F is, by definition, -2^31 = F = +2^31 - 1, -2147483648 = F = +2147483247. Even the largest and smallest such values contain at least 9 [and sometime 10] notional decimal digits. Where it is still available either the NOTRUNC with a picture clause or COMPUTATIONAL-5 without a picture clause will, or at least can, yield the highest-performance code. Much depends upon the OPT() value you specify. In general truncations to decimal digits are a bad, even diseased, idea for binary data. John Gilmore, Ashland, MA 01721 - USA -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
Ok. So what i understand is there will not be a performance degradation , the compiler option in our installation is set as Trunc(bin). Thanks Ron T -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Performance in S9(08) COMP
On Wed, 15 Oct 2014 13:02:11 -0400, John Gilmore wrote: In general truncations to decimal digits are a bad, even diseased, idea for binary data. Reminds me on the time when, on ASSEMBLER-LIST, I wondered why Packed Decimal uses sign-magnitude rather than 10's complement representation. o 10's complement affords a greater range of numeric values than sign-magnitude in the same storage (factor of 5). o 10's complement avoids the need for a recomplement pass in a subtraction when the sign of the result differs from the sign of either operand. Other contributors to that list assure me that no such recomplement is ever necessary. I continue to disagree. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Calculation involving SMF CPU Time
On 15 October 2014 02:55, Elardus Engelbrecht elardus.engelbre...@sita.co.za wrote: Ok, After some RTFM in SMF book, POP, macros references, I believe it is 26.04166 microseconds (one timer unit), which if you multiply it by 38400, you arrive at 999 999.744 which could be translated to about 1 second AFAIK. This particular magic number comes from the System/360 Interval Timer, which was the only timer on S/360, and persisted into S/370 architecture, but was dropped in 370/XA. It is a 32-bit signed fixed-point number, defined such that bit position 23 is decremented every 1/300 of a second. This was a convenient definition to implement in a basic form in both 50 and 60 Hz countries, since the rate is easily derived from the power supply. But in all but the most low end models, a bit position to the right of 23 was decremented at a faster rate, giving higher precision. Bit position 31 represents 13.020833... μS; I don't know why double that, or bit position 30, is considered a timer unit for SMF purposes. Possibly they wanted to be able to represent more than the 7.7ish hours that the positive number range of the architected format provides. Tony H. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
TCP/IP Port question vis-a-vis firewalls and such on z/OS using Websockets
The standard port for a HTTP server to listen on is 80. So lets say I wanted to have my own address space listen on another port, and I wanted to have some javascript running on my desktop use the websockets api to establish a connection with my address space. The doc I've been reading says the URI is preceded with WS: , not HTTP:, but the rest of it looks to be the same. Is it a big deal from a security standpoint to open up a firewall for this type of a connection? The z/OS address space listening on the port will process and return data specific to the application running on the desktop, and will discard anything that isn't formatted according to its own internal data formats. Will probably pass JSON buffers back and forth. I'm exploring this as an alternative to implementing a browser to HTTP server. If I use that, I've got to write the CGI program, connect to the same address space, get the data, format the JSON buffer, then write the new web page back to the HTTP server, which then eventually gets back to the browser on the desktop. Seems like the websockets approach is a whole lot cleaner, and more efficient. Has anyone been down this path? Would there be security issues with this approach? --Dave -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: TCP/IP Port question vis-a-vis firewalls and such on z/OS using Websockets
Is this for an inside-your-enterprise-firewalls-only sort of application or is there any possibility it will end up exposed to the World Wild Web? Other than the obvious (validating your user and so forth) you need I believe to consider the possibility of Denial of Service attacks. Be very careful about buffer overflows and similar considerations especially before you have validated your user. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Dave Day Sent: Wednesday, October 15, 2014 3:35 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: TCP/IP Port question vis-a-vis firewalls and such on z/OS using Websockets The standard port for a HTTP server to listen on is 80. So lets say I wanted to have my own address space listen on another port, and I wanted to have some javascript running on my desktop use the websockets api to establish a connection with my address space. The doc I've been reading says the URI is preceded with WS: , not HTTP:, but the rest of it looks to be the same. Is it a big deal from a security standpoint to open up a firewall for this type of a connection? The z/OS address space listening on the port will process and return data specific to the application running on the desktop, and will discard anything that isn't formatted according to its own internal data formats. Will probably pass JSON buffers back and forth. I'm exploring this as an alternative to implementing a browser to HTTP server. If I use that, I've got to write the CGI program, connect to the same address space, get the data, format the JSON buffer, then write the new web page back to the HTTP server, which then eventually gets back to the browser on the desktop. Seems like the websockets approach is a whole lot cleaner, and more efficient. Has anyone been down this path? Would there be security issues with this approach? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: TCP/IP Port question vis-a-vis firewalls and such on z/OS using Websockets
On 15 October 2014 18:35, Dave Day dave...@colesoft.com wrote: The standard port for a HTTP server to listen on is 80. So lets say I wanted to have my own address space listen on another port, and I wanted to have some javascript running on my desktop use the websockets api to establish a connection with my address space. The doc I've been reading says the URI is preceded with WS: , not HTTP:, but the rest of it looks to be the same. Is it a big deal from a security standpoint to open up a firewall for this type of a connection? Technically, not at all. Whether it's wise is another matter; you have to take responsibility for whatever is done by anyone who connects to your service, which minimally requires authentication of some sort, and protection of any sensitive data by encryption. You really don't want to roll your own with that stuff; look at the problems very experienced designers have got into over the past year or so. Even if your port is not exposed outside the enterprise, you need to have strong protection. You never know whose VPN'd-from-a-hotel-room laptop may be able to connect to your service. Politically it varies a lot. We've had customers (big companies) who have quite casually said oh sure - your product needs port opened - no problem, I'll call Herb and he'll get it done in a few minutes, to those who require not only a business case with written technical justification from both us as vendor and their own z/OS and network people, but also two weeks lead time with the change control team. I'd say at enterprise customers the latter extreme is closer to normal than the former. So if you can at all avoid requiring use of any non-standard port, I'd try to. BTW, we have some IANA-registered ports. Ten years ago that seemed to impress people; now it quite correctly means nothing to network security folks. Tony H. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: TCP/IP Port question vis-a-vis firewalls and such on z/OS using Websockets
On 16/10/2014 6:35 AM, Dave Day wrote: The standard port for a HTTP server to listen on is 80. So lets say I wanted to have my own address space listen on another port, and I wanted to have some javascript running on my desktop use the websockets api to establish a connection with my address space. The doc I've been reading says the URI is preceded with WS: , not HTTP:, but the rest of it looks to be the same. I would proxy to the websocket server through Apache or whatever web server is running on port 80. BTW, better to use wss: which is secure. Kind of the websocket version of https: Is it a big deal from a security standpoint to open up a firewall for this type of a connection? The z/OS address space listening on the port will process and return data specific to the application running on the desktop, and will discard anything that isn't formatted according to its own internal data formats. Will probably pass JSON buffers back and forth. I'm exploring this as an alternative to implementing a browser to HTTP server. If I use that, I've got to write the CGI program, connect to the same address space, get the data, format the JSON buffer, then write the new web page back to the HTTP server, which then eventually gets back to the browser on the desktop. Seems like the websockets approach is a whole lot cleaner, and more efficient. Websockets are great. If you want to develop modern web apps in JavaScript they're a must have. Has anyone been down this path? Would there be security issues with this approach? --Dave -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN