JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris Tunable Parameters Reference Manual     Oracle Solaris 10 8/11 Information Library
search filter icon
search icon

Document Information

Preface

1.  Overview of Oracle Solaris System Tuning

What's New in Oracle Solaris System Tuning?

Oracle Solaris System Tuning in the Solaris 10 Release

Default Stack Size

System V IPC Configuration

NFSv4 Parameters

New and Changed TCP/IP Parameters

IP Forwarding Changes

SPARC: Translation Storage Buffer (TSB) Parameters

SCTP Tunable Parameters

Tuning an Oracle Solaris System

Tuning Format of Tunable Parameters Descriptions

Tuning the Oracle Solaris Kernel

/etc/system File

Example--Setting a Parameter in /etc/system

Recovering From an Incorrect Value

kmdb Command

mdb Command

Example-Using mdb to Display Information

Special Oracle Solaris tune and var Structures

Viewing Oracle Solaris System Configuration Information

sysdef Command

kstat Utility

2.  Oracle Solaris Kernel Tunable Parameters

3.  NFS Tunable Parameters

4.  Internet Protocol Suite Tunable Parameters

5.  Network Cache and Accelerator Tunable Parameters

6.  System Facility Parameters

A.  Tunable Parameters Change History

B.  Revision History for This Manual

Index

Oracle Solaris System Tuning in the Solaris 10 Release

This section describes significant tuning enhancements in the Oracle Solaris 10 release.

Default Stack Size

A new parameter, default_stksize, specifies the default stack size of all threads, kernel or user. The lwp_default_stksize parameter is still available, but it does not affect all kernel stacks. If default_stksize is set, it overrides lwp_default_stksize. For more information, see default_stksize.

System V IPC Configuration

In the Oracle Solaris 10 release, all System V IPC facilities are either automatically configured or can be controlled by resource controls. Facilities that can be shared are memory, message queues, and semaphores.

Resource controls allow IPC settings to be made on a per-project or per-process basis on the local system or in a name service environment.

In previous Solaris releases, IPC facilities were controlled by kernel tunables. You had to modify the /etc/system file and reboot the system to change the default values for these facilities.

Because the IPC facilities are now controlled by resource controls, their configuration can be modified while the system is running.

Many applications that previously required system tuning to function might now run without tuning because of increased defaults and the automatic allocation of resources.

The following table identifies the now obsolete IPC tunables and the possible resource controls that could be used as replacements. An important distinction between the obsolete IPC tunables and resource controls is that the IPC tunables were set on a system-wide basis and the resource controls are set on a per-project or per-process basis.

Resource Control
Obsolete Tunable
Old Default Value
Maximum Value
New Default Value
process.max-msg-qbytes
msgsys:msginfo_msgmnb
4096
ULONG_MAX
65536
process.max-msg-messages
msgsys:msginfo_msgtql
40
UINT_MAX
8192
process.max-sem-ops
semsys:seminfo_semopm
10
INT_MAX
512
process.max-sem-nsems
semsys:seminfo_semmsl
25
SHRT_MAX
512
project.max-shm-memory
shmsys:shminfo_shmmax*
0x800000
UINT64_MAX
1/4 of physical memory
project.max-shm-ids
shmsys:shminfo_shmmni
100
224
128
project.max-msg-ids
msgsys:msginfo_msgmni
50
224
128
project.max-sem-ids
semsys:seminfo_semmni
10
224
128

* Note that the project.max-shm-memory resource control limits the total amount of shared memory of one project, whereas previously, the shmsys:shminfo_shmmax parameter limited the size of a single shared memory segment.

For more detailed descriptions of the resource controls, see Available Resource Controls in System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones.

Obsolete parameters can still be included in the /etc/system file on an Oracle Solaris system. If so, the parameters are used to initialize the default resource control values as in previous Oracle Solaris releases. For more information, see Parameters That Are Obsolete or Have Been Removed. However, using the obsolete parameters is not recommended.

The following related parameters have been removed. If these parameters are included in the /etc/system file on an Oracle Solaris system, the parameters are commented out.

semsys:seminfo_semmns
semsys:seminfo_semvmx
semsys:seminfo_semmnu
semsys:seminfo_semaem
semsys:seminfo_semume
semsys:seminfo_semusz
semsys:seminfo_semmap
shmsys:shminfo_shmseg
shmsys:shminfo_shmmin
msgsys:msginfo_msgmap
msgsys:msginfo_msgseg
msgsys:msginfo_msgssz
msgsys:msginfo_msgmax

For the current list of available resource controls, see rctladm(1M). For information about configuring resource controls, see project(4), and Chapter 6, Resource Controls (Overview), in System Administration Guide: Oracle Solaris Containers-Resource Management and Oracle Solaris Zones.

NFSv4 Parameters

The following parameters for the NFSv4 protocol are included in the Oracle Solaris 10 release:

For information about NFSv4 parameters, see NFS Module Parameters.

New and Changed TCP/IP Parameters

The following IP parameters are available in the Oracle Solaris 10 release:

The following TCP parameters are available in the Oracle Solaris 10 release:

The following TCP/IP parameters are obsolete in this Oracle Solaris release.

IP Forwarding Changes

In this Oracle Solaris release, IP forwarding is enabled or disabled by using the routeadm command or the ifconfig commands instead of setting the following tunable parameters with the ndd command:

Using the routeadm command and the ifconfig command instead of the ndd command to set IP forwarding provides the following advantages:

To enable IPv4 or IPv6 packet forwarding on all interfaces of a system, you would use the following commands:

# routeadm -e ipv4-forwarding
# routeadm -e ipv6-forwarding

To disable IPv4 or IPv6 packet forwarding on all interfaces of a system, you would use the following commands:

# routeadm -d ipv4-forwarding
# routeadm -d ipv6-forwarding

In previous Solaris releases, you would enable IPv4 or IPv6 packet forwarding on all interfaces of a system as follows:

# ndd -set /dev/ip ip_forwarding 1
# ndd -set /dev/ip ip6_forwarding 1

In previous Solaris releases, you would disable IPv4 or IPv6 packet forwarding on all interfaces of a system as follows:

# ndd -set /dev/ip ip_forwarding 0
# ndd -set /dev/ip ip6_forwarding 0

If you want to enable IP forwarding on a specific IPv4 interface or IPv6 interface, you would use syntax similar to the following for your interface. The bge0 interface is used an as example.

# ifconfig bge0 router
# ifconfig bge0 inet6 router

If you want to disable IP forwarding on a specific IPv4 interface or IPv6 interface, you would use syntax similar to the following for your interface. The bge0 interface is used an as example.

# ifconfig bge0 -router
# ifconfig bge0 inet6 -router

Previously, IP forwarding was enabled on a specific interface as follows:

# ndd -set /dev/ip bge0:ip_forwarding 1
# ndd -set /dev/ip bge0:ip_forwarding 1

Previously, IP forwarding on a specific interface was disabled as follows:

# ndd -set /dev/ip ip_forwarding 0
# ndd -set /dev/ip ip6_forwarding 0

If you want any of the preceding routeadm settings to take effect on the running system, use the following command:

# routeadm -u

For more information, see routeadm(1M) and ifconfig(1M).

SPARC: Translation Storage Buffer (TSB) Parameters

New parameters for tuning Translation Storage Buffer (TSB) are included in the Oracle Solaris 10 release. For information about TSB parameters, see SPARC System Specific Parameters.

SCTP Tunable Parameters

Stream Control Transmission Protocol (SCTP), a reliable transport protocol that provides services similar to the services provided by TCP, is provided in this Oracle Solaris release. For more information about SCTP tunable parameters, see SCTP Tunable Parameters.