Kernel option for memory usage.

From: Charles Hooks <cdhooks_at_astro.psu.edu>
Date: Mon, 24 Apr 2000 14:43:40 -0400

Thanks to the following people for their information regarding kernel tuning
for memory usage. Their responses are included below.

Dr. Tom Blinn
Alan Davis
Paul Henderson
Robert Carsey

There is a tuning handbook that is part of the documentation set (e.g., on
the doc CDROM). You should read it.

By default, 100% of the available memory on the system is made available
to user processes, with a couple of gotchas.

First, you must have more swap space available than you have physical
pages for user space programs, or you will run out of swap before you
run out of physical memory, unless you use "lazy" swap allocation (see
the swapon(8) reference page and the tuning guide).

Second, if you want to allow any one user process to consume all of the
available physical memory, you need to increase the per-process memory
limits (see the ulimit reference page among other places). The right
way to do this is by tuning the proc and vm subsystems using the file
/etc/sysconfigtab; refer to the tuning guide (and the list archives)
for information.

Tom

There isn't one specific parameter, but there are several that work together
to minimize the amount of physmem allocated to things like i/o buffers.

Take a look at the tuning and config manual :
ubc-max-percent
per-proc-*-size
max-per-proc-*-size
maxusers
bufcache (if using ufs)

You should also prune your kernel down to only the features your system
needs, ie remove ATM if you don't use it.

Charles,

Just run /usr/bin/X11/dxkerneltuner for a graphical interface to kernel
parameters. Look in the "proc" subset for attributes that affect a process'
resource usage.

Paul

do a man on

# sysconfig -q proc
proc:
max_proc_per_user = 256
max_threads_per_user = 512
per_proc_stack_size = 8388608
max_per_proc_stack_size = 33554432
per_proc_data_size = 134217728
max_per_proc_data_size = 1073741824
max_per_proc_address_space = 4294967296
per_proc_address_space = 4294967296
executable_stack = 0
autonice = 0
autonice_time = 600
autonice_penalty = 4
open_max_soft = 4096
open_max_hard = 4096
ncallout_alloc_size = 8192
round_robin_switch_rate = 0
sched_min_idle = 0
give_boost = 1
maxusers = 256
num_wait_queues = 256
num_timeout_hash_queues = 256
enhanced_core_name = 0
enhanced_core_max_versions = 16
exec_disable_arg_limit = 0


                        Thanks again for the help.

                        Charles Hooks

Original Message:
Hello all,

   I have a question regarding kernel parameters and memory allocation.
In HP-UX there is a kernel param that will allow you to allocate more
memory for user processes. Is there one in Digital Unix 4.0f? If so,
how are the values allocated and what are the parameters? There seems
to be a set amount of memory that users are allowed to use and after
installing over 1Gb of memory I would like to allocate a majority of it to
user processes.

Thanks in advance.

System: Alpha 2100 Dual Proc.
OS: Digital Unix 4.0F
Memory: 1Gb.
Received on Mon Apr 24 2000 - 18:44:14 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:40 NZDT