Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.kernel > #73555

Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE

Path csiph.com!tncsrv06.tnetconsulting.net!3.eu.feeder.erje.net!feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!bofh.it!news.nic.it!robomod
From Salvatore Bonaccorso <carnil@debian.org>
Newsgroups linux.debian.bugs.dist, linux.debian.kernel
Subject Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE
Date Sat, 30 Oct 2021 16:10:01 +0200
Message-ID <DdXdv-32F-5@gated-at.bofh.it> (permalink)
References <qtZXc-VN-13@gated-at.bofh.it> <qu40O-3rz-19@gated-at.bofh.it> <qu40O-3rz-19@gated-at.bofh.it> <qtZXc-VN-13@gated-at.bofh.it> <DcMtQ-73k-11@gated-at.bofh.it> <qtZXc-VN-13@gated-at.bofh.it> <DcMtQ-73k-11@gated-at.bofh.it>
X-Original-To Georg Müller <georgmueller@gmx.net>, 804857@bugs.debian.org
X-Mailbox-Line From debian-bugs-dist-request@lists.debian.org Sat Oct 30 14:06:08 2021
Old-Return-Path <debbugs@buxtehude.debian.org>
X-Spam-Flag NO
X-Spam-Score -4
Reply-To Salvatore Bonaccorso <carnil@debian.org>, 804857@bugs.debian.org
Original-Sender Salvatore Bonaccorso <salvatore.bonaccorso@gmail.com>
Resent-To debian-bugs-dist@lists.debian.org
Resent-Cc Debian Kernel Team <debian-kernel@lists.debian.org>
X-Debian-Pr-Message followup 804857
X-Debian-Pr-Package src:linux
X-Debian-Pr-Source linux
X-Gm-Message-State AOAM53250g32hV/aEaiCgrzBJ8EvPpalX7c7K6mQrV6A73wfPCc60qc5 2kearT4aYccOe92y6SY48LXDzM4+XL1doQ==
X-Google-SMTP-Source ABdhPJxQqH54+4d2eIz40U9Ke+SRA3bVyccAZ5fZ9DNGPvrk0YJ94Z1n0YEP/IxhP/9pwH1FEu7dyQ==
X-Received by 2002:a17:907:3e14:: with SMTP id hp20mr22336366ejc.507.1635602677133; Sat, 30 Oct 2021 07:04:37 -0700 (PDT)
Sender robomod@news.nic.it
MIME-Version 1.0
Content-Type text/plain; charset=iso-8859-1
Content-Disposition inline
Content-Transfer-Encoding 8bit
X-Debian-Message from BTS
X-Mailing-List <debian-bugs-dist@lists.debian.org> archive/latest/1687528
List-ID <debian-bugs-dist.lists.debian.org>
List-URL <https://lists.debian.org/debian-bugs-dist/>
Approved robomod@news.nic.it
Lines 75
Organization linux.* mail to news gateway
X-Original-Cc Ben Hutchings <ben@decadent.org.uk>, 804857-submitter@bugs.debian.org
X-Original-Date Sat, 30 Oct 2021 16:04:35 +0200
X-Original-Message-ID <YX1Q8znCZ4v4JEJf@eldamar.lan>
X-Original-References <144733399907.13529.7423382518475285734.reportbug@lindesk> <1447349375.3076.4.camel@decadent.org.uk> <1447349375.3076.4.camel@decadent.org.uk> <144733399907.13529.7423382518475285734.reportbug@lindesk> <56e0b151-063c-8830-1bfd-0b6973307625@gmx.net> <144733399907.13529.7423382518475285734.reportbug@lindesk> <56e0b151-063c-8830-1bfd-0b6973307625@gmx.net>
X-Original-Sender Salvatore Bonaccorso <salvatore.bonaccorso@gmail.com>
X-Received-Bytes 5661
Xref csiph.com linux.debian.bugs.dist:1078722 linux.debian.kernel:73555

Cross-posted to 2 groups.

Show key headers only | View raw


Control: tags -1 + moreinfo

On Wed, Oct 27, 2021 at 10:16:56AM +0200, Georg Müller wrote:
> > But for other configurations it is worse:
> > 
> > config NO_HZ_FULL
> >         bool "Full dynticks system (tickless)"
> > ...
> >          This is implemented at the expense of some overhead in user <-> kernel
> >          transitions: syscalls, exceptions and interrupts. Even when it's
> >          dynamically off.
> > 
> >          Say N.
> > 
> 
> 
> Upstream commit 176b8906 changed the description regarding NO_HZ_FULL:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=176b8906c399a170886ea4bad5b24763c6713d61
> 
> 
> > By default, without passing the nohz_full parameter, this behaves just
> > like NO_HZ_IDLE.
> >
> > If you're a distro say Y.

While this is changed, and distros encouraged to select it, selecting
this would enable both CONFIG_VIRT_CPU_ACCOUNTING_GEN and
CONFIG_RCU_NOCB_CPU.

For CONFIG_VIRT_CPU_ACCOUNTING_GEN

          Select this option to enable task and CPU time accounting on full
          dynticks systems. This accounting is implemented by watching every
          kernel-user boundaries using the context tracking subsystem.
          The accounting is thus performed at the expense of some significant
          overhead.

          For now this is only useful if you are working on the full
          dynticks subsystem development.

          If unsure, say N.

which indicates some significant overhead.

And for CONFIG_RCU_NOCB_CPU

          Use this option to reduce OS jitter for aggressive HPC or
          real-time workloads.  It can also be used to offload RCU
          callback invocation to energy-efficient CPUs in battery-powered
          asymmetric multiprocessors.  The price of this reduced jitter
          is that the overhead of call_rcu() increases and that some
          workloads will incur significant increases in context-switch
          rates.

          This option offloads callback invocation from the set of CPUs
          specified at boot time by the rcu_nocbs parameter.  For each
          such CPU, a kthread ("rcuox/N") will be created to invoke
          callbacks, where the "N" is the CPU being offloaded, and where
          the "x" is "p" for RCU-preempt (PREEMPTION kernels) and "s" for
          RCU-sched (!PREEMPTION kernels).  Nothing prevents this kthread
          from running on the specified CPUs, but (1) the kthreads may be
          preempted between each callback, and (2) affinity or cgroups can
          be used to force the kthreads to run on whatever set of CPUs is
          desired.

          Say Y here if you need reduced OS jitter, despite added overhead.
          Say N here if you are unsure.

Adding as well overhead.

Is this still to be considered true?

Regards,
Salvatore

Back to linux.debian.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Georg Müller <georgmueller@gmx.net> - 2021-10-27 10:30 +0200
  Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Salvatore Bonaccorso <carnil@debian.org> - 2021-10-30 16:10 +0200
    Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Henning Schild <henning.schild@siemens.com> - 2021-11-04 22:10 +0100
      Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Salvatore Bonaccorso <carnil@debian.org> - 2021-11-07 11:30 +0100
      Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Frederic Weisbecker <frederic@kernel.org> - 2021-11-13 00:40 +0100
        Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Salvatore Bonaccorso <carnil@debian.org> - 2021-11-13 08:50 +0100
        Bug#804857: linux: New feature: enable CONFIG_NO_HZ_FULL and CONFIG_RCU_NOCB_CPU/CONFIG_RCU_NOCB_CPU_NONE Henning Schild <henning.schild@siemens.com> - 2021-11-15 11:50 +0100

csiph-web