Re: Pgstat.tmp file activity

From: "Jim C(dot) Nasby" <jnasby(at)pervasive(dot)com>
To: Tom Arthurs <tarthurs(at)jobflash(dot)com>
Cc: Dan Austin <DAustin(at)au(dot)westfield(dot)com>, pgsql-admin(at)postgresql(dot)org
Subject: Re: Pgstat.tmp file activity
Date: 2005-12-27 21:39:37
Message-ID: 20051227213937.GR72143@pervasive.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

There's also a non-percent-based control as well. My understanding is
that segmap_percent doesn't work on some versions or architectures,
notably OpenSolaris.

On Tue, Dec 27, 2005 at 01:15:39PM -0800, Tom Arthurs wrote:
> From http://docs.sun.com/source/817-1836-10/perfplat.html
>
> High File System Page-in Rate
>
> If you are seeing high file system page-in rates on Solaris 8 or 9, you
> may benefit from increasing the value of segmap_percent. This parameter
> is set by adding the following line to the /etc/system file:
>
> set segmap_percent=25
>
> segmap_percent adjusts the percentage of memory that the kernel will map
> into its address space for the file system cache. The default value is
> 12; that is, the kernel will reserve enough space to map at most 12% of
> memory for the file system cache. On a heavily loaded machine with 4 GB
> of physical memory, improvements have been seen with values as high as
> 60. You should experiment with this value, starting with values around
> 25. On systems with large amounts of physical memory, you should raise
> this value in small increments, as it can significantly increase kernel
> memory requirements.
> ====================================
>
> I think this can also be set with the kernel debugger.
>
> I keep it at 50% on my E3500 and E4500 systems (8 and 12 GB memory).
>
> Jim C. Nasby wrote:
>
> >On Fri, Dec 23, 2005 at 04:50:32PM +1100, Dan Austin wrote:
> >
> >
> >>>[...]
> >>>Right, the file is fully written under a temp name, and then
> >>>rename()'d
> >>>
> >>>
> >>This makes sense and is almost certainly not the cause of the problem.
> >>Although there is a lot more data being written to that file than I
> >>would have thought.
> >>
> >>One of Sun's kernel engineers has come up with a solution that seems to
> >>have fixed the problem. Instead of increasing work_mem (which we still
> >>might do) we've mounted a swapfs partition over the pg temp directory:
> >>
> >> # mount | grep pgsql_tmp
> >> /export/data/pgsql/data/base/64920741/pgsql_tmp on swap [...]
> >>
> >>This has actually reduced the disk activity considerably. So far, the
> >>blocking problem seems to have gone.
> >>
> >>Now to find some Postgres DBAs in Sydney to do some review / tuning of
> >>our memory settings. :-)
> >>
> >>
> >
> >Note also that Solaris by default limits the amount of memory used for
> >disk caching, which is Not Good for PostgreSQL. IIRC this can be changed
> >with a sysctl, but I don't recall the details off-hand.
> >
> >
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
>

--
Jim C. Nasby, Sr. Engineering Consultant jnasby(at)pervasive(dot)com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Tom Lane 2005-12-27 22:44:10 Re: [GENERAL] Running with fsync=off
Previous Message Tom Arthurs 2005-12-27 21:15:39 Re: Pgstat.tmp file activity