From: Thomas Monjalon <thomas@monjalon.net>
To: Hemant Agrawal <hemant.agrawal@nxp.com>
Cc: Jerin Jacob <jerin.jacob@caviumnetworks.com>,
Ilya Maximets <i.maximets@samsung.com>,
Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>,
dev@dpdk.org, Bruce Richardson <bruce.richardson@intel.com>,
David Marchand <david.marchand@6wind.com>,
Heetae Ahn <heetae82.ahn@samsung.com>,
Yuanhan Liu <yliu@fridaylinux.org>,
Jianfeng Tan <jianfeng.tan@intel.com>,
Neil Horman <nhorman@tuxdriver.com>,
Yulong Pei <yulong.pei@intel.com>
Subject: Re: [PATCH v5 0/2] Balanced allocation of hugepages
Date: Tue, 27 Jun 2017 11:26:28 +0200 [thread overview]
Message-ID: <1754978.DhjFZ6qBWF@xps> (raw)
In-Reply-To: <7586fff1-32c7-7468-2cd1-f1406b27974d@nxp.com>
27/06/2017 11:13, Hemant Agrawal:
> On 6/21/2017 4:52 PM, Jerin Jacob wrote:
> > From: Ilya Maximets <i.maximets@samsung.com>
> >>> From: Thomas Monjalon <thomas@monjalon.net>
> >>>>>> 21/06/2017 10:41, Jerin Jacob:
> >>>>>>>>> 1. There are many machines (arm/ppc), which do not support NUMA.
> >>>>>>>>>
> >>>>>>>>> https://wiki.linaro.org/LEG/Engineering/Kernel/NUMA
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> I did find that link too, last modified 4 years ago.
> >>>>>>>> Despite that, I could not find any ARM references in libnuma sources, but
> >>>>>>>> Jerin proved that there is support for it.
> >>>>>>>>
> >>>>>>>> http://oss.sgi.com/projects/libnuma/
> >>>>>>>> https://github.com/numactl/numactl
> >>>>>>>
> >>>>>>> Those Linaro links are very old. ARM64 NUMA supported has been added in 4.7 kernel.
> >>>>>>> I guess we are talking about build time time dependency with libnuma here.
> >>>>>>> Correct? I think, Even with old arm64 kernel(< 4.6), You can build against
> >>>>>>> libnuma if it is present in rootfs. Just that at runtime, it will return
> >>>>>>> NUMA support not available. Correct?
> >>>>>>>
> >>>>>>> How hard is detect the presence of "numaif.h" if existing build system does not
> >>>>>>> support it? If it trivial, we can enable RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES
> >>>>>>> if build environment has "numaif.h".
> >>>>>>>
> >>>>>>> Some example in linux kernel build system:
> >>>>>>> http://lxr.linux.no/linux+v4.10.1/scripts/gcc-goto.sh
> >>>>>>
> >>>>>> I think we should not try to detect numaif.h, because it should be
> >>>>>> an error on platform supporting NUMA.
> >>>>>
> >>>>> I have installed libnuma on a NUMA and non NUMA machine.
> >>>>> Compiled and ran following code on those machine and it could detect
> >>>>> the numa availability. Could you add more details on the "error on
> >>>>> platform supporting NUMA".
> >>>>
> >>>> I was saying that we do not need to detect NUMA.
> >>>> If we are building DPDK for a NUMA architecture and libnuma is not
> >>>> available, then it will be a problem that the user must catch.
> >>>> The easiest way to catch it, is to fail on the include of numaif.h.
> >>>
> >>> libnuma is not really _architecture_ depended.
> >>>
> >>> Ilya Maximets patch disables NUMA support in common arm64 config.I
> >>> think, It is not correct, We should not disable on any archs generic config.
> >>>
> >>> IMO, It should be enabled by default in common config and then we can
> >>> detect the presence of numaif.h, if not available OR a target does not need it
> >>> explicitly, proceed with disabling
> >>> RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES. I think, That is more portable.
> >>
> >> Detecting of headers is impossible until dpdk doesn't have dynamic build
> >> configuration system like autotools, CMake or meson.
> >> Right now we just can't do that.
> >
> > I agree. Unless if we do something like linux kernel does it below
> > http://elixir.free-electrons.com/linux/latest/source/scripts/kconfig/lxdialog/check-lxdialog.sh
> >
> > Either way, I think, you can enable RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES in
> > generic arm64 config and disable on defconfig_arm64-dpaa2-linuxapp-gcc(as Hemant requested) or
> > any sub arch target that does not need in RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES.
>
> No, this is not acceptable. it should not be enabled in generic arm64.
> It can be enabled in specific ARM platforms, which support NUMA
> architecture.
> We also use generic ARM code on various of our platform when running
> with non-dpaa and/or virtio-net. So enabling it will break all those
> platforms.
Which platforms?
It is your non-upstreamed code. You have to deal with it.
You should disable NUMA in the config of these platforms.
next prev parent reply other threads:[~2017-06-27 9:26 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20170216130139eucas1p2512567d6f5db9eaac5ee840b56bf920a@eucas1p2.samsung.com>
2017-02-16 13:01 ` [PATCH] mem: balanced allocation of hugepages Ilya Maximets
2017-02-16 13:26 ` Tan, Jianfeng
2017-02-16 13:55 ` Ilya Maximets
2017-02-16 13:57 ` Ilya Maximets
2017-02-16 13:31 ` Bruce Richardson
2017-03-06 9:34 ` Ilya Maximets
2017-03-08 13:46 ` Sergio Gonzalez Monroy
2017-03-09 12:57 ` Ilya Maximets
2017-03-27 13:01 ` Sergio Gonzalez Monroy
2017-03-27 14:43 ` Ilya Maximets
2017-04-07 15:14 ` Ilya Maximets
2017-04-07 15:44 ` Thomas Monjalon
2017-04-10 7:11 ` Ilya Maximets
2017-04-10 7:51 ` Sergio Gonzalez Monroy
2017-04-10 8:05 ` Ilya Maximets
2017-04-10 8:04 ` [PATCH v2] " Ilya Maximets
2017-04-10 10:03 ` Thomas Monjalon
2017-06-06 6:22 ` [PATCH v3 0/2] Balanced " Ilya Maximets
2017-06-06 6:22 ` [PATCH v3 1/2] mem: balanced " Ilya Maximets
2017-06-06 6:22 ` [PATCH v3 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-06 8:13 ` [PATCH v4 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-06 8:13 ` [PATCH v4 1/2] mem: balanced " Ilya Maximets
2017-06-06 8:13 ` [PATCH v4 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-06 13:33 ` [PATCH v5 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-06 13:33 ` [PATCH v5 1/2] mem: balanced " Ilya Maximets
2017-06-06 13:33 ` [PATCH v5 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-08 11:21 ` [PATCH v5 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-08 12:14 ` Bruce Richardson
2017-06-08 15:44 ` Sergio Gonzalez Monroy
2017-06-14 6:11 ` Ilya Maximets
2017-06-19 11:10 ` Hemant Agrawal
2017-06-20 13:07 ` Thomas Monjalon
2017-06-20 13:58 ` Ilya Maximets
2017-06-20 14:35 ` Thomas Monjalon
2017-06-20 14:58 ` Sergio Gonzalez Monroy
2017-06-20 15:41 ` Jerin Jacob
2017-06-20 15:51 ` Sergio Gonzalez Monroy
2017-06-21 8:14 ` Hemant Agrawal
2017-06-21 8:25 ` Sergio Gonzalez Monroy
2017-06-21 8:36 ` Ilya Maximets
2017-06-21 8:41 ` Jerin Jacob
2017-06-21 8:49 ` Thomas Monjalon
2017-06-21 9:27 ` Jerin Jacob
2017-06-21 9:58 ` Thomas Monjalon
2017-06-21 10:29 ` Jerin Jacob
2017-06-21 10:36 ` Ilya Maximets
2017-06-21 11:22 ` Jerin Jacob
2017-06-21 11:29 ` Thomas Monjalon
2017-06-27 9:13 ` Hemant Agrawal
2017-06-27 9:26 ` Thomas Monjalon [this message]
2017-06-27 9:48 ` Hemant Agrawal
2017-06-21 8:04 ` [PATCH v6 " Ilya Maximets
2017-06-21 8:04 ` [PATCH v6 1/2] mem: balanced " Ilya Maximets
2017-06-21 8:51 ` Thomas Monjalon
2017-06-21 8:58 ` Bruce Richardson
2017-06-21 9:25 ` Ilya Maximets
2017-06-21 9:34 ` Bruce Richardson
2017-06-21 9:28 ` Thomas Monjalon
2017-06-21 8:04 ` [PATCH v6 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-21 10:08 ` [PATCH v7 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-21 10:08 ` [PATCH v7 1/2] mem: balanced " Ilya Maximets
2017-06-21 10:08 ` [PATCH v7 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-27 9:20 ` Hemant Agrawal
2017-06-26 10:44 ` [PATCH v7 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-26 14:07 ` Jerin Jacob
2017-06-26 15:33 ` Sergio Gonzalez Monroy
2017-06-27 8:42 ` Ilya Maximets
2017-06-27 8:46 ` [PATCH v8 " Ilya Maximets
2017-06-27 8:46 ` [PATCH v8 1/2] mem: balanced " Ilya Maximets
2017-06-27 8:46 ` [PATCH v8 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-27 9:18 ` Hemant Agrawal
2017-06-27 9:21 ` Thomas Monjalon
2017-06-27 9:41 ` Hemant Agrawal
2017-06-27 9:59 ` Thomas Monjalon
2017-06-27 9:59 ` Jerin Jacob
2017-06-27 12:17 ` Hemant Agrawal
2017-06-27 12:45 ` Jerin Jacob
2017-06-27 13:00 ` Hemant Agrawal
2017-06-27 9:19 ` Thomas Monjalon
2017-06-27 10:26 ` Ilya Maximets
2017-06-27 10:24 ` [PATCH v9 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-27 10:24 ` [PATCH v9 1/2] mem: balanced " Ilya Maximets
2017-06-28 10:30 ` Sergio Gonzalez Monroy
2017-06-29 5:32 ` Hemant Agrawal
2017-06-29 5:48 ` Ilya Maximets
2017-06-29 6:08 ` Ilya Maximets
2017-06-27 10:24 ` [PATCH v9 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-29 5:31 ` Hemant Agrawal
2017-06-29 5:59 ` [PATCH v10 0/2] Balanced allocation of hugepages Ilya Maximets
2017-06-29 5:59 ` [PATCH v10 1/2] mem: balanced " Ilya Maximets
2017-06-29 7:03 ` Hemant Agrawal
2017-06-29 5:59 ` [PATCH v10 2/2] config: enable vhost numa awareness by default Ilya Maximets
2017-06-30 15:50 ` Thomas Monjalon
2017-06-29 6:29 ` [PATCH v10 0/2] Balanced allocation of hugepages Jerin Jacob
2017-06-30 8:36 ` Ilya Maximets
2017-06-30 16:12 ` [PATCH v11 " Thomas Monjalon
2017-06-30 16:12 ` [PATCH v11 1/2] mem: balanced " Thomas Monjalon
2017-06-30 16:12 ` [PATCH v11 2/2] config: enable vhost NUMA awareness by default Thomas Monjalon
2017-07-01 10:59 ` [PATCH v11 0/2] Balanced allocation of hugepages Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1754978.DhjFZ6qBWF@xps \
--to=thomas@monjalon.net \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@6wind.com \
--cc=dev@dpdk.org \
--cc=heetae82.ahn@samsung.com \
--cc=hemant.agrawal@nxp.com \
--cc=i.maximets@samsung.com \
--cc=jerin.jacob@caviumnetworks.com \
--cc=jianfeng.tan@intel.com \
--cc=nhorman@tuxdriver.com \
--cc=sergio.gonzalez.monroy@intel.com \
--cc=yliu@fridaylinux.org \
--cc=yulong.pei@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox