Maximum memory allocation per process
Jeremy Chadwick
koitsu at FreeBSD.org
Thu May 22 13:38:19 UTC 2008
On Thu, May 22, 2008 at 11:00:37PM +1000, Adrian Thearle wrote:
> I have a problem with a perl script running out of memory. From my googling
> I have found that perl itself does not seem to impose any memory limits,
> and I have check ulimit and login.conf for any userclass limitations but
> found nothing that seems to be limiting my memory.
>
> I have 128MBytes of RAM and a 2Gbyte swap partition.
>
> I am currently running
> FreeBSD albert 6.2-STABLE FreeBSD 6.2-STABLE #11: Sun Sep 2 00:45:05 EST
> 2007
> which I guess isn't exactly the latest... but the same thing happens on my
> REL7.0 Box
>
> The process (imapsync in this case) runs out of ram at pretty much 512MB. I
> read on a forum that BSD 6 imposes such a limit of 512MB per process, but i
> have found no where to tune this, or even see what it is.
You need to modify some kernel settings via /boot/loader.conf and
reboot. Here's what we use on our production RELENG_6 and RELENG_7
boxes:
# Increase maximum allocatable memory on a process to 2GB.
# (We don't choose 3GB (our max RAM) since that would
# exhaust all memory, and result in a kernel panic.)
# Set default memory size as 768MB.
# Maximum stack size is 256MB.
#
kern.maxdsiz="2048M"
kern.dfldsiz="768M"
kern.maxssiz="256MB"
> I have also read that there are two sysctl namely, kern.maxdsiz and
> kern.maxssiz, that can tune memory allocation but what happend to them in
> Freebsd 6.
These are not sysctls, they are kernel settings. They exist on both
RELENG_6 and RELENG_7.
--
| Jeremy Chadwick jdc at parodius.com |
| Parodius Networking http://www.parodius.com/ |
| UNIX Systems Administrator Mountain View, CA, USA |
| Making life hard for others since 1977. PGP: 4BD6C0CB |
More information about the freebsd-hackers
mailing list