mpss.so.1 man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

MPSS.SO.1(1)							  MPSS.SO.1(1)

NAME
       mpss.so.1 - shared object for setting preferred page size

SYNOPSIS
       mpss.so.1

DESCRIPTION
       The  mpss.so.1  shared  object  provides a means by which the preferred
       stack and/or heap page size can be selectively configured for  launched
       processes  and  their  descendants.  To enable mpss.so.1, the following
       string needs to be present in the environment  (see  ld.so.1(1))	 along
       with  one  or  more MPSS (Multiple Page Size Support) environment vari‐
       ables:

	 LD_PRELOAD=$LD_PRELOAD:mpss.so.1

ENVIRONMENT VARIABLES
       Once preloaded, the mpss.so.1 shared object reads the  following	 envi‐
       ronment variables to determine any preferred page size requirements and
       any processes these may be specific to.

       MPSSHEAP=size
       MPSSSTACK=size
				  MPSSHEAP and MPSSSTACK specify the preferred
				  page	sizes  for the heap and stack, respec‐
				  tively.  The	specified  page	 size(s)   are
				  applied to all created processes.

				  size	must  be  a  supported	page size (see
				  pagesize(1)) or 0, in which case the	system
				  will	select	an  appropriate page size (see
				  memcntl(2)).

				  size can be qualified with K, M, G, or T  to
				  specify  Kilobytes, Megabytes, Gigabytes, or
				  Terabytes respectively.

       MPSSCFGFILE=config-file
				  config-file is a text	 file  which  contains
				  one  or  more	 mpss configuration entries of
				  the form:

				    exec-name exec-args:heap-size:stack-size

				  exec-name specifies the name of an  applica‐
				  tion	or  executable. The corresponding pre‐
				  ferred page size(s) are set for  newly  cre‐
				  ated	processes  (see	 getexecname(3C)) that
				  match the first exec-name found in the file.

				  exec-name can be a  full  pathname,  a  base
				  name or a pattern string. See File Name Gen‐
				  eration in sh(1) for a discussion of pattern
				  matching.

				  exec-args is an optionally specified pattern
				  string to match against arguments. Preferred
				  page	size(s)	 are  set only if exec-args is
				  not specified or occurs within the arguments
				  to exec-name.

				  If heap-size and/or stack-size are not spec‐
				  ified,  the  corresponding  preferred	  page
				  size(s) will not be set.

				  MPSSCFGFILE  takes  precedence over MPSSHEAP
				  and MPSSSTACK.  When MPSSCFGFILE is not set,
				  preferred  page size settings are taken from
				  file /etc/mpss.conf if it exists.

       MPSSERRFILE=pathname
				  By default, error messages  are  logged  via
				  syslog(3C)  using level LOG_ERR and facility
				  LOG_USER. If MPSSERRFILE  contains  a	 valid
				  pathname  (such  as /dev/stderr), error mes‐
				  sages will be logged there instead.

EXAMPLES
       Example 1 Configuring preferred page sizes using MPSSCFGFILE

       The following Bourne shell commands (see sh(1)) configure the preferred
       page  sizes  to a select set of applications with exec names that begin
       with foo, using the MPSSCFGFILE environment variable. The MPSS configu‐
       ration  file, mpsscfg, is assumed to have been previously created via a
       text editor like vi(1). The cat(1) command is only dumping out the con‐
       tents.

	 example$ LD_PRELOAD=$LD_PRELOAD:mpss.so.1
	 example$ MPSSCFGFILE=mpsscfg
	 example$ export LD_PRELOAD MPSSCFGFILE
	 example$ cat $MPSSCFGFILE
	 foo*:512K:64K

       Once  the  application has been started, pmap (see proc(1)) can be used
       to view the actual page sizes configured:

	 example$ foobar &
	 example$ pmap -s `pgrep foobar`

       If the desired page size is not configured (shown in the pmap  output),
       it  may	be due to errors in the MPSS configuration file or environment
       variables. Check the error  log	(by  default:  /var/adm/messages)  for
       errors.

       If  no  errors  can  be found, resource or alignment constraints may be
       responsible. See the NOTES section.

       Example 2 Configuring preferred page sizes using MPSSHEAP and MPSSSTACK

       The following Bourne shell commands configure 512K heap and  64K	 stack
       preferred  page	sizes  for  all	 applications  using  the MPSSHEAP and
       MPSSSTACK environment variables.

	 example$ LD_PRELOAD=$LD_PRELOAD:mpss.so.1
	 example$ MPSSHEAP=512K
	 example$ MPSSSTACK=64K
	 example$ export LD_PRELOAD MPSSHEAP MPSSSTACK

       Example 3 Precedence rules (continuation from Example 2)

       The preferred page size configuration in MPSSCFGFILE overrides MPSSHEAP
       and  MPSSTACK.  Appending  the following commands to those in Example 2
       would mean that all applications will be configured with 512K heap  and
       64K  stack  preferred  page  sizes with the exception of those applica‐
       tions, the ls command, and all applications  beginning  with  ora  that
       have ora1 as an argument, in the configuration file.

	 example$ MPSSCFGFILE=mpsscfg2
	 example$ export MPSSCFGFILE
	 example$ cat $MPSSCFGFILE
	 ls::
	 ora* ora1:4m:4m

FILES
       /usr/lib/ld/map.bssalign
				    A  template link-editor mapfile for align‐
				    ing bss (see NOTES).

       /etc/mpss.conf
				    Configuration file

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌────────────────────┬─────────────────┐
       │  ATTRIBUTE TYPE    │ ATTRIBUTE VALUE │
       ├────────────────────┼─────────────────┤
       │Interface Stability │ Evolving	      │
       └────────────────────┴─────────────────┘

SEE ALSO
       cat(1),	ld(1),	ld.so.1(1),  pagesize(1),  ppgsz(1),  proc(1),	sh(1),
       vi(1),  exec(2), fork(2), memcntl(2), getexecname(3C), getpagesize(3C),
       syslog(3C), proc(4), attributes(5)

NOTES
       The heap and stack preferred page sizes are inherited. A child  process
       has  the	 same preferred page sizes as its parent. On exec(2), the pre‐
       ferred page sizes are set back to the default system page size unless a
       preferred page size has been configured via the mpss shared object.

       ppgsz(1),  a  proc  tool,  can  also be used to set the preferred stack
       and/or heap page sizes. It cannot selectively configure the  page  size
       for descendents based on name matches.

       See also NOTES under ppgsz(1).

				 Feb 20, 2002			  MPSS.SO.1(1)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net