Re: NO_HZ_IDLE on x86_64?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 16, 2019 at 8:33 AM Prarit Bhargava <prarit@xxxxxxxxxx> wrote:
>
> On 12/13/19 11:35 AM, Justin Forbes wrote:
> > On Fri, Dec 13, 2019 at 8:14 AM Laura Abbott <labbott@xxxxxxxxxx> wrote:
> >>
> >> On 12/12/19 9:10 AM, Justin Forbes wrote:
> >>> On Thu, Dec 12, 2019 at 3:48 AM Peter Robinson <pbrobinson@xxxxxxxxx> wrote:
> >>>>
> >>>> Hey All.
> >>>>
> >>>> In digging through some pieces around CPU_IDLE I noticed that
> >>>> NO_HZ_IDLE is explicitly disabled on x86_64 but not on all other
> >>>> architectures.
> >>>>
> >>>> Doing a "git log --follow
> >>>> configs/fedora/generic/x86/x86_64/CONFIG_NO_HZ_IDLE" it goes all the
> >>>> way back to 2016 when we changed the way the configs were handled.
> >>>>
> >>>> The upstream kernel's opinion [1] on it is "Most of the time you want
> >>>> to say Y here." so I'm wondering if there's a reason why we're
> >>>> difference on x86_64 or is it just lost in the winds of time?
> >>>>
> >>>> Peter
> >>>>
> >>>> PS was digging around CPU_IDLE_GOV_TEO for those curious.
> >>>>
> >>>> [1] https://cateee.net/lkddb/web-lkddb/NO_HZ_IDLE.html
> >>>
> >>>
> >>> commit 3836faf6e68495fc70316229a3540506f7ce4c98
> >>> Author: Kyle McMartin <kyle@xxxxxxxxxxxxxxxxx>
> >>> Date:   Wed Sep 17 13:10:12 2014 -0500
> >>>
> >>>      re-enable RCU_FAST_NO_HZ, enable NO_HZ_FULL on x86_64
> >>>
> >>>      - I also like to live dangerously. (Re-enable RCU_FAST_NO_HZ which
> >>> has been off
> >>>        since April 2012. Also enable NO_HZ_FULL on x86_64.)
> >>
> >> Yeah I wouldn't quite say it's been "lost" but the real question
> >> is if it still makes sense. I don't have a strong opinion without
> >> data. Prarit, any opinion here?
> >
> > Oh, I wasn't pointing out that it wasn't just lost, I was pointing out
> > that NO_HZ_IDLE is not set because we run NO_HZ_FULL. We were one of
> > the first distros to do so, and it has worked well for us.  I have a
> > fairly strong opinion about not dropping back to IDLE without good
> > reason.
>
> Getting back to the original question, I had to go back through my history to
> see if I could find a reason why there is a discrepancy between x86 and the
> other arches.
>
> AFAICT in *RHEL8* we have NO_HZ_FULL on all arches except s390x.  S390x has
> NO_HZ_IDLE.  Additionally s390 upstream has:
>
> [prarit@prarit linux]$ git grep NO_HZ_IDLE arch/s390/
> arch/s390/configs/debug_defconfig:4:CONFIG_NO_HZ_IDLE=y
> arch/s390/configs/defconfig:4:CONFIG_NO_HZ_IDLE=y
> arch/s390/configs/zfcpdump_defconfig:2:CONFIG_NO_HZ_IDLE=y
>
> On Fedora, as noted,
>
> [prarit@prarit fedora]$ find ./ -name *NO_HZ_IDLE* | xargs grep ^
> ./generic/x86/x86_64/CONFIG_NO_HZ_IDLE:# CONFIG_NO_HZ_IDLE is not set
> ./generic/CONFIG_NO_HZ_IDLE:CONFIG_NO_HZ_IDLE=y
> [prarit@prarit fedora]$ find ./ -name *NO_HZ_FULL* | xargs grep ^
> ./generic/x86/x86_64/CONFIG_NO_HZ_FULL:CONFIG_NO_HZ_FULL=y
> ./generic/CONFIG_NO_HZ_FULL:# CONFIG_NO_HZ_FULL is not set
>
> FWIW I think the correct thing to do for performance reasons is use NO_HZ_FULL
> on all arches except s390x which requires NO_HZ_IDLE.
>
Yes, I do believe this is the correct thing to do, as to how we got
into the current state, when NO_HZ_FULL was introduced, it was x86_64
only. Other architectures came in eventually, but as they were already
set to NO_HZ_IDLE, it didn't prompt us, and to be honest, we were
paying less attention to the other architectures back then. It has
been a while.  I will get the changes made in rawhide with tomorrow's
builds.

Justin
_______________________________________________
kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/kernel@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [USB]     [Asterisk PBX]

  Powered by Linux