[Openstack] [OpenStack] Can Mitaka RamFilter support free hugepages?

Jay Pipes jaypipes at gmail.com
Thu Sep 7 03:57:25 UTC 2017


Sahid, Stephen, what are your thoughts on this?

On 09/06/2017 10:17 PM, Yaguang Tang wrote:
> I think the fact that RamFilter can't deal with huge pages is a bug , 
> duo to this limit, we have to set a balance  between normal memory and 
> huge pages to use RamFilter and NUMATopologyFilter. what do you think Jay?
> 
> 
> On Wed, Sep 6, 2017 at 9:22 PM, Jay Pipes <jaypipes at gmail.com 
> <mailto:jaypipes at gmail.com>> wrote:
> 
>     On 09/06/2017 01:21 AM, Weichih Lu wrote:
> 
>         Thanks for your response.
> 
>         Is this mean if I want to create an instance with flavor: 16G
>         memory (hw:mem_page_size=large), I need to preserve memory more
>         than 16GB ?
>         This instance consume hugepages resource.
> 
> 
>     You need to reserve fewer 1GB huge pages than 50 if you want to
>     launch a 16GB instance on a host with 64GB of RAM. Try reserving 32
>     1GB huge pages.
> 
>     Best,
>     -jay
> 
>         2017-09-06 1:47 GMT+08:00 Jay Pipes <jaypipes at gmail.com
>         <mailto:jaypipes at gmail.com> <mailto:jaypipes at gmail.com
>         <mailto:jaypipes at gmail.com>>>:
> 
> 
>              Please remember to add a topic [nova] marker to your
>         subject line.
>              Answer below.
> 
>              On 09/05/2017 04:45 AM, Weichih Lu wrote:
> 
>                  Dear all,
> 
>                  I have a compute node with 64GB ram. And I set 50
>         hugepages wiht
>                  1GB hugepage size. I used command "free", it shows free
>         memory
>                  is about 12GB. And free hugepages is 50.
> 
> 
>              Correct. By assigning hugepages, you use the memory
>         allocated to the
>              hugepages.
> 
>                  Then I launch an instance with 16GB memory, set flavor
>         tag :
>                  hw:mem_page_size=large. It show Error: No valid host
>         was found.
>                  There are not enough hosts available.
> 
> 
>              Right, because you have only 12G of RAM available after
>              creating/allocating 50G out of your 64G.
> 
>              Huge pages are entirely separate from the normal memory that a
>              flavor consumes. The 16GB memory in your flavor is RAM
>         consumed on
>              the host. The huge pages are individual things that are
>         consumed by
>              the NUMA topology that your instance will take. RAM != huge
>         pages.
>              Totally different things.
> 
>                And I check nova-scheduler log. My
> 
>                  compute is removed by RamFilter. I can launch an
>         instance with
>                  8GB memory successfully, or I can launch an instance
>         with 16GB
>                  memory sucessfully by remove RamFilter.
> 
> 
>              That's because RamFilter doesn't deal with huge pages.
>         Because huge
>              pages are a different resource than memory. The page itself
>         is the
>              resource.
> 
>              The NUMATopologyFilter is the scheduler filter that
>         evaluates the
>              huge page resources on a compute host and determines if the
>         there
>              are enough *pages* available for the instance. Note that I say
>              *pages* because the unit of resource consumption for huge
>         pages is
>              not MB of RAM. It's a single memory page.
> 
>              Please read this excellent article by Steve Gordon for
>         information
>              on what NUMA and huge pages are and how to use them in Nova:
> 
>         http://redhatstackblog.redhat.com/2015/09/15/driving-in-the-fast-lane-huge-page-support-in-openstack-compute/
>         <http://redhatstackblog.redhat.com/2015/09/15/driving-in-the-fast-lane-huge-page-support-in-openstack-compute/>
>             
>         <http://redhatstackblog.redhat.com/2015/09/15/driving-in-the-fast-lane-huge-page-support-in-openstack-compute/
>         <http://redhatstackblog.redhat.com/2015/09/15/driving-in-the-fast-lane-huge-page-support-in-openstack-compute/>>
> 
>              Best,
>              -jay
> 
>                  Does RamFilter only check free memory but not free
>         hugepages?
>                  How can I solve this problem?
> 
>                  I use openstack mitaka version.
> 
>                  thanks
> 
>                  WeiChih, Lu.
> 
>                  Best Regards.
> 
> 
>                  _______________________________________________
>                  Mailing list:
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>                 
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>>
>                  Post to     : openstack at lists.openstack.org
>         <mailto:openstack at lists.openstack.org>
>                  <mailto:openstack at lists.openstack.org
>         <mailto:openstack at lists.openstack.org>>
>                  Unsubscribe :
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>                 
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>>
> 
> 
>              _______________________________________________
>              Mailing list:
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>             
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>>
>              Post to     : openstack at lists.openstack.org
>         <mailto:openstack at lists.openstack.org>
>              <mailto:openstack at lists.openstack.org
>         <mailto:openstack at lists.openstack.org>>
>              Unsubscribe :
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>             
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>>
> 
> 
> 
> 
>         _______________________________________________
>         Mailing list:
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>         Post to     : openstack at lists.openstack.org
>         <mailto:openstack at lists.openstack.org>
>         Unsubscribe :
>         http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>         <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
> 
> 
>     _______________________________________________
>     Mailing list:
>     http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>     <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
>     Post to     : openstack at lists.openstack.org
>     <mailto:openstack at lists.openstack.org>
>     Unsubscribe :
>     http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
>     <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>
> 
> 
> 
> 
> -- 
> Tang Yaguang
> 
> 



More information about the Openstack mailing list