Re: REXX exec, To compile or not to compile
-Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Ze'ev Atlas Sent: Thursday, August 08, 2013 5:25 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: REXX exec, To compile or not to compile Yes if you have a lot of rexx-pure executing code. If you have a many host commands intermingled with the code it's probably not much benefits. I wanted to ask, where is EXECIO in the picture and how is it compares with using stream EXECIO does not benefit from compiling the program. Someone has found that it even loses on compilation (although not much). Probably because of the overhead of creating and filling the stem variables. (NOTE that EXECIO is an external functionality!) FWIW, you could sometimes get better performance by using the stack instead of a stem when using EXECIO. I have no experience of stream on MVS. Best Regards Thomas Berg ___ Thomas Berg Specialist zOS\RQM\IT Delivery SWEDBANK AB (Publ) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
In 6599134786195468.wa.zatlas1yahoo@listserv.ua.edu, on 08/07/2013 at 10:24 PM, Ze'ev Atlas zatl...@yahoo.com said: I wanted to ask, where is EXECIO in the picture and how is it compares with using stream EXECIO is a REXX-aware TSO command; it has higher overhead than equivalent stream facilities, but some EXECIO facilities, e.g., stems, do not exist in stream, and steam was not available in the TSO environment the last time that I looked. If you're reading and writing individual lines in a Unix environment, use stream. If you're reading or writing an entire file, EXECIO is probably a better choice. -- Shmuel (Seymour J.) Metz, SysProg and JOAT Atid/2http://patriot.net/~shmuel We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
On Thu, 8 Aug 2013 08:46:27 -0400, Shmuel Metz (Seymour J.) wrote: I wanted to ask, where is EXECIO in the picture and how is it compares with using stream EXECIO is a REXX-aware TSO command; it has higher overhead than equivalent stream facilities, but some EXECIO facilities, e.g., stems, do not exist in stream, and steam was not available in the TSO environment the last time that I looked. Conway's law. I believe stream is available in compiled Rexx, and perhaps can be installed to interface with interpreted Rexx. But that form of stream deals only with legacy data sets. The Unix System Services form of stream deals only with UNIX files. And neither AFAIK implements SIGNAL ON NOTREADY. If you're reading and writing individual lines in a Unix environment, use stream. If you're reading or writing an entire file, EXECIO is probably a better choice. Or SYSCALL write/read, but EXECIO might gain performance by buffering for you. Also SYSCALL readfile. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
REXX exec, To compile or not to compile
Hi all Is there any performance benefit of compiling our frequently REXX execs? Kind regards Kostas -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
Hi, Yes if you have a lot of rexx-pure executing code. If you have a many host commands intermingled with the code it's probably not much benefits. It depends of how much of the processing is done in the rexx code. Regards Thomas Berg Thomas Berg Specialist z/OS\RQM\IT Delivery SWEDBANK AB (Publ) -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of K Sent: Wednesday, August 07, 2013 9:51 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: REXX exec, To compile or not to compile Hi all Is there any performance benefit of compiling our frequently REXX execs? Kind regards Kostas -- 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: REXX exec, To compile or not to compile
Agree with Thomas On the REXX compiler installation, you find some compute intensive samples. Here we got the CPU speed 1 - 7 for the compiled REXX code I didn't see any official performance compare between compiled and interpreted code. Maybe a point would be to minimize the called external REXX functions. On 07.08.2013 11:06, Thomas Berg wrote: Hi, Yes if you have a lot of rexx-pure executing code. If you have a many host commands intermingled with the code it's probably not much benefits. It depends of how much of the processing is done in the rexx code. Regards Thomas Berg Thomas Berg Specialist z/OS\RQM\IT Delivery SWEDBANK AB (Publ) -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of K Sent: Wednesday, August 07, 2013 9:51 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: REXX exec, To compile or not to compile Hi all Is there any performance benefit of compiling our frequently REXX execs? Kind regards Kostas -- 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 -- Kind regards, / Mit freundlichen Grüßen Miklos Szigetvari Research Development ISIS Papyrus Europe AG Alter Wienerweg 12, A-2344 Maria Enzersdorf, Austria T: +43(2236) 27551 333, F: +43(2236)21081 E-mail: miklos.szigetv...@isis-papyrus.com Info: i...@isis-papyrus.com Hotline: +43-2236-27551-111 Visit our brand new extended Website at www.isis-papyrus.com --- This e-mail is only intended for the recipient and not legally binding. Unauthorised use, publication, reproduction or disclosure of the content of this e-mail is not permitted. This email has been checked for known viruses, but ISIS Papyrus accepts no responsibility for malicious or inappropriate content. --- -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
Yes, but modest. Others have pointed out the issue of external calls. I would also point out the issue of potential gain. If the Rexx exec currently takes .1 seconds to run, exactly how much are you likely to gain from compiling it? Also note that unlike what your expectations may be, compiled Rexx code requires a separately-licensed run-time library. It will run without it, but it runs in interpreted mode, so there is ZERO gain no matter what the code is like. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of K Sent: Wednesday, August 07, 2013 3:51 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: REXX exec, To compile or not to compile Hi all Is there any performance benefit of compiling our frequently REXX execs? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
I thought there were 2 versions of the runtime system for REXX. One that was free and one you paid for and therefore licensed. If this is still true, I suspect the differences between the two versions is related to either tighter code, more functions or both. I've truly never checked it out. I was under the impression that you can compile your REXX code and then distribute it license free with the alternate REXX library. Once thing that I have found is that compiled REXX cannot be run under IPCS. I have not heard if that has changed. Anyone know if it has? Chuck Charles (Chuck) Hardee Senior Systems Engineer/Database Administration CCG Information Technology Thermo Fisher Scientific 300 Industry Drive Pittsburgh, PA 15275 Direct: 724-517-2633 FAX: 412-490-9230 chuck.har...@thermofisher.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Charles Mills Sent: Wednesday, August 07, 2013 6:51 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: REXX exec, To compile or not to compile Yes, but modest. Others have pointed out the issue of external calls. I would also point out the issue of potential gain. If the Rexx exec currently takes .1 seconds to run, exactly how much are you likely to gain from compiling it? Also note that unlike what your expectations may be, compiled Rexx code requires a separately-licensed run-time library. It will run without it, but it runs in interpreted mode, so there is ZERO gain no matter what the code is like. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of K Sent: Wednesday, August 07, 2013 3:51 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: REXX exec, To compile or not to compile Hi all Is there any performance benefit of compiling our frequently REXX execs? -- 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: REXX exec, To compile or not to compile
On 8/7/2013 7:21 AM, Hardee, Chuck wrote: I thought there were 2 versions of the runtime system for REXX. One that was free and one you paid for and therefore licensed. If this is still true, I suspect the differences between the two versions is related to either tighter code, more functions or both. I've truly never checked it out. I was under the impression that you can compile your REXX code and then distribute it license free with the alternate REXX library. I worked for an ISV with programs in mixed mode (REXX and HLASM). My boss asked me the same question, with the intent of protecting intellectual property by not distributing source. The alternate REXX library is distributed as part of the system, hence available to all customers. As it turns out, the compiled module is bi-modal; when the installation is licensed for either the REXX compiler or only the chargeable library, then programs may run faster. But each compiled module also contains the original, parameterized source, able to run on unlicensed systems. A determined user could reverse engineer the code, so we saw no business case; a licensed user still had the option of compiling. Misusing the source was made trivially more difficult with a conversion program that eliminated all extraneous blanks and comments. Gerhard Postpischil Bradford, Vermont -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
This is from the REXX user guide: The performance improvements that you can expect when you run compiled REXX programs depend on the type of program. A program that performs large numbersof arithmetic operations of default precision shows the greatest improvement. Aprogram that mainly issues commands to the host shows limited improvement,because REXX cannot decrease the time taken by the host to process the commands. Compiled programs that include many ...Run this much faster:Arithmetic operations, string and word processing operations: .6 to 10 timesConstants and variables,references to procedures and built-in functions, changes to values of variables: .4 to 6 times Assignments, reused compound variables: .2 to 4 timesHost commands: .minimal improvement Hope that helps, Dave Salt SimpList(tm) - try it; you'll get it! http://www.mackinney.com/products/program-development/simplist.html Date: Wed, 7 Aug 2013 09:02:58 -0400 From: gerh...@valley.net Subject: Re: REXX exec, To compile or not to compile To: IBM-MAIN@LISTSERV.UA.EDU On 8/7/2013 7:21 AM, Hardee, Chuck wrote: I thought there were 2 versions of the runtime system for REXX. One that was free and one you paid for and therefore licensed. If this is still true, I suspect the differences between the two versions is related to either tighter code, more functions or both. I've truly never checked it out. I was under the impression that you can compile your REXX code and then distribute it license free with the alternate REXX library. I worked for an ISV with programs in mixed mode (REXX and HLASM). My boss asked me the same question, with the intent of protecting intellectual property by not distributing source. The alternate REXX library is distributed as part of the system, hence available to all customers. As it turns out, the compiled module is bi-modal; when the installation is licensed for either the REXX compiler or only the chargeable library, then programs may run faster. But each compiled module also contains the original, parameterized source, able to run on unlicensed systems. A determined user could reverse engineer the code, so we saw no business case; a licensed user still had the option of compiling. Misusing the source was made trivially more difficult with a conversion program that eliminated all extraneous blanks and comments. Gerhard Postpischil Bradford, Vermont -- 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: REXX exec, To compile or not to compile
I compiled the ISPF DTL compiler which is written in REXX. It ran significantly quicker. I have EXECIO benchmarks where compiled REXX was actually slower. http://users.tpg.com.au/crayford/rexx-lua-c-io-benchmark.htm. On 07/08/2013, at 10:08 PM, Dave Salt ds...@hotmail.com wrote: This is from the REXX user guide: The performance improvements that you can expect when you run compiled REXX programs depend on the type of program. A program that performs large numbersof arithmetic operations of default precision shows the greatest improvement. Aprogram that mainly issues commands to the host shows limited improvement,because REXX cannot decrease the time taken by the host to process the commands. Compiled programs that include many ...Run this much faster:Arithmetic operations, string and word processing operations: .6 to 10 timesConstants and variables,references to procedures and built-in functions, changes to values of variables: .4 to 6 times Assignments, reused compound variables: .2 to 4 timesHost commands: .minimal improvement Hope that helps, Dave Salt SimpList(tm) - try it; you'll get it! http://www.mackinney.com/products/program-development/simplist.html Date: Wed, 7 Aug 2013 09:02:58 -0400 From: gerh...@valley.net Subject: Re: REXX exec, To compile or not to compile To: IBM-MAIN@LISTSERV.UA.EDU On 8/7/2013 7:21 AM, Hardee, Chuck wrote: I thought there were 2 versions of the runtime system for REXX. One that was free and one you paid for and therefore licensed. If this is still true, I suspect the differences between the two versions is related to either tighter code, more functions or both. I've truly never checked it out. I was under the impression that you can compile your REXX code and then distribute it license free with the alternate REXX library. I worked for an ISV with programs in mixed mode (REXX and HLASM). My boss asked me the same question, with the intent of protecting intellectual property by not distributing source. The alternate REXX library is distributed as part of the system, hence available to all customers. As it turns out, the compiled module is bi-modal; when the installation is licensed for either the REXX compiler or only the chargeable library, then programs may run faster. But each compiled module also contains the original, parameterized source, able to run on unlicensed systems. A determined user could reverse engineer the code, so we saw no business case; a licensed user still had the option of compiling. Misusing the source was made trivially more difficult with a conversion program that eliminated all extraneous blanks and comments. Gerhard Postpischil Bradford, Vermont -- 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 -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: REXX exec, To compile or not to compile
Yes if you have a lot of rexx-pure executing code. If you have a many host commands intermingled with the code it's probably not much benefits. I wanted to ask, where is EXECIO in the picture and how is it compares with using stream Thanks ZA -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN