[dpdk-dev] [PATCH v7 0/2] Balanced allocation of hugepages
Ilya Maximets
i.maximets at samsung.com
Tue Jun 27 10:42:36 CEST 2017
On 26.06.2017 18:33, Sergio Gonzalez Monroy wrote:
> On 26/06/2017 11:44, Ilya Maximets wrote:
>> So, what do you think about this version?
>> Is it ready for merge or some additional changes needed?
>
> I was just having another look at it and was wondering if we should re-set the old policy instead of DEFAULT?
Yes. I tried to do that previously, but it requires some manipulations
get maximum nodemask size supported by kernel. So, I've implemented
this behaviour with help of libnuma which makes a lot of checks while
library initialisation (constructor). I'll send v8 with that soon.
> Also noticed that we probably should increase essential_memory by hugepage_sz in
> case of SIGBUS? I think there is an issue if we have more than one size.
Good catch. Also fixed in v8. Additionally I found that we need to restore
old mempolicy in case of any error. So I replaced all the 'return i' to
the out to proper termination point.
>
> Thanks,
> Sergio
>
>> Best regards, Ilya Maximets.
>>
>> On 21.06.2017 13:08, Ilya Maximets wrote:
>>> Version 7:
>>> * RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES --> RTE_EAL_NUMA_AWARE_HUGEPAGES
>>>
>>> Version 6:
>>> * Configuration option RTE_LIBRTE_EAL_NUMA_AWARE_HUGEPAGES
>>> returned. Enabled by default for x86, ppc and thunderx.
>>>
>>> Version 5:
>>> * Fixed shared build. (Automated build test will fail
>>> anyway because libnuma-devel not installed on build servers)
>>>
>>> Version 4:
>>> * Fixed work on systems without NUMA by adding check for NUMA
>>> support in kernel.
>>>
>>> Version 3:
>>> * Implemented hybrid schema for allocation.
>>> * Fixed not needed mempolicy change while remapping. (orig = 0)
>>> * Added patch to enable VHOST_NUMA by default.
>>>
>>> Version 2:
>>> * rebased (fuzz in Makefile)
>>>
>>> Ilya Maximets (2):
>>> mem: balanced allocation of hugepages
>>> config: enable vhost numa awareness by default
>>>
>>> config/common_base | 1 +
>>> config/common_linuxapp | 3 +
>>> config/defconfig_arm-armv7a-linuxapp-gcc | 4 +
>>> config/defconfig_arm64-armv8a-linuxapp-gcc | 4 +
>>> config/defconfig_arm64-thunderx-linuxapp-gcc | 4 +
>>> lib/librte_eal/linuxapp/eal/Makefile | 3 +
>>> lib/librte_eal/linuxapp/eal/eal_memory.c | 105 ++++++++++++++++++++++++++-
>>> mk/rte.app.mk | 3 +
>>> 8 files changed, 123 insertions(+), 4 deletions(-)
>>>
>
>
>
>
More information about the dev
mailing list