Оптимизация скорости с предварительной загрузкой, irqbalance и swappiness

У меня есть современное оборудование низкого уровня, использующее Ryzen 3400G, 8 ГБ оперативной памяти и SSD-накопитель. Я читал в Интернете о повышении скорости отклика с помощью предварительной загрузки, irqbalance и swappiness. Компьютер в основном используется в качестве рабочей станции и программирования.

  1. Preload

    Эта программа работает путем предварительной загрузки часто используемых программ в RAM. Намерение состояло в том, чтобы ускорить запуск различных часто используемых программ.

    Некоторые говорят, что если вы используете SSD, эта программа не имеет особого значения, поэтому эта программа немного устарела с современным оборудованием. Так ли это на самом деле?

  2. IRQ balance

    Распределяет прерывания на различные процессоры. Действительно ли это помогает повысить скорость отклика?

  3. Swappiness

    Если оперативной памяти недостаточно, тогда она может перекачивать страницы на SSD или жесткий диск. Что делать, если у вас даже свопа нет? У меня на самом деле нет свопа и вроде нормально.Даже если у меня есть своп, вместо SSD в качестве свопа я использую zram, так действительно ли свопинг имеет большое значение?

  4. Ananicy

    Существует программа для установки более высокого приоритета для тех, которые требуют более высокого взаимодействия . Как-то вообще не чувствую разницы в скорости (с точки зрения отзывчивости).

0
задан 19 April 2020 в 08:12

1 ответ

Чтобы ответить на мой собственный вопрос

1) Предварительная загрузка

Хорошо

Зависит от того, какую программу вы используете.

Если вы используете Google Chome, который требует однократного запуска, это бесполезно. Если вы используете программу, которая часто запускается, это может помочь.

Плохо

Она потребляет оперативную память

Замедляет загрузку

Если у вас SSD, предварительная загрузка не требуется. Это связано с тем, что твердотельные накопители обеспечивают гораздо более быстрое время произвольного доступа, чем жесткие диски, поэтому «предварительная загрузка» двоичных файлов / зависимостей в память является пустой тратой времени, IMO

Для указанного оборудования предварительная загрузка бесполезна

2) Баланс IRQ

Старое сообщение

https://serverfault.com/questions/513807/is-there-still-a-use-for-irqbalance-on-modern-hardware?rq=1

IRQbalance хранит все IRQ запросов от резервного копирования на одном процессоре. Я видел, как многие системы с 4+ ядрами ЦП работают медленно, потому что все процессы на разных ЦП ожидают на ЦП 0 для обработки запросов IRQ сети или хранилища. ЦП 0 выглядит очень, очень загруженным, все остальные ЦП не заняты, но приложения работают очень медленно.Приложения работают медленно, потому что они ожидают своих запросов ввода-вывода от ЦП 0.

IRQbalance пытается разумно сбалансировать это между всеми ЦП и, когда это возможно, помещает обработку IRQ как можно ближе к процессу. Это может быть одно и то же ядро, ядро ​​на одном кристалле, использующее один и тот же кэш, или ядро ​​в одной зоне NUMA.

Вы должны использовать irqbalance, если только:

Вы вручную не привязываете свои приложения/IRQ к определенным ядрам по уважительной причине (малая задержка, требования к реальному времени и т. д.)

Виртуальные гости. На самом деле это не имеет смысла, потому что, если вы не привязываете гостевую систему к определенным процессорам и IRQ, а также к выделенному сетевому/хранилищному оборудованию, вы, скорее всего, не увидите преимуществ, которые были бы на «голом железе». Но ваш хост KVM/RHEV ДОЛЖЕН использовать irqbalance, numad и настроен.

Новое сообщение

Однако в https://github.com/konkor/cpufreq/issues/48

мой первый аргумент заключается в том, что приложение не работает должным образом с включенным irqbalance. Во-вторых, энергосбережение. В-третьих, проблемы, связанные с производительностью и т. д.

Кстати: я почти уверен, что есть много случаев, когда irqbalance может быть очень полезен для задач сервера, но не для использования на рабочем столе и, особенно, для пользователей ноутбуков.

Linux очень ориентирован на серверы, и любые дистрибутивы Linux хотят распространять несколько версий ядер. Таким образом, нам всем приходится запускать огромное количество бесполезных вещей для серверного оборудования, программного обеспечения, протоколов и стеков MS Azure и т. д., включая irqbalance.

Если вы не видите 100% загрузки CPU0 во время рабочего процесса, вам вообще не нужно использовать irqbalance.Также современное ядро ​​​​само управляет этим в зависимости от загрузки процессора.

Кажется, Linux > 4.9 может выполнять irqbalance без внешнего демона

Даже Debian, Ubuntu теперь отключает его по умолчанию

https://bugs.launchpad.net/ubuntu/+source/ubuntu-meta /+bug/1833322

irqbalance технически не нужен на настольных системах (предположительно, он в основном для серверов) и на самом деле может снизить производительность и энергосбережение. Похоже, что это дает преимущества только для серверных сред с относительно постоянной нагрузкой. Если это действительно серверно-ориентированный пакет, то его не следует устанавливать по умолчанию на рабочий стол

3) Для подкачки

Если у вас достаточно оперативной памяти, подкачка не имеет значения. Так что все перечисленное не имеет значения. Но когда у вас однажды закончится память, вы столкнетесь с проблемами

4) Ананиси

Идея хорошая, но не знаю разницы в производительности

0
ответ дан 26 April 2020 в 00:05

Другие вопросы по тегам:

Похожие вопросы: