Language Environment (LE) runtime libraries
When C programs (including the z/OS® UNIX shell) are run, they frequently use routines from the Language Environment® (LE) runtime library. On average, about 4 MB of the runtime library are loaded into memory for every address space running a LE-enabled program, and copied on every fork.
CEE.SCEELPA
The CEE.SCEELPA
data set contains a subset of
the LE runtime routines, which are heavily used by z/OS UNIX.
You should add this data set to SYS1.PARMLIB(LPALSTxx)
for
maximum performance gain. By doing so, the modules are read from disk
only once and are stored in a shared location.
SYS1.PARMLIB(PROGxx)
if
you prefer to add the load modules into dynamic LPA (Link Pack Area):
LPA ADD MASK(*) DSNAME(CEE.SCEELPA)
It is also advised to place the LE runtime libraries CEE.SCEERUN
and CEE.SCEERUN2
in
LINKLIST, by adding the data sets to SYS1.PARMLIB(LNKLSTxx)
or SYS1.PARMLIB(PROGxx)
.
This eliminates z/OS UNIX STEPLIB overhead and there
is reduced input/output due to management by LLA and VLF, or similar
products.
CBC.SCLBDLL
also
to LINKLIST for the same reasons.If you decide not to put these libraries in LINKLIST, then you
must set up the appropriate STEPLIB statement in rse.env
,
as described in rse.env
, configuration file. Although
this method always uses additional virtual storage, you can improve
performance by defining the LE runtime libraries to LLA or a similar
product. This reduces the I/O that is needed to load the modules.