Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Feb 2016 11:45:56 +1030
From:      Shane Ambler <FreeBSD@ShaneWare.Biz>
To:        Peter Jeremy <peter@rulingia.com>
Cc:        stable@FreeBSD.org
Subject:   Re: 10-STABLE hangups frequently
Message-ID:  <56B2A64C.3050107@ShaneWare.Biz>
In-Reply-To: <20160203190323.GC78969@server.rulingia.com>
References:  <ygeegcvpmv1.wl-ume@mahoroba.org> <20160202183913.GG8270@graf.pompo.net> <56B1B1E9.2090707@ShaneWare.Biz> <20160203190323.GC78969@server.rulingia.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 04/02/2016 05:33, Peter Jeremy wrote:
> On 2016-Feb-03 18:23:13 +1030, Shane Ambler <FreeBSD@ShaneWare.Biz> wrote:
>> Any chance you get high wired allocations?
>
> A high wired allocation is normal for ZFS - ARC shows up as "wired"
> memory.
>
>> Sometimes several times in a day I see the wired amount shown in top
>> rise to over 6GB (of 8GB) bringing the system to a crawl. When wired
>> gets over 7GB the system rarely recovers.
>
> The ARC limit defaults to 1GB less than physical RAM so 6GB wired on
> an 8GB system isn't unexpected (my home system currently has 30GB
> wired out of 32GB).  If this is causing problems for your workload, it
> sounds like you may need to explicitly reduce vfs.zfs.arc_max (note
> that this is a soft limit).

I have vfs.zfs.arc_max=2G - and now realise I also had set
vfs.zfs.arc_min=500M some time ago. Don't recall where I got it but I
also have vfs.zfs.dirty_data_max=200M

Going by figures shown in top, ARC is usually in the 1500M to 2000M
range but when wired gets over 6GB I often see ARC drop to 500MB which
I now realise matches arc_min.

When wired gets over 6GB apps start to stop responding, I then try to
push out some wired by running a script that allocates 4G, 9 times out
of 10 this drops wired to under 4GB and everything keeps working.

If I notice wired over 7GB there's usually no recover. I don't always
get to see the figures before it totally locks up.

On desktop1 I leave a terminal running top and another ready to run my
script to allocate some ram. When an app stops responding I go to
desktop1 and depending on what I see I manually allocate some ram to
flush things out.

Currently I have an uptime of 9 days 9 hours - I have manually allocated
4GB 30 times in that time.


-- 
FreeBSD - the place to B...Software Developing

Shane Ambler




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56B2A64C.3050107>