PM88372: PERFORMANCE OF N-WISE REDUCTION ON NESTED ARRAYS

A fix is available

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • The performance of N-wise reduction on nested arrays is very
    slow.  As the array gets larger the problem seems to grow
    exponentially worse.  For example, the expression Z {assign}
    2 {match}/X  where X is a 100,000-element nested array of
    character vectors takes hours, where a 10,000-element array
    of the same type takes only seconds.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All APL2 users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: With large nested array arguments,      *
    *                      the performance of N-wise reduction     *
    *                      is unacceptable.                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    N-wise reduction is written in APL.  The APL code used a
    less than optimal method of extracting the subset of the
    argument to be operated on in each interation.
    

Problem conclusion

  • The code is changed in three ways to improve performance:
    1. A take/drop expression is replaced with an index expression
       when extracting subsets of the argument.
    2. A special case is created for vector arguments to
       eliminate the need for axis operations in that case.
    3. The computation of a constant value used inside the loop is
       moved outside the loop so it will only be done once.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM88372

  • Reported component name

    APL2

  • Reported component ID

    566889901

  • Reported release

    222

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-05-02

  • Closed date

    2013-05-07

  • Last modified date

    2013-06-04

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    UK94122 UK94123

Modules/Macros

  •    AP2IPDD1
    

Fix information

  • Fixed component name

    APL2

  • Fixed component ID

    566889901

Applicable component levels

  • R222 PSY UK94122

       UP13/05/09 P F305

  • R225 PSY UK94123

       UP13/05/09 P 1305

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.



Rate this page:

(0 users)Average rating

Document information


More support for:

APL2
Mainframe APL2

Software version:

222

Reference #:

PM88372

Modified date:

2013-06-04

Translate my page

Machine Translation

Content navigation