How Can I Increase the Memory Available to a Single Process?

To find the default limits for a single process:

% limits

Resource limits (current):
  cputime          infinity secs
  filesize         infinity kb
  datasize           524288 kb
  stacksize           65536 kb
  coredumpsize     infinity kb
  memoryuse        infinity kb
  memorylocked     infinity kb
  maxprocesses          531
  openfiles            1064
  sbsize           infinity bytes
Datasize is the max amount of memory that a single process can use. To increase this limit, you need to add a line to the kernel config file and re-compile. Here's the line:
options MAXDSIZ = "(1536 * 1024 * 1024)"
options DFLDSIZ = "(1536 * 1024 * 1024)"
1536 is what you'd use to set the limit to 1.5GB. Change the first number according to the machine's memory limit. (Looks like the default has been 500 MB.)

Here are comments from the /usr/src/sys/i386/conf/LINT:

#
# Certain applications can grow to be larger than the 128M limit
# that FreeBSD initially imposes.  Below are some options to
# allow that limit to grow to 256MB, and can be increased further
# with changing the parameters.  MAXDSIZ is the maximum that the
# limit can be set to, and the DFLDSIZ is the default value for
# the limit.  You might want to set the default lower than the
# max, and explicitly set the maximum with a shell command for processes
# that regularly exceed the limit like INND.
#

Other DiRT documents
Author: Michele Weigle