From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754759AbcESQUI (ORCPT ); Thu, 19 May 2016 12:20:08 -0400 Received: from foss.arm.com ([217.140.101.70]:36109 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754572AbcESQUG (ORCPT ); Thu, 19 May 2016 12:20:06 -0400 Subject: Re: [PATCHv8 26/32] thp: update Documentation/vm/transhuge.txt To: "Kirill A. Shutemov" , Hugh Dickins , Andrea Arcangeli , Andrew Morton References: <1463067672-134698-1-git-send-email-kirill.shutemov@linux.intel.com> <1463067672-134698-27-git-send-email-kirill.shutemov@linux.intel.com> Cc: Dave Hansen , Vlastimil Babka , Christoph Lameter , Naoya Horiguchi , Jerome Marchand , Yang Shi , Sasha Levin , Andres Lagar-Cavilla , Ning Qu , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, Steve Capper From: Julien Grall Message-ID: <573DE7B1.4040303@arm.com> Date: Thu, 19 May 2016 17:20:01 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <1463067672-134698-27-git-send-email-kirill.shutemov@linux.intel.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Kirill, On 12/05/16 16:41, Kirill A. Shutemov wrote: > Add info about tmpfs/shmem with huge pages. > > Signed-off-by: Kirill A. Shutemov > --- > Documentation/vm/transhuge.txt | 130 +++++++++++++++++++++++++++++------------ > 1 file changed, 93 insertions(+), 37 deletions(-) > > diff --git a/Documentation/vm/transhuge.txt b/Documentation/vm/transhuge.txt > index d9cb65cf5cfd..96a49f123cac 100644 > --- a/Documentation/vm/transhuge.txt > +++ b/Documentation/vm/transhuge.txt > @@ -9,8 +9,8 @@ using huge pages for the backing of virtual memory with huge pages > that supports the automatic promotion and demotion of page sizes and > without the shortcomings of hugetlbfs. > > -Currently it only works for anonymous memory mappings but in the > -future it can expand over the pagecache layer starting with tmpfs. > +Currently it only works for anonymous memory mappings and tmpfs/shmem. > +But in the future it can expand to other filesystems. > > The reason applications are running faster is because of two > factors. The first factor is almost completely irrelevant and it's not > @@ -48,7 +48,7 @@ miss is going to run faster. > - if some task quits and more hugepages become available (either > immediately in the buddy or through the VM), guest physical memory > backed by regular pages should be relocated on hugepages > - automatically (with khugepaged) > + automatically (with khugepaged, limited to anonymous huge pages for now) Is it still relevant? I think the patch #30 at the support for tmpfs/shmem. [...] > == Need of application restart == > > -The transparent_hugepage/enabled values only affect future > -behavior. So to make them effective you need to restart any > -application that could have been using hugepages. This also applies to > -the regions registered in khugepaged. > +The transparent_hugepage/enabled values and tmpfs mount option only affect > +future behavior. So to make them effective you need to restart any > +application that could have been using hugepages. This also applies to the > +regions registered in khugepaged. > > == Monitoring usage == > > -The number of transparent huge pages currently used by the system is > -available by reading the AnonHugePages field in /proc/meminfo. To > -identify what applications are using transparent huge pages, it is > -necessary to read /proc/PID/smaps and count the AnonHugePages fields > -for each mapping. Note that reading the smaps file is expensive and > -reading it frequently will incur overhead. > +The number of anonymous transparent huge pages currently used by the > +system is available by reading the AnonHugePages field in /proc/meminfo. > +To identify what applications are using anonymous transparent huge pages, > +it is necessary to read /proc/PID/smaps and count the AnonHugePages fields > +for each mapping. > + > +The number of file transparent huge pages mapped to userspace is available > +by reading the FileHugeMapped field in /proc/meminfo. To identify what > +applications are mapping file transparent huge pages, it is necessary > +to read /proc/PID/smaps and count the FileHugeMapped fields for each > +mapping. I cannot find the field FileHugeMapped in /proc/meminfo and /proc/PID/smaps. However, there are 2 new fields ShmemHugePages and ShmemPmdMapped. Also I guess that filesystems/proc.txt has to be updated to explain the new fields. Regards, -- Julien Grall