ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Andrey Savchenko <bircoph@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] Q: CONFIG_PSI_DEFAULT_DISABLED=y
Date: Mon, 6 Sep 2021 18:47:02 +0300
Message-ID: <20210906184702.7144ccecd71ca9c4508c16a6@altlinux.org> (raw)
In-Reply-To: <70270dcf-92de-2975-3d54-1740d1711910@basealt.ru>

[-- Attachment #1: Type: text/plain, Size: 4224 bytes --]

On Mon, 6 Sep 2021 19:23:49 +0400 Alexey Sheplyakov wrote:
> On 06.09.2021 19:03, Andrey Savchenko wrote:
> 
> >> Хоть с PSI, хоть без ядро всё равно ведёт учёт занятой/доступной памяти.
> >> А планировщик всё равно отслеживает, сколько потоков готово к выполнению,
> >> сколько заблокированы, и т.п. C PSI ядро может предоставить эту информацию
> >> в userspace.
> > 
> > Это не так. Pressure stall accounting при выключенной опции ядро не
> > ведёт.
> 
> В тех местах, где и так всё упирается в ввод-вывод (считая манипуляции
> таблицами страниц), например, __perform_reclaim, __alloc_pages_direct_compact,
> ядро вызывает psi_memstall_enter/psi_memstall_leave.
> Которые по сути ставят/снимают флажок.

Это может быть несущественно при дисковом i/o (и то я не уверен на
счёт современных NVMe), но не стоит игнорировать манипуляции
с памятью: ядро делает дополнительный вызов, это создаёт лишний
переход или даже несколько, уменьшает эффективность использования
кеша и т.д. и т.п..
 
> >> Так что пусть по умолчанию будет включено. А кто хочет рискнуть стабильностью
> >> системы ради (мнимого) прироста производительности - пусть **отключают**. 
> >> Вместе с /proc/loadavg
> > 
> > Надеюсь, вы понимаете разницу между общим счётчиком и детализацией
> > для каждого процесса?
> 
> $ cat /proc/loadavg 
> 0.63 0.50 0.42 1/1546 251275
> 
> $ cat /proc/pressure/memory
> 
> some avg10=0.00 avg60=0.00 avg300=0.00 total=2657355
> full avg10=0.00 avg60=0.00 avg300=0.00 total=1480309
> 
> Ровно та же детализация, что у loadavg. Только, грубо говоря,
> есть loadavg ещё и для памяти и дисков (IO).

Там достаточно много run-time сбора телеметрии выходит. Это не так
безобидно, как кажется.
 
> > Вообще, memory accounting в ядре затратен и без нужды лучше не использовать.
> 
> Парламент не место для дискуссий, ага. А ядро не место для учёта памяти.
> Это надо отлить в граните.

Вместо отлива в граните Вы лучше разок сами ядро соберите
и почитайте описания задействованных при этом опций. Вот пример:

config MEMCG_SWAP_ENABLED
    bool "Swap controller enabled by default"
    depends on MEMCG_SWAP
    default y
    help
      Memory Resource Controller Swap Extension comes with its price in
      a bigger memory consumption. General purpose distribution kernels
      which want to enable the feature but keep it disabled by default
      and let the user enable it by swapaccount=1 boot command line
      parameter should have this option unselected.
      For those who want to have the feature enabled by default should
      select this option (if, for some reason, they need to disable it
      then swapaccount=0 does the trick).

Там что не весь учёт потребления памяти одинаково полезен.

Обратите внимание: для функциональности с побочными эффектами
предусмотрен флажок для вкл/выкл по-умолчанию — ну прямо как для
CONFIG_PSI.

Best regards,
Andrew Savchenko

[-- Attachment #2: Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2021-09-06 15:47 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-06 12:41 Alexey Shabalin
2021-09-06 13:03 ` Alexey V. Vissarionov
2021-09-06 13:04 ` Andrey Savchenko
2021-09-06 14:32   ` Alexey Sheplyakov
2021-09-06 15:03     ` Andrey Savchenko
2021-09-06 15:23       ` Alexey Sheplyakov
2021-09-06 15:47         ` Andrey Savchenko [this message]
2021-09-07  9:16           ` Alexey Sheplyakov
2021-09-06 16:11     ` Sergey Y. Afonin
2021-09-07  7:46       ` Alexey Sheplyakov
2021-09-07  9:32         ` Anton Farygin
2021-09-07 10:17           ` Sergey Afonin
2021-09-07 10:21             ` Alexey Sheplyakov
2021-09-07 10:26               ` Sergey Afonin
2021-09-07 10:59               ` Anton Farygin
2021-09-07 15:15               ` Andrey Savchenko
2021-09-08  7:23                 ` Alexey Sheplyakov
2021-09-07 10:58             ` Anton Farygin
2021-09-07 20:47               ` Sergey Y. Afonin
2021-09-08  5:33                 ` Anton Farygin
2021-09-08  8:36                   ` Sergey Afonin
2021-09-08  8:39                     ` Anton Farygin
2021-09-08  8:50                     ` Alexey Sheplyakov
2021-09-08  9:11                       ` Denis Medvedev
2021-09-08  9:12                         ` Anton Farygin
2021-09-08 10:17                           ` Denis Medvedev
2021-09-08 10:27                             ` Alexey Sheplyakov
2021-09-08 11:09                               ` Denis Medvedev
2021-09-08 13:19                                 ` Alexey Sheplyakov
2021-09-08 10:44                             ` Oleg Solovyov
2021-09-08  9:17                         ` Alexey Sheplyakov
2021-09-08 10:14                           ` Denis Medvedev
2021-09-08 10:47                             ` Alexey Sheplyakov
2021-09-08 12:58                               ` Denis Medvedev
2021-09-08  7:08                 ` Alexey Sheplyakov
2021-09-08  8:38                   ` Sergey Afonin
2021-09-08  8:42                     ` Anton Farygin
2021-09-08  9:01                     ` Alexey Sheplyakov
2021-09-08  9:40                       ` Sergey Afonin
2021-09-08 10:24                         ` Anton Farygin
2021-09-08 14:12                           ` Alexey Sheplyakov
2021-09-08 14:49                             ` Anton Farygin
2021-09-08 15:06                             ` Sergey Y. Afonin
2021-09-08 15:37                               ` Alexey Sheplyakov
2021-09-08 16:52                                 ` Sergey Y. Afonin
2021-09-08 10:42                       ` Andrey Savchenko
2021-09-07 10:16         ` Sergey Afonin
2021-09-07 10:27           ` Alexey Sheplyakov
2021-09-07 10:31             ` Sergey Afonin
2021-09-07 11:01             ` Anton Farygin
2021-09-07 11:31               ` Alexey Sheplyakov
2021-09-07 11:40                 ` Anton Farygin
2021-09-06 15:16 ` Anton V. Boyarshinov
2021-09-06 16:57   ` Vitaly Chikunov
2021-09-06 18:28     ` Anton V. Boyarshinov
2021-09-06 20:49       ` Alexey V. Vissarionov
2021-09-07  9:31         ` Alexey Sheplyakov
2021-09-07 10:26           ` Alexey V. Vissarionov
2021-09-07 10:42             ` Alexey Sheplyakov
2021-09-07 10:56               ` Sergey Afonin
2021-09-07 15:02                 ` Andrey Savchenko
2021-09-07 11:21               ` Alexey V. Vissarionov
2021-09-07 11:41                 ` Alexey Sheplyakov
2021-09-07 11:44                   ` Anton Farygin
2021-09-07 20:54                   ` Sergey Y. Afonin
2021-09-07 10:59             ` [devel] [JT] " Oleg Solovyov
2021-09-07 13:59               ` Leonid Krivoshein
2021-09-07 10:54         ` [devel] " Leonid Krivoshein
2021-09-07 11:38           ` Alexey V. Vissarionov

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=20210906184702.7144ccecd71ca9c4508c16a6@altlinux.org \
    --to=bircoph@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /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

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git