I asked the following in this list:
.............................................................
   A user here is attempting to compile some programs but always
   end up with the error message
        Insufficient virtual memory to continue compilation.
   The machine is an ES40 with 1G memory running Tru64 v5.1.
   What parameters affect virutal memory allocation to processes?
   What could I change in sysconfig to allow sufficient virtual
   memory for his compilation?
.............................................................
   I received several replies with useful hints. My sincere
   thanks go to
        Aaron Siebert <aaron.siebert_at_nagrastar.com>
        John P Speno <speno_at_isc.upenn.edu>
        Elizabeth Harvey-Forsythe <ehf_at_media.mit.edu>
        "David J. DeWolfe" <sxdjd_at_java.sois.alaska.edu>
        "North, Walter" <wnorth_at_state.mt.us>
        "Thomas M. Payerle" <payerle_at_physics.umd.edu>
        alan_at_nabeth.cxo.dec.com
        Nikola Milutinovic <Nikola.Milutinovic_at_ev.co.yu>
        Udo de Boer <Udo.de.boer_at_ubero.nl>
        "Rao, Ram" <Ram.Rao_at_COMPAQ.com>
   and  "McCulloch, Alan" <alan.mcculloch_at_agresearch.co.nz>
   I have included their replies at the end. What worked for this
   user was Elizabeth's and Nikola's suggestion of turning off 
   optimization. 
   ulimit -v revealed 4G virtual memory!
   The swapfile on the system is 3G of which only 5% was reserved
   for use. So, I haven't tried adding another swapfile.  
   Thanks everybody.
   -- mahendra
   All the replies I got:   
.............................................................
From: Aaron Siebert <aaron.siebert_at_nagrastar.com>
     We have had similiar issues in our environment. We used the
     following settings to solve the problems.
     per-proc-data-size = 10000000000 
     max-per-proc-data-size = 10000000000 
     max-per-proc-address-space = 10000000000 
     per-proc-address-space = 10000000000 
.............................................................
From: John P Speno <speno_at_isc.upenn.edu>
     You need to get an updated C compiler.
     You can try looking in the 5.1 patch kits, or get the DTK
     version from:
        
http://www.tru64unix.compaq.com/dtk/
.............................................................
From: Elizabeth Harvey-Forsythe <ehf_at_media.mit.edu>
     Turning off optimization will probably resolve the error. 
     ALso you can increase the available meory with the ulimit
     command.
.............................................................
From: "David J. DeWolfe" <sxdjd_at_java.sois.alaska.edu>
     Obviously a Banner shop, so here's a compile of fgpbody that
     I did on a  2100 with 2G of memory using Oracle 7.3.4:
proc iname=`basename fgpbody .o`.pc ireclen=132 oreclen=132 lines=y 
select_error=no hold_cursor=no  release_cursor=no maxopencursors=255 
maxliteral=160 ltype=none  include=/t05/BANSEED/general/c/ 
include=/t05/BANSEED/general/c/ dbms=v6 sqlcheck=limited
Pro*C/C++: Release 2.2.4.0.0 - Production on Tue Feb 15 18:16:52 2000
Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved.
System default option values taken from: 
/t02/home/oracle/product/rel73440/precomp/admin/pcscfg.h
cc -migrate -I. -I/t05/BANSEED/general/c -I/t05/BANSEED/general/c -O -std1 
-s  -DOPSYS_UNIX -DPLAT_ALPHA -c `basename fgpbody .o`.c
  mv `basename fgpbody .o`.o /t05/BANSEED/general/exe/`basename fgpbody .o`.o
  rm -f fgpbody.c
chmod 644 /t05/BANSEED/general/exe/`basename fgpbody .o`.o
     Don't know if it will help but thought I'd send it along. I
     notice that  we're using the "-migrate" option and you are
     not. It is in the makefile  that we get from SCT.
.............................................................
From: "North, Walter" <wnorth_at_state.mt.us>
     I had this problem compiling openssl.  I took 4.0G to patch
     kit 2 and the problem went away.
.............................................................
From: "Thomas M. Payerle" <payerle_at_physics.umd.edu>
     You may wish to look at limits imposed by the ulimit
     command.  (In csh and derivatives, limit builtin command). 
     In particular, see if ulimit -dvm may give a clue.
.............................................................
From: alan_at_nabeth.cxo.dec.com
        The most common two limits on virtual memory are:
        o  Insufficient per-process virtual memory limits.
        o  Insufficient page/swap space.
        Per-process virtual memory limits come in two values;
        a default and a maximum.  V4 had three pairs of limits;
        stack, data and address space.  I think V5 only has stack
        and data.  These limits will be documented in the sys_attrs_proc
        manual page.  Look for names like max-per-proc... and per-proc...
        Most shells impose an initial limit of the default value (per-
        proc-...), but have built-in commands that raising the value
        to the maximum.  Have the user consult the manual page for
        whatever he is using.
        If raising the value to the maximum doesn't solve the problem,
        then look at page/swap space.  Nearly every page of virtual
        memory that gets created needs a page of page/swap space
        reserved for it.  There is a reservation mode that allows
        not doing this, but it has its own risks.  The two reservation
        modes are documented.  Look for words like "eager" and "lazy".
        If there is sufficient page/swap space for maximum virtual
        memory desired, then you may need to raise the limit.
   Thank you Alan for the explanation. I was not aware of
   sys_attrs_proc manual page. (AMR)  
.............................................................
From: Nikola Milutinovic <Nikola.Milutinovic_at_ev.co.yu>
     Try with/without optimization - it was known to cause this, 
     which is a bug, BTW.
.............................................................
From: Udo de Boer <Udo.de.boer_at_ubero.nl>
     Take a look at the process limits with "ulimit".
.............................................................
From: "Rao, Ram" <Ram.Rao_at_COMPAQ.com>
     Add more swap space.  That will fix the problem.
.............................................................
From: "McCulloch, Alan" <alan.mcculloch_at_agresearch.co.nz>
     have you tried "unlimit" (C-shell only - see ulimit for
     other shells like Bourne) before running the compilation ?
     If that doesn't work then check out sysconfigdb
.............................................................
Received on Wed Apr 11 2001 - 21:15:09 NZST