HP3000-L Archives

March 2010, Week 1

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Brian Donaldson <[log in to unmask]>
Reply To:
Date:
Mon, 1 Mar 2010 17:41:35 EST
Content-Type:
multipart/mixed
Parts/Attachments:
text/plain (3515 bytes) , text/plain (4 kB)
 
Recently I received a response from our wonderful techie at HP regarding  
this subject matter.
 
In a message dated 2/25/2010 2:08:56 P.M. Pacific Standard Time,  
[log in to unmask] writes:

Here is  some information on the performance options:  optimize, 
callaligned and  linkaligned:   You were right on the bounds and validate.

The  OPTIMIZE option specifies the level of object code optimization you 
want. If  your
program does not contain the OPTIMIZE option, the object code is not  
optimized.

Performance Option     Effect

OPTIMIZE=0            Turns off  optimization.  This is the default.

OPTIMIZE[=1]     Turns on level one optimization.

The following  lists all the possible optimization options:

If you specify:   You get:
$CONTROL  OPTIMIZE               Level one  optimization.
$CONTROL OPTIMIZE=1           Level one optimization.
$CONTROL OPTIMIZE=0     No optimization, the  default.
Nothing                 No optimization, the  default.

Although OPTFEATURES is an interprogram communication option,  its
settings CALLALIGNED and LINKALIGNED are designed to improve  performance. 
This is used for a program which has subprogram  calls.


OPTFEATURES=CALLALIGNED[16]         Checks that actual parameters
in CALL statements are
word-aligned.  (for  CALLALIGNED)
or  halfword-aligned (for
CALLALIGNED16).

OPTFEATURES=LINKALIGNED[16]       Generates executable code for
formal parameters, assuming
that actual parameters  are
word-aligned  (for LINKALIGNED)
or halfword-aligned (for
LINKALIGNED16).

If both CALLALIGNED and LINKALIGNED are  specified, you must separate them 
with a
space.

By default, the  compiler expects parameters passed to subprograms by 
reference to  be
byte-aligned. The compiler generates extra code in the called program to  
move byte-aligned data to temporary storage that is 32-bit aligned (or 16-bit 
 aligned) when required by arithmetic expressions.

When LINKALIGNED is  specified, the compiler generates code that expects 
parameters
in the  LINKAGE SECTION (01s and 77s) to be 32-bit aligned.

If LINKALIGNED16 is  specified, the compiler generates code for 16-bit 
alignment.

The  LINKALIGNED options are not meaningful for main programs. The compiler 
 generates more efficient code for accessing formal parameters when you 
specify  one of these options.

If you do not specify a LINKALIGNED option, the  compiler generates code 
that assumes the parameters are on byte  boundaries  (see \BOUNDS" later in 
this section for details).

When  CALLALIGNED is specified, the compiler checks the alignment of all 
identifiers  in the USING phrase of CALL statements. An error message is 
issued for  parameters not
on a 32-bit boundary.

If CALLALIGNED16 is specified,  the compiler checks for 16-bit boundaries. 
Once you have changed the alignment  of the flagged parameters, you can 
remove the CALLALIGNED option. Subprograms  written in languages other than HP 
COBOL II may require parameters to be  aligned on 32- or 16-bit boundaries. 
The CALLALIGNED or CALLALIGNED16 option  can be used to flag any parameters 
that are not properly aligned for the  subprogram.

Note CALLALIGNED does not apply to intrinsic calls.  Alignment requirements 
for
intrinsics are always checked when you use the  CALL INTRINSIC format of 
the CALL statement.

Example.
$CONTROL  BOUNDS,OPTFEATURES=CALLALIGNED LINKALIGNED, OPTIMIZE=1

Best  Regards

Cathlene Mc Rae
HP SR. Response Center  Engineer
[log in to unmask]





* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *



Brian, Here is some information on the performance options: optimize, callaligned and linkaligned: You were right on the bounds and validate. The OPTIMIZE option specifies the level of object code optimization you want. If your program does not contain the OPTIMIZE option, the object code is not optimized. Performance Option Effect OPTIMIZE=0 Turns off optimization. This is the default. OPTIMIZE[=1] Turns on level one optimization. The following lists all the possible optimization options: If you specify: You get: $CONTROL OPTIMIZE Level one optimization. $CONTROL OPTIMIZE=1 Level one optimization. $CONTROL OPTIMIZE=0 No optimization, the default. Nothing No optimization, the default. Although OPTFEATURES is an interprogram communication option, its settings CALLALIGNED and LINKALIGNED are designed to improve performance. This is used for a program which has subprogram calls. OPTFEATURES=CALLALIGNED[16] Checks that actual parameters                                       in CALL statements are                                       word-aligned. (for CALLALIGNED)                                       or halfword-aligned (for                                       CALLALIGNED16). OPTFEATURES=LINKALIGNED[16] Generates executable code for                                       formal parameters, assuming                                       that actual parameters are                                       word-aligned (for LINKALIGNED)                                       or halfword-aligned (for                                       LINKALIGNED16). If both CALLALIGNED and LINKALIGNED are specified, you must separate them with a space. By default, the compiler expects parameters passed to subprograms by reference to be byte-aligned. The compiler generates extra code in the called program to move byte-aligned data to temporary storage that is 32-bit aligned (or 16-bit aligned) when required by arithmetic expressions. When LINKALIGNED is specified, the compiler generates code that expects parameters in the LINKAGE SECTION (01s and 77s) to be 32-bit aligned. If LINKALIGNED16 is specified, the compiler generates code for 16-bit alignment. The LINKALIGNED options are not meaningful for main programs. The compiler generates more efficient code for accessing formal parameters when you specify one of these options. If you do not specify a LINKALIGNED option, the compiler generates code that assumes the parameters are on byte boundaries (see \BOUNDS" later in this section for details). When CALLALIGNED is specified, the compiler checks the alignment of all identifiers in the USING phrase of CALL statements. An error message is issued for parameters not on a 32-bit boundary. If CALLALIGNED16 is specified, the compiler checks for 16-bit boundaries. Once you have changed the alignment of the flagged parameters, you can remove the CALLALIGNED option. Subprograms written in languages other than HP COBOL II may require parameters to be aligned on 32- or 16-bit boundaries. The CALLALIGNED or CALLALIGNED16 option can be used to flag any parameters that are not properly aligned for the subprogram. Note CALLALIGNED does not apply to intrinsic calls. Alignment requirements for intrinsics are always checked when you use the CALL INTRINSIC format of the CALL statement. Example. $CONTROL BOUNDS,OPTFEATURES=CALLALIGNED LINKALIGNED, OPTIMIZE=1 Best Regards  Cathlene Mc Rae HP SR. Response Center Engineer [log in to unmask] HP strives to improve customer loyalty through our support. It is our goal to be the industry leading support services provider. Please forward any comments or suggestions to me at the above email address or feel free to call my manager, Stephane Couture (514) 428-1365 or e-mail him at [log in to unmask] HP will offer limited MPE support (Mature Product Support without Sustaining Engineering) from January 1, 2009 through December 31, 2010. For more information, please refer to: http://www.hp.com/go/e3000 HP is committed to respecting your privacy. For more information, contact us at: HP Privacy Mailbox, 20555 SH 249, MS 040307, Houston, Texas 77070 or visit http://welcome.hp.com/country/us/en/privacy/worldwide_privacy.html * To join/leave the list, search archives, change list settings, * * etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

ATOM RSS1 RSS2