From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from psmtp.com (na3sys010amx181.postini.com [74.125.245.181]) by kanga.kvack.org (Postfix) with SMTP id 134756B0031 for ; Thu, 25 Jul 2013 10:58:37 -0400 (EDT) From: =?iso-8859-1?q?C=E9dric_Villemain?= Reply-To: cedric@2ndquadrant.com Subject: mincore() & fincore() Date: Thu, 25 Jul 2013 16:58:33 +0200 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_Z0T8RIT50FTo0dl" Content-Transfer-Encoding: 7bit Message-Id: <201307251658.33548.cedric@2ndquadrant.com> Sender: owner-linux-mm@kvack.org List-ID: To: linux-mm@kvack.org Cc: Johannes Weiner --Boundary-01=_Z0T8RIT50FTo0dl Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello =46irst, the proposed changes in this email are to be used at least for=20 PostgreSQL extensions, maybe for core. Purpose is to offer better monitoring/tracking of the hot/cold areas (and=20 read/write paterns) in the tables and indexes, in PostgreSQL those are by d= efault=20 written in segments of 1GB. There are some possible usecase already: * planning of hardware upgrade * easier configuration setup (both PostgreSQL and linux) * provide more informations to the planner/executor of PostgreSQL My ideas so far are to=20 * improve mincore() in linux and add it information like in freeBSD (at=20 least adding 'mincore_modified' to track clean vs dirty pages). * adding fincore() to make the information easier to grab from PostgreSQL = (no=20 mmap) * maybe some access to those stats in /proc/ It makes years that libprefetch, mincore() and fincore() are discussed on l= inux=20 mailling lists. And they got a good feedback... So I hope it is ok to keep = on=20 those and provide updated patches. Johannes, I add you in CC because you're the last one who proposed somethin= g. Should I update your patch ? =2D-=20 C=E9dric Villemain +33 (0)6 20 30 22 52 http://2ndQuadrant.fr/ PostgreSQL: Support 24x7 - D=E9veloppement, Expertise et Formation --Boundary-01=_Z0T8RIT50FTo0dl Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

Hello

&nb= sp;

First, the = proposed changes in this email are to be used at least for

PostgreSQL = extensions, maybe for core.

&nb= sp;

Purpose is = to offer better monitoring/tracking of the hot/cold areas (and

read/write = paterns) in the tables and indexes, in PostgreSQL those are by default

written in = segments of 1GB.

&nb= sp;

There are s= ome possible usecase already:

&nb= sp;

* planning= of hardware upgrade

* easier c= onfiguration setup (both PostgreSQL and linux)

* provide = more informations to the planner/executor of PostgreSQL

&nb= sp;

My ideas so= far are to

&nb= sp;

* improve = mincore() in linux and add it information like in freeBSD (at

least ad= ding 'mincore_modified' to track clean vs dirty pages).

* adding f= incore() to make the information easier to grab from PostgreSQL (no

mmap)

* maybe so= me access to those stats in /proc/

&nb= sp;

It makes ye= ars that libprefetch, mincore() and fincore() are discussed on linux

mailling li= sts. And they got a good feedback... So I hope it is ok to keep on

those and p= rovide updated patches.

&nb= sp;

Johannes, I= add you in CC because you're the last one who proposed something. Should I= update your patch ?

&nb= sp;

--

C=E9dric Vi= llemain +33 (0)6 20 30 22 52

http://2ndQ= uadrant.fr/

PostgreSQL:= Support 24x7 - D=E9veloppement, Expertise et Formation

&nb= sp;

--Boundary-01=_Z0T8RIT50FTo0dl-- -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org