home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!paladin.american.edu!howland.reston.ans.net!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!ucbvax!IPG.PH.KCL.AC.UK!SYSMGR
- From: SYSMGR@IPG.PH.KCL.AC.UK
- Newsgroups: comp.os.vms
- Subject: Re: ballooning EXE size
- Message-ID: <2A2001BF_000770F8.009663742A989FC0$427_1@UK.AC.KCL.PH.IPG>
- Date: 6 Jan 93 16:55:09 GMT
- Sender: daemon@ucbvax.BERKELEY.EDU
- Distribution: world
- Organization: The Internet
- Lines: 35
-
- >> [regarding the problem of a FORTRAN program that suddenly needed 70 times
- >> as many disk blocks for the .EXE after minor changes and a relink]
- >> ... increase ISD_MAX ...
- >
- > ...
- > Image sections do not come for free. Your process can only have a certain
- > number of them, given by the PROCSECTCNT SYSGEN parameter value. To avoid
- > creating too many image sections, the Linker stops doing demand-zero compression
- > when the total number of image sections reaches the value set by the ISD_MAX
- > linker option, the default value of which is 96. This is what happened ...
-
- I haven't yet seen any mention of the other linker option relevant to this
- discussion: DZRO_MIN. This is the minimum number of contiguous uninitialised
- writeable pages that the linker must find before it decides to create a demand-
- zero section. The default is 5, which IMHO is far too small for the typical
- large FORTRAN program. Perverse as it may sound, try increasing it while
- leaving ISD_MAX alone. You'll probably get an EXE file which is both efficient
- with respect to section usage, and reasonably compact, though a bit bigger
- than it used to be.
-
- In FORTRAN variables are allocated at LINK time. Typically what you want is
- for your large uninitialised arrays and/or large uninitialised COMMON blocks
- to become demand-zero sections. Suppose your smallest 'big' array declaration
- is REAL A(64,64). Then setting DZRO_MIN to 32 (64*64*4/512) will prevent you
- from hitting ISD_MAX while linking 'smaller arrays.
-
- Hope this helps,
-
- Nigel Arnot
-
- NRA%ipg.ph.kcl.ac.uk@nsfnet-relay.ac.uk (internet)
- NRA%uk.ac.kcl.ph.ipg@ukacrl.bitnet (bitnet)
-
-
-
-