On Sun, 16 Jan 2022 at 15:00, Seymour J Metz <[email protected]> wrote:

> Has IBM fixed the code generation for unaligned bit strings, e.g., in SMF
> records, to generate inline code instead of library calls?
>

I'd have to check, but that was definitely one of the worst "features" of
OS PL/I, while working at KLM in the Netherlands in the mid-1990'ies, I
reduced the CPU usage of a CRC routine, as measured with Strobe, by 99.7%
by moving the unaligned bitstring to an aligned one, doing the calculation
on that one, and then moving the result back to the unaligned one.

I'm also responsible for the

"When your code refers to a member of a BASED structure with REFER, the
compiler often has to generate
one or more calls to a library routine to map the structure at run time.
These calls can be expensive, and
so when the compiler makes these calls, it will issue a message so that you
can locate these potential
hot-spots in your code.

If you do have code that uses BASED structures with REFER, which the
compiler flags with this message,
you might get better performance by passing the structure to a subroutine
that declares a corresponding
structure with * extents. This will cause the structure to be mapped once
at the CALL statement, but there
will no further remappings when it is accessed in the called subroutine."

on page 316 of the "Enterprise PL/I for z/OS: Enterprise PL/I for z/OS
Programming Guide" (GI13-4536-02) manual, the second which Peter Elderon
almost literally copied from an email I sent him in 1996, and two RFE's
that deal with allocating storage.,
<https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=31632>
and
<
https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=100073>
that can
save a lot of CPU when allocating complex structures (linked lists, tree's
etc),as the first allows you zap an entire list/tree/etc with an
"area=empty();" statement, which translates to just a handful simple
instructions, the second (a new builtin) makes allocating data inside an
area very fast.

Robert
-- 
Robert AH Prins
robert(a)prino(d)org
The hitchhiking grandfather <https://prino.neocities.org/index.html>
Some REXX code for use on z/OS
<https://prino.neocities.org/zOS/zOS-Tools.html>



> ________________________________________
> From: IBM Mainframe Discussion List [[email protected]] on behalf
> of Robert Prins [[email protected]]
> Sent: Saturday, January 15, 2022 3:04 PM
> To: [email protected]
> Subject: Re: COBOL V6 question
>
> This is something I tend to disagree with when it comes to Enterprise PL/I,
> I've found plenty of instances where the code generated by the old OS
> compiler is shorter (instructions and bytes) than the code generated by
> Enterprise PL/I, and contains a full subset of the instructions generated
> by the OS PL/I compiler - and nobody is going to tell me that executing
> extra instructions will make the old ones executing faster, and even it
> they do, there's also the fact that caching more will evict more...
>
> Robert
>
> On Sat, 15 Jan 2022 at 18:35, Charles Mills <[email protected]> wrote:
>
> > Very specifically with COBOL 6 (and COBOL 5, which was kind of a beta of
> > COBOL 6 <g>) IBM has greatly improved the runtime code optimization. That
> > is all goodness, but there is a price to pay, and the price is greater
> > compile CPU and wall clock times, especially with OPT values other than
> > zero.
> >
> > Charles
> >
> >
> > -----Original Message-----
> > From: IBM Mainframe Discussion List [mailto:[email protected]] On
> > Behalf Of Robert Prins
> > Sent: Saturday, January 15, 2022 5:14 AM
> > To: [email protected]
> > Subject: Re: COBOL V6 question
> >
> > Unable to test now, but I think we observed the same thing many years ago
> > when moving from OS PL/I to Enterprise PL/I, and on the now defunct
> > FanDeZhi system (z/OS 1.6 running under Hercules), where both compilers
> > were "installed", it was definitely the case that EPLI compiles used to
> > take significantly longer than OS PLI compiles.
> >
> > On Fri, 14 Jan 2022 at 16:39, Charles Mills <[email protected]> wrote:
> >
> > > White paper about the dramatic increase in compile CPU times here:
>
>
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to