Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp1129855pxk; Fri, 2 Oct 2020 01:34:15 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyDl0QADrcOiFMQKU7T1Kjg8aKspxoyvJPUS7cgSL8LvpF+2OluEBIkl3B4jYNsCJUYyMkw X-Received: by 2002:a17:906:7f06:: with SMTP id d6mr1093321ejr.553.1601627655551; Fri, 02 Oct 2020 01:34:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601627655; cv=none; d=google.com; s=arc-20160816; b=Pkmu/HipDlL5XSGZ5hQsZOgq8sk4wAnOzeDJOSArc1hHPhDlUlEYAhnrLD6Z8hdJZO 8ocEDn/p6fyxYZgxLnbiJ+oImDnuK/dPr2O/dQKVKZjQTSRoZixFpD5B11mWXmZhRY9p iQy+3d41WenxdLD+uUA747Sg4uNiuv25JJ1bpepGsiM6lU3Qb2MezfYcUBu2BpL3ViTl OB93i8N37+SnhZ55JuGH9LeXGsgfu9pDcZhCqqO65wqoXebfbf5zh+sTYsH9jcfBbUoR fgojPFfzQOdrVXRoBDPLrsuhiLbrvZiOPtXBynjTBu1Voc0PUXJWjmIYK8CNao2s1pVL VMwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:organization :autocrypt:from:references:cc:to:subject:dkim-signature; bh=yBvGDW4WzxyaP7FkNKanll+tKwcrmW9Z8CoQjlahv7Y=; b=qtn2eZhaqrWZN4BmZHFPkB/7GzMSGU1gYmXDevrOWQeb3MFDwmz4686SMjVOGOQ3Kc Tm0wPqgOWBj0VKI+s/VldRijHONvMWEs0ky6nUC3Y4cmSdB+d9UO95zE59h/ssc/RMO4 YOxuNDBu5dZaL+KA8Poa+mVPwfFcbztDtTCdDJQ3ts0KrNpnaYeGWqvQXeG4D1qHa8tg icrfCd/EH4aaN72kdMj6CshN+OWHEdXJfYtsKuSmnauEmRoqt2kkVtL8qs1EgR6WkeWD Cobp0RZ0ByQvqAITnqBJ9ugLMIbtVabmDlSGs8CBJwAhXfUASYMHmseTB6PVdRyHmeId ZCiA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=HMyYYBgp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cw7si539502ejb.711.2020.10.02.01.33.52; Fri, 02 Oct 2020 01:34:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=HMyYYBgp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387669AbgJBIa4 (ORCPT + 99 others); Fri, 2 Oct 2020 04:30:56 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:59853 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387654AbgJBIaz (ORCPT ); Fri, 2 Oct 2020 04:30:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1601627453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=yBvGDW4WzxyaP7FkNKanll+tKwcrmW9Z8CoQjlahv7Y=; b=HMyYYBgp39m29HBCiF3sqphquAjc7zTmU3/oOe7tMg0FWBK4M1KEa4rwR5Yad475LDwhkQ BmQ7PM+NlvQDtlZO0/Wv6YamkZEqXtHTD2yyMpePkjjvXL8DllF6daA8ap4DCvWKaAL44a EM/7ssbLGXrPuilqW3f5uvD8l+HyRRQ= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-353-B9urMUf0MxCwTxOrTZ8c5w-1; Fri, 02 Oct 2020 04:30:49 -0400 X-MC-Unique: B9urMUf0MxCwTxOrTZ8c5w-1 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 51591803F48; Fri, 2 Oct 2020 08:30:47 +0000 (UTC) Received: from [10.36.113.228] (ovpn-113-228.ams2.redhat.com [10.36.113.228]) by smtp.corp.redhat.com (Postfix) with ESMTP id D92EC2C31E; Fri, 2 Oct 2020 08:30:43 +0000 (UTC) Subject: Re: [RFC PATCH v2 00/30] 1GB PUD THP support on x86_64 To: Michal Hocko Cc: Zi Yan , linux-mm@kvack.org, "Kirill A . Shutemov" , Roman Gushchin , Rik van Riel , Matthew Wilcox , Shakeel Butt , Yang Shi , Jason Gunthorpe , Mike Kravetz , William Kucharski , Andrea Arcangeli , John Hubbard , David Nellans , linux-kernel@vger.kernel.org References: <20200928175428.4110504-1-zi.yan@sent.com> <20200930115505.GT2277@dhcp22.suse.cz> <73394A41-16D8-431C-9E48-B14D44F045F8@nvidia.com> <20201002073205.GC20872@dhcp22.suse.cz> <9a7600e2-044a-50ca-acde-bf647932c751@redhat.com> <20201002081023.GA4555@dhcp22.suse.cz> From: David Hildenbrand Autocrypt: addr=david@redhat.com; prefer-encrypt=mutual; keydata= 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 WNyWQQ== Organization: Red Hat GmbH Message-ID: <645b35a5-970d-dcfe-2b4a-04ebd4444756@redhat.com> Date: Fri, 2 Oct 2020 10:30:43 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <20201002081023.GA4555@dhcp22.suse.cz> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02.10.20 10:10, Michal Hocko wrote: > On Fri 02-10-20 09:50:02, David Hildenbrand wrote: >>>>> - huge page sizes controllable by the userspace? >>>> >>>> It might be good to allow advanced users to choose the page sizes, so they >>>> have better control of their applications. >>> >>> Could you elaborate more? Those advanced users can use hugetlb, right? >>> They get a very good control over page size and pool preallocation etc. >>> So they can get what they need - assuming there is enough memory. >>> >> >> I am still not convinced that 1G THP (TGP :) ) are really what we want >> to support. I can understand that there are some use cases that might >> benefit from it, especially: > > Well, I would say that internal support for larger huge pages (e.g. 1GB) > that can transparently split under memory pressure is a useful > funtionality. I cannot really judge how complex that would be Right, but that's then something different than serving (scarce, unmovable) gigantic pages from CMA / reserved hugetlbfs pool. Nothing wrong about *real* THP support, meaning, e.g., grouping consecutive pages and converting them back and forth on demand. (E.g., 1GB -> multiple 2MB -> multiple single pages), for example, when having to migrate such a gigantic page. But that's very different from our existing gigantic page code as far as I can tell. > consideting that 2MB THP have turned out to be quite a pain but > situation has settled over time. Maybe our current code base is prepared > for that much better. > > Exposing that interface to the userspace is a different story of course. > I do agree that we likely do not want to be very explicit about that. > E.g. an interface for address space defragmentation without any more > specifics sounds like a useful feature to me. It will be up to the > kernel to decide which huge pages to use. Yes, I think one important feature would be that we don't end up placing a gigantic page where only a handful of pages are actually populated without green light from the application - because that's what some user space applications care about (not consuming more memory than intended. IIUC, this is also what this patch set does). I'm fine with placing gigantic pages if it really just "defragments" the address space layout, without filling unpopulated holes. Then, this would be mostly invisible to user space, and we really wouldn't have to care about any configuration. -- Thanks, David / dhildenb