Mandalika's scratchpad | [ Work blog @Oracle | My Music Compositions ] |
Old Posts: 09.04 10.04 11.04 12.04 01.05 02.05 03.05 04.05 05.05 06.05 07.05 08.05 09.05 10.05 11.05 12.05 01.06 02.06 03.06 04.06 05.06 06.06 07.06 08.06 09.06 10.06 11.06 12.06 01.07 02.07 03.07 04.07 05.07 06.07 08.07 09.07 10.07 11.07 12.07 01.08 02.08 03.08 04.08 05.08 06.08 07.08 08.08 09.08 10.08 11.08 12.08 01.09 02.09 03.09 04.09 05.09 06.09 07.09 08.09 09.09 10.09 11.09 12.09 01.10 02.10 03.10 04.10 05.10 06.10 07.10 08.10 09.10 10.10 11.10 12.10 01.11 02.11 03.11 04.11 05.11 07.11 08.11 09.11 10.11 11.11 12.11 01.12 02.12 03.12 04.12 05.12 06.12 07.12 08.12 09.12 10.12 11.12 12.12 01.13 02.13 03.13 04.13 05.13 06.13 07.13 08.13 09.13 10.13 11.13 12.13 01.14 02.14 03.14 04.14 05.14 06.14 07.14 09.14 10.14 11.14 12.14 01.15 02.15 03.15 04.15 06.15 09.15 12.15 01.16 03.16 04.16 05.16 06.16 07.16 08.16 09.16 12.16 01.17 02.17 03.17 04.17 06.17 07.17 08.17 09.17 10.17 12.17 01.18 02.18 03.18 04.18 05.18 06.18 07.18 08.18 09.18 11.18 12.18 01.19 02.19 05.19 06.19 08.19 10.19 11.19 05.20 10.20 11.20 12.20 09.21 11.21 12.22
If you notice slight performance degradation of the application(s) on Solaris 10 8/07 compared to Solaris 10 1/06 & Solaris 10 11/06, it could be due to the conservative large page selection by the operating system. In S10 8/07, the maximum page size for heap/stack/mmap has been reduced to 64K (default is up to 256M depending on the underlying hardware -- eg., 256M on Niagara (US-T1)/US-IV+/SPARC64-VI systems, 32M on US-IV systems and 4M on US-III+ systems) on all systems lacking page coloring. 4M is the default maximum page size on US-T2 (Niagara2) systems. You can check this with the help of pmap -sx <pid>
. I do not know exactly the motivation for this change, but I'm suspecting that bugs like default_physio/as_pagelock scales poorely with threads doing IO have something to do with this change.
max_uheap_lpsize
and mmu_ism_pagesize
for the system wide large page usage.MPSSHEAP
and MPSSSTACK
environment variablesMPSSHEAP=32M
MPSSSTACK=64K
LD_PRELOAD=$LD_PRELOAD:mpss.so.1
<application> <arg1> <arg2> .. <argn>
MPSSCFGFILE
to set the preferred page sizes for the heap and the stack. See Solaris 9 or later: More performance with Large Pages (MPSS) for an example.max_uheap_lpsize
to the desired maximum page size. Find the supported page sizes by running pagesize -a
. Solaris tries to use the supported page sizes {wherever it can} until the maximum page size set. For example, if /etc/system has set max_uheap_lpsize = 0x2000000
, Solaris tries to use a maximum page size of 32M although the system could use 256M pages.mmu_ism_pagesize
to the desired maximum page size. For example, if /etc/system has set mmu_ism_pagesize=0x200000
, Solaris tries to use a maximum page size of 4M although the system could use 32M and 256M pages.max_uheap_lpsize
need not be set, if mmu_ism_pagesize
has been set in /etc/system. Solaris kernel will change max_uheap_lpsize
and others to the value set in /etc/system for mmu_ism_pagesize
parameter, to be in sync with ism pagesize.set exec_lpg_disable=1
set use_brk_lpg=0
set use_stk_lpg=0
set use_zmap_lpg=0
set max_uheap_lpsize=0x2000
set max_ustack_lpsize=0x2000
set max_privmap_lpsize=0x2000
set size_t max_shm_lpsize=0x2000
set use_brk_lpg=0
set use_stk_lpg=0
2004-2019 |