pcp
[Top] [All Lists]

pcp updates: mem.util.available for kernels that don't export MemAvailab

To: pcp@xxxxxxxxxxx
Subject: pcp updates: mem.util.available for kernels that don't export MemAvailable
From: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date: Sun, 06 Jul 2014 18:08:01 +1000
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

As was suggested by Frank, downrev kernels don't export MemAvailable
but we can calculate it from other fields. A new QA test is brewing
to check this and a new pmie rule with syslog alerts for production
environments might be warranted too.


Changes committed to git://git.performancecopilot.org/markgw/pcp/pcp.git dev

commit 5b23cbf06d8d6e58efd50df82b25a13391520c1f
Author: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date:   Fri Jul 4 17:28:11 2014 +1000

    Add new view for mem.util.available, capped by mem.physmem.

    This shows the amount of memory available for new work without
    swapping. See the help text for mem.util.available for more
    details.

        modified:   src/pmchart/views/GNUmakefile
        new file:   src/pmchart/views/MemAvailable

commit 191828a938cde0880c57cf648d49d0f79bae9d8d
Author: Mark Goodwin <mgoodwin@xxxxxxxxxx>
Date:   Fri Jul 4 16:50:45 2014 +1000

    Calculate mem.util.available for kernels without MemAvailable in 
/proc/meminfo.

    Downrev Linux kernels (prior to 3.x) have no support for "MemAvailable"
    in /proc/meminfo so calculate this from other fields, similar to upstream
    kernel commit 34e431b0ae.  Also, if $PCP_QA_ESTIMATE_MEMAVAILABLE is
    set in the environment, then force this calculation for QA purposes
    (so we can check the calculation matches the kernel exported value).

        modified:   src/pmdas/linux/pmda.c
        modified:   src/pmdas/linux/proc_meminfo.c
        modified:   src/pmdas/linux/proc_meminfo.h

<Prev in Thread] Current Thread [Next in Thread>