*BSD News Article 12587


Return to BSD News archive

Newsgroups: comp.os.386bsd.questions
Path: sserve!manuel.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!saimiri.primate.wisc.edu!usenet.coe.montana.edu!news.u.washington.edu!ns1.nodak.edu!plains.NoDak.edu!tinguely
From: tinguely@plains.NoDak.edu (Mark Tinguely)
Subject: Re: gcc - large arrays, out of vm - any way to avoid?
Sender: usenet@ns1.nodak.edu (Usenet login)
Message-ID: <C3MxJ1.JKw@ns1.nodak.edu>
Date: Tue, 9 Mar 1993 18:47:25 GMT
References: <9303022137.AA04169@pizzabox.demon.co.uk> <1993Mar7.231311.352@marie.uucp>
Nntp-Posting-Host: plains.nodak.edu
Organization: North Dakota State University
Lines: 24

In article <1993Mar7.231311.352@marie.uucp> perryh@marie.uucp (Perry Hutchison) writes:
>In <9303022137.AA04169@pizzabox.demon.co.uk> gtoal@gtoal.com (Graham Toal) writes:
>
>> it's only 50K yet its running out of virtual memory during the
>> compile (with the error: "prog.c:2683: Virtual memory exhausted.")
>
>> The machine has 16Mb of Ram and I think 8Mb swap space.
>
>Don't you need to have swap > ram ?  Based on experience with SunOS I
>would expect 16Mb ram to do well with 32-48Mb of swap.

 to savecore when the system crashes, yes backstore > ram. but with the
 Mach VM in 386bsd, when new ram pages are needed, text pages are taken
 directly from the program stored in the filesystem (never overwrite the
 binary of a running program), and only modified pages are placed in the
 swap backstore. these modified pages are only place in swap backstore when
 ram is needed. So VM is a sum of ram and swap backstore. Older Unix (tm)
 copy the program into swap and page to/from that copy.

 The above problem may be a ulimit set too low because most of the time
 the mach VM is really exhausted, it quietly hangs the system. If you
 run the csh type: "limit" to see where they are set.

--mark.