Компания Oracle представила инструментарий bpftune, предназначенный для автоматической оптимизации настроек ядра Linux с учётом выполняемых задач, активности в системе и характера нагрузки. Основу bpftune составляет фоновый процесс, работающий в пространстве пользователя и использующий подсистему ядра BPF. Код проекта написан на языке Си и распространяется под лицензией GPLv2...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=59354
попробовал - круто. тепреь на работе ничего не делаю. одной командой 2 месяца работ оптимизировал. теперь лежу на диване
Брат жив-то хоть после этих оптимизаций? Как зависимость?
>>попробовал - круто. тепреь на работе ничего не делаю. одной командой 2 месяца работ оптимизировал. теперь лежу на диванеКоманду не подскажете?
https://en.wikipedia.org/wiki/The_A-Team
Это "Team" какое-то, а чел спрашивал про https://en.wikipedia.org/wiki/Commando_(comics)
>>одной командой 2 месяца работ оптимизировал/ >> /dev/null
>>теперь лежу на диванеспасибо что живой, когда гипс снимают?
> теперь лежу на диванесократили? точнее оптимизировали ? :-)
> попробовал - круто. тепреь на работе ничего не делаю.Заменят тебя на копилота и этот оптимизатор, как пить дать...
Сформулировать и понять требования и задачу за заказчика чятыгпт не смогут
Э, вроде как раз уже более-менее начинает вот это вот уметь. Понятно что может и полную пургу сделать. Но с учетом интеллекта многих хомяков, поправленый чатгопом хомяк - куда лучше чем его изначальный вид.И кстати "chatgpt может предложить ряд вариантов по улучшению chatgpt". Так что бойтесь, кажется ОНО приближается. Кто-то уже всерьез допер до этой идеи. Ну а чем она заканчивается в случае успеха мы все догадываемся...
А главное, альтернативный вариант проверить трудно. Условия оптимизации не воспроизводимы. Художник это неповторимо.
Хорошая штука, можно будет ничего не делать и система сама не будет ничего не делать, автоматически
а бывает такая же тулза, только для подбора конфига ядра для текущего железа?
На одном и том же железе может быть разная нагрузка и нужны будут разные параметры. Подбирать под железо последнее дело.
продублирую для особо одарённых: для подбора конфига ядра для текущего железа
Если бы ты хотя бы чуть-чуть разбирался в теме то ты бы понял бы что спрашиваешь полную чушь. В силу своей полной некомпетентности.
Он спрашивает, как отключить поддержку лишнего оборудования, не нажимая два часа кнопки в make menuconfig
То о чём ты говоришь называется драйвера и про них в сабже не слово. Он конечно же про какие-то супер пупер оптимизации, которые бывают только под задачу. Потому что только по синтетическим тестами решения конкретно задачи можно понять изменилось что-то или нет. Вы с ним два сапога пара.
То, о чем говорю я, называется.config
Это и есть конфиг ядра. И в вопросе как раз про конфиг спрашивают.
>>как отключить поддержку лишнего оборудования, не нажимая два часа кнопки в make menuconfigmake localmodconfig
>>>как отключить поддержку лишнего оборудования, не нажимая два часа кнопки в make menuconfig
> make localmodconfigСработает для собранных с опцией "M", но не с "Y"
Ну и потом не будут читаться компакт диски и накопитель соседа с NTFS.
>>Ну и потом не будут читаться...какая буква в написанном вами слове "лишнего" вам же непонятна?
>>>Ну и потом не будут читаться...
> какая буква в написанном вами слове "лишнего" вам же непонятна?Мне всё понятно.
В том числе и зачем при цитировании выкинули неудобную часть ответа.
localmodconfig решает задачу частично.
да мне всё удобно )))>>компакт диски и накопитель соседа с NTFS.
вот только что такое "компакт диски"? смутно припоминается, но как-то уж очень смутно.
>>>компакт диски и накопитель соседа с NTFS.
> вот только что такое "компакт диски"? смутно припоминается, но как-то уж очень
> смутно.А ещё NTSF смутно видите. Потому смутно представляете себе, что при загрузке компакт-диска потребуется подгрузить драйвер ФС, который во время make localmodconfig не был загружен. И смутно представляете себе, что при подключении другой периферии (телефоны по USB, всякие блутус устройства и т.п.) будет тоже самое. То есть - сами смутно localmodconfig пробовали.
> шо ни анон - всё Ванга.Самокритично.
> вы за меня не переживайте, я гентушник, что без чего не работает
> уж как-то вкурсе.В смысле, "гентушник" - это аргумент?
Значит я прав. ;)
именно так
В make.config, дай бог, только четверть кнопок относятся к оборудованию...
А зачем?
Ядра в дистрах имеют максимально модульный конфиг.
Потом такое ядро не работает без initrd. Очень весело, когда btrfs начала сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только чтение" нельзя - драйвер usb в модуле.
Пользователи btrfs должны максимально страдать.
initrd может по разным причинам повредиться. Например, при обновлении ядра закончилось место в EFI-разделе. Что в этом случае сделает пакетный менеджер на системе Анонима?
То, что прописано в скриптах preinst, postinst ?
— Сэр, не подскажете, где мы находимся?
— Вы находитесь в корзине воздушного шара.
...
— Ватсон, это был программист.
— Как Вы догадались, Холмс?
— Он дал совершенно точный и бесполезный ответ.
Это не программист, а капитан Очевидность. А вопросы надо точнее задавать.
Куда ж точнее? Пряник ответил, а Аноним не знает -- это и требовалось выяснить.
Это не программист, а поддержка майкрософт
Пользователи EFI должны страдать?
без ефи видеошмарта не пробросится в квм
А в параметрах загрузки ядра это указать в Grub, не вариант?
> без ефи видеошмарта не пробросится в квмЭто кто тебе такой бред сказал? Все прекрасно пробрасывается. Даже как проброс pci.
> Пользователи EFI должны страдать?ессно. для того и сделан.
Не создаст initrd. Выяснять причину, устранить и заново подготавливать новое ядро к загрузке.
Об ошибке не сообщит?
Установленное ядро не откатит?
А если у вас тома на LVM2, то без initrd в прицыпе не получится.
Когда ФС начала сыпаться, это вообще весело.
Я так понимаю, для btrfs это нормальное поведение?
> Когда ФС начала сыпаться, это вообще весело.
> Я так понимаю, для btrfs это нормальное поведение?Вряд ли соответствует нормальному распределению, но опции монтирования имеются:
clear_cacheForce clearing and rebuilding of the free space cache if something has gone wrong.
rescue
(since: 5.9)
Modes allowing mount with damaged filesystem structures.
usebackuproot (since: 5.9, replaces standalone option usebackuproot)
nologreplay (since: 5.9, replaces standalone option nologreplay)
ignorebadroots, ibadroots (since: 5.11)
ignoredatacsums, idatacsums (since: 5.11)
all (since: 5.9)
> Потом такое ядро не работает без initrd.Можно вкомпиливать все в ядро, но это тоже палка о 2 концах - ядро становится жирнее, перезапустить драйвер в случае чего нельзя совсем без ребута, драйвер в памяти всегда независимо от нужности, ну и оно либо будет огромного размера и RAM жрать как не в себя, либо не универсальное. Админам локалхоста пофигу - а когда систем становится более чем 2..5 похоих, уже хочется некоей унификации, чтобы один образ ядра подымал всю категорию систем.
> Очень весело, когда btrfs начала сыпаться, а нажать пару кнопок на клавиатуре
> и смонтировать в "только чтение" нельзя - драйвер usb в модуле.Не очень понимаю что мешало в загрузчике командлайн ядра дать как надо, если это рутфс. Кроме того - есть sysrq рулится не только с клавы, но и записью в файл.
И загрузка с альтернативного снапшота - тоже через загрузчик делается при желании, если что. И да, представляете, можно и кернел с инитрд из алтернативного снапшота, если они там были. В этом случае даже след файлов ядра или инитрд - потребует немного попечатать параметры командлайна кернела, но - чинится без бутявки.
>> Очень весело, когда btrfs начала сыпаться, а нажать пару кнопок на клавиатуре
>> и смонтировать в "только чтение" нельзя - драйвер usb в модуле.
> Не очень понимаю что мешало в загрузчике командлайн ядра дать как надо,
> если это рутфс.Что дать? Драйвер btrfs, собранный в виде модуля (и расположенный на рассыпающейся ФС и в побитом initrd), прописать в командную строку?
> Кроме того - есть sysrq рулится не только
> с клавы, но и записью в файл.И что оно даст?
> И загрузка с альтернативного снапшота - тоже через загрузчик делается при желании,
> если что.Снапшота рассыпающейся ФС?
Столько вопросов. Одни вопросы в общем-то. Вы начинающий разработчик на Rust? И фиксация на негативе. Риск депрессии и сердечно-сосудистых заболеваний. Берегите себя.
Господин диванный ухотерапевт, это называется "риторические вопросы".
Господин ПООЬУ, риторическими вопросами в электричке попутчиц занимайте. Здесь форум для технических специалистов и ведите себя соответствующе.
> Здесь форум для технических специалистов и ведите себя соответствующе.Господин ухотерапевт, повторяю: начинайте с себя.
Идите со своими "Риск депрессии и сердечно-сосудистых заболеваний" в соответствующее место.
Давайте подытожим:1. Сначала всем сложно
2. К тому же Rust непростой язык
3. Но у вас всё получится
4. Проявите терпение, это главное.
Я понял, что тебя выгнали из медучилища, но при чём тут Rust? И зачем ты за мной бегаешь? Твой другой ник - ВыньОпух?
А что мешало разместить загрузочные файлы на более простом разделе? Не понимаю как Вы загружаете первоначальную файловую систему initrd с раздела btrfs на который нет поддержки в момент загрузки.
На момент загрузки ядра, initrds и другие необходимые файлы для загрузки и подготовки рабочего / должны находиться на надежной фс. Таким образом битого initrd не должно быть.
> А что мешало разместить загрузочные файлы на более простом разделе? Не понимаю
> как Вы загружаете первоначальную файловую систему initrd с раздела btrfs на
> который нет поддержки в момент загрузки.Я никак не загружаю, поскольку не использую BtrFS, с тех пор как убил её ничего специально не делая.
GRUB поддерживает BtrFS.> На момент загрузки ядра, initrds и другие необходимые файлы для загрузки и
> подготовки рабочего / должны находиться на надежной фс. Таким образом битого
> initrd не должно быть.В сообщении №60, на которое я отвечал ("Ядра в дистрах имеют максимально модульный конфиг"), кто-то за пользователя решил, как оно должно быть. Некоторые дистры разрабатывают совершенно некомпетентные майнтайнеры, там может оказаться всякое.
> GRUB поддерживает BtrFS.И это позволяет кроме всего прочего грузануться и со снапшота - если там /boot свой был :). Это как раз довольно удачная идея - потому что ВСЕ состояние системы максимально сохраняется.
Если снапшотить только рутфс - окей, круто. А кто сказал что вон тот рутфс гарантированно взлетает с вот этим кернелем и инитрд? Вот это ниоткуда не следует, ценность такого снапшота снижается и так можно и налететь.
> Некоторые дистры разрабатывают совершенно некомпетентные майнтайнеры, там
> может оказаться всякое.У майнтайнеров соображения специфичные. Они должны сделать ЗБС максимуму народа. Иногда ценой энных компромиссов. Очередной такой компромисс можно было недавно наблюдать в рассылке и гите майнлайна на тему стрипа неиспользуемых сбилдованым символов. Они так и нишмагли в полный dead code elimination и отрихтовали modpost избавив его от рекурсивного обхода дир и вообще достаточно странных (и не очень шустрых) действ. К сожалению это немного затрагивает желающих топовой оптимизации которые знают что есть LTO и dead code elimination и возжелали грохнуть все символы не используемые их набором модулей из конфига (ахтунг, такое может сломать внемайнлайновые модули, мне это пофиг, но это мне...). Однако во всем есть свои компромиссы. Если для убер-оптимизации надо сильно втормозить билдовку и делать какое-то действо которое вообще не очень вменяемо выглядит - кодеры могут пробурчать "не очень то и хотелось" имея свой валидный пойнт.
> А что мешало разместить загрузочные файлы на более простом разделе?Понимание того момента что вон тот снапшот rootfs совершенно не обязан грузиться с вот именно этим ядром и инитрд вон оттуда. А снапшотнуть состояние чтобы ВСЕ вернуть как было - ну вы сами сказали что /boot на другой раздел, да? Вот там как раз и не будет заведомо работавших на момент снапшотирования ядра и инитрд! И тут вы при откате снапшота такой - опаньки, а этот рутфс с тем ядром не дружит?! Да, представляете, и такое тоже бывает. Ну например окажется там /lib/modules от другого кернела, который на тот момент в /boot еще был - и вы отдыхаете без всех дров кроме того что в initrd! Ценность такой восстановленной системы разумеется около ноля - там нихрена не работает. И зачем такой откат надо?! Снапшот системы должен включать системное состояние по максимуму, иначе он нафиг не уперся.
> Что дать? Драйвер btrfs, собранный в виде модуля (и расположенный на рассыпающейся ФСЯ в примерно такой ситуации - факапе kernel vs initrd version, не менее фатально для вгрузки модулей - бутанулся GRUB с "альтернативного" снапшота, где все еще было ЗБС. Да, пришлось попечатать в GRUB немного, указывая где взять initrd/kernel и что у нас теперь rootfs (rootflags=subvol=<what>).
Но вообще
1) Это работает, если /boot с ядром и инитрд был на btrfs
2) Если кернел и инитрд живые и рут указан правильным - изумительно идет на взлет
3) Эта механика не уповала на живость "дефолтной инкарнации" ядра и инитрд, такой пространственно временной парадокс. Представляете, инкарнаций /boot может быть и более 1 как часть "снапшота системы".В общем привет, нуб, ты не умеешь пользоваться машиной времени и навигацией по множественным мирам. А оно вот даже от битого ядра и загрузчика может спасти. Если это была структура "one level above /" (как убунта делает) там лишь очень немного параметров поменять надо, и даже хинты в консоли груба перед глазами из дефолтного варианта. Или к вопросу зачем может быть нужен продвинутый бутлоадер и возможность кастомного командлайна ядру в нем (кто-то удивлялся, вот весьма конкнретный пример).
> и в побитом initrd), прописать в командную строку?
GRUB вообще самому по себе до балды что там с ядром и initrd. Ну вот и прочтет альтернативные инкарнации из снапшота - и сам снапшот как рутфс попросит зацепить, и глазом не моргнет. Вот так одним грубом чинится из снапшота, без бутявок. Это же элементарно, Ватсон.
> Снапшота рассыпающейся ФС?
Поскольку COW недеструктивен - может и прокатить. Тут конечно вопрос что и в каком виде осыпалось. Но деталей факапа из вас выжать не удалось - так что не думаю что это любопытство будет когда либо удовлетворено, досадно но мир не идеален.
> Потом такое ядро не работает без initrd. Очень весело, когда btrfs начала
> сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только
> чтение" нельзя - драйвер usb в модуле.Если ФС начала сыпаться то ядро тоже может оказаться битым.
Тут надо грузится с флешки и чинить ФС.
Надо грузить предыдущее ядро и initrd.
> Надо грузить предыдущее ядро и initrd.Они точно так же могут оказаться битыми.
Загрузочной флешки под рукой может не оказаться.
В законах Мерфи про это всё доступно написано, попроще теорвера.
С точки зрения теорвера две попытки обычно лучше одной :)
>> Потом такое ядро не работает без initrd. Очень весело, когда btrfs начала
>> сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только
>> чтение" нельзя - драйвер usb в модуле.
> Если ФС начала сыпаться то ядро тоже может оказаться битым.
> Тут надо грузится с флешки и чинить ФС.Может. Вероятность ниже. Либо один файл битый, либо один из двух. Занимаемый размер так же влияет.
>>> Потом такое ядро не работает без initrd. Очень весело, когда btrfs начала
>>> сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только
>>> чтение" нельзя - драйвер usb в модуле.
>> Если ФС начала сыпаться то ядро тоже может оказаться битым.
>> Тут надо грузится с флешки и чинить ФС.
> Может. Вероятность ниже. Либо один файл битый, либо один из двух. Занимаемый
> размер так же влияет.Правильно, если ты вкомпилишь все в ядро, то его размер увеличится, а это увеличит вероятность стать битым 😎
>>>> Потом такое ядро не работает без initrd. Очень весело, когда btrfs начала
>>>> сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только
>>>> чтение" нельзя - драйвер usb в модуле.
>>> Если ФС начала сыпаться то ядро тоже может оказаться битым.
>>> Тут надо грузится с флешки и чинить ФС.
>> Может. Вероятность ниже. Либо один файл битый, либо один из двух. Занимаемый
>> размер так же влияет.
> Правильно, если ты вкомпилишь все в ядро, то его размер увеличится, а
> это увеличит вероятность стать битым 😎Так потому и желательно на вкомпиливать лишнее (в том числе AMD на Intel и наоброт).
>[оверквотинг удален]
>>>>> сыпаться, а нажать пару кнопок на клавиатуре и смонтировать в "только
>>>>> чтение" нельзя - драйвер usb в модуле.
>>>> Если ФС начала сыпаться то ядро тоже может оказаться битым.
>>>> Тут надо грузится с флешки и чинить ФС.
>>> Может. Вероятность ниже. Либо один файл битый, либо один из двух. Занимаемый
>>> размер так же влияет.
>> Правильно, если ты вкомпилишь все в ядро, то его размер увеличится, а
>> это увеличит вероятность стать битым 😎
> Так потому и желательно на вкомпиливать лишнее (в том числе AMD на
> Intel и наоброт).А тут у тебя сдыхает материнка, а на складе лежит почти такая же, но по закону подлости в ней контроллер чей драйвер ты не вкомпилил в ядро.
>[оверквотинг удален]
>>>>> Тут надо грузится с флешки и чинить ФС.
>>>> Может. Вероятность ниже. Либо один файл битый, либо один из двух. Занимаемый
>>>> размер так же влияет.
>>> Правильно, если ты вкомпилишь все в ядро, то его размер увеличится, а
>>> это увеличит вероятность стать битым 😎
>> Так потому и желательно на вкомпиливать лишнее (в том числе AMD на
>> Intel и наоброт).
> А тут у тебя сдыхает материнка, а на складе лежит почти такая
> же, но по закону подлости в ней контроллер чей драйвер ты
> не вкомпилил в ядро.Например, драйвер чего? Не могу сходу придумать. Если это драйвер мультиконтроллера (который нужен для работы утилиты sensors), то ничего страшного. Если это драйвер для загрузочного устройства (nvme, ahci) - устройства, вроде бы, интегрированы в процессор и при замене материнки не изменятся. Даже если они в южном мосте, то мост такой идёт в паре с серверным или процессором, значит на другой материнке окажется такой же или совместимый. Для каких-то древних сокетов типа AM2 с чипсетом типа NVidia может, наверное, возникнуть проблема, когда "почти такая же" оказывается на чипсете AMD. Но если у нас есть "склад", значит задачу надо решать в общем виде, что бы конфиг был одинаков на всей сотне локалхостов корпорации.
>[оверквотинг удален]
> Например, драйвер чего? Не могу сходу придумать. Если это драйвер мультиконтроллера (который
> нужен для работы утилиты sensors), то ничего страшного. Если это драйвер
> для загрузочного устройства (nvme, ahci) - устройства, вроде бы, интегрированы в
> процессор и при замене материнки не изменятся. Даже если они в
> южном мосте, то мост такой идёт в паре с серверным или
> процессором, значит на другой материнке окажется такой же или совместимый. Для
> каких-то древних сокетов типа AM2 с чипсетом типа NVidia может, наверное,
> возникнуть проблема, когда "почти такая же" оказывается на чипсете AMD. Но
> если у нас есть "склад", значит задачу надо решать в общем
> виде, что бы конфиг был одинаков на всей сотне локалхостов корпорации.Эта задача уже решена разработчиками дистрибутива.
>[оверквотинг удален]
>> нужен для работы утилиты sensors), то ничего страшного. Если это драйвер
>> для загрузочного устройства (nvme, ahci) - устройства, вроде бы, интегрированы в
>> процессор и при замене материнки не изменятся. Даже если они в
>> южном мосте, то мост такой идёт в паре с серверным или
>> процессором, значит на другой материнке окажется такой же или совместимый. Для
>> каких-то древних сокетов типа AM2 с чипсетом типа NVidia может, наверное,
>> возникнуть проблема, когда "почти такая же" оказывается на чипсете AMD. Но
>> если у нас есть "склад", значит задачу надо решать в общем
>> виде, что бы конфиг был одинаков на всей сотне локалхостов корпорации.
> Эта задача уже решена разработчиками дистрибутива.Сборщики ядра в пакет решали другую задачу - уменьшить количество обращений в тех. поддержку из-за невозможности запуска их ОС.
>[оверквотинг удален]
>>> процессор и при замене материнки не изменятся. Даже если они в
>>> южном мосте, то мост такой идёт в паре с серверным или
>>> процессором, значит на другой материнке окажется такой же или совместимый. Для
>>> каких-то древних сокетов типа AM2 с чипсетом типа NVidia может, наверное,
>>> возникнуть проблема, когда "почти такая же" оказывается на чипсете AMD. Но
>>> если у нас есть "склад", значит задачу надо решать в общем
>>> виде, что бы конфиг был одинаков на всей сотне локалхостов корпорации.
>> Эта задача уже решена разработчиками дистрибутива.
> Сборщики ядра в пакет решали другую задачу - уменьшить количество обращений в
> тех. поддержку из-за невозможности запуска их ОС.А заодно решили и твою проблему - уменьшить количество обращений к самому себе.
>[оверквотинг удален]
>>>> процессором, значит на другой материнке окажется такой же или совместимый. Для
>>>> каких-то древних сокетов типа AM2 с чипсетом типа NVidia может, наверное,
>>>> возникнуть проблема, когда "почти такая же" оказывается на чипсете AMD. Но
>>>> если у нас есть "склад", значит задачу надо решать в общем
>>>> виде, что бы конфиг был одинаков на всей сотне локалхостов корпорации.
>>> Эта задача уже решена разработчиками дистрибутива.
>> Сборщики ядра в пакет решали другую задачу - уменьшить количество обращений в
>> тех. поддержку из-за невозможности запуска их ОС.
> А заодно решили и твою проблему - уменьшить количество обращений к самому
> себе.А по факту предлагаемые сборщиками ядра просто не запускались на моём оборудовании, или поддерживали его не в полной мере. Например, в Альте принимали мои правки конфга. Если бы я не знал, что надо сделать для исправления ситуации, просто не сообщал бы о проблеме и поставил Федору.
Это не про .config при сборке ядра. Это про тюнинг параметров в /proc на лету.
Это тут мечтают не только о диване.
> а бывает такая же тулза, только для подбора конфига ядра для текущего железа?Ога, человек называется.
Оракл настоящий друг опенсорса, а не те другие компании, которые уже фу называть.
> Оракл настоящий друг опенсорса, а не те другие компании, которые уже фу
> называть.вот скоро увидим чо будет с анбрякабле
Варики:
1. Перейдут на пакетную базу Debian.
2. Будут пилить свой собственный, ни на чём не основанный дистр. (У этих ресурсов для этого хватит.)
> вот скоро увидим чо будет с анбрякаблеАнбрякнется.
IBM всё хоронит. И шапку похоронит.
распространяет клиенты-приложения для обучения своего ИИ в массы.
Оракел чуть ли не самый актинвый комитер сейчас.
Короче, приблуда для гентушников, ищущих мифический прирост производительности.
Ты просто не осилил и завидуешь. Генту никогда не была про прирост производительности, чаще наоборот. И гентушники это прекрасно осознают. Зато вот конкретное ПО (любое) я могу собрать с "ручным" ПГО в генту и это действительно даёт фактический прирост производительности в ряде случаев.
Главное поставить красный фон рабочего стола, ускорение сразу станет гораздо заметней.
Отсылка к рассе орков из вымышленной вселенной Warhammer 40000 которые считали что red things go faster.
Только у них действительно будет быстрее. А вот глуповатые любители автопрома, считавшие так, появились до вахи.
После сравнения оказалось что суперпупер генту быстрее на 3% в среднем для меня. Ахаха
>>Ты просто не осилил и завидуешь.из тех кто "не читал но осуждаю".
Они ебилдов ждут, но оракел чот не спешит...
Отключения лишнего при сборке не только ускоряет, но и уменьшает число дыр.
И варнингов компилятора
Фаззинг наоборот, интересная идея. Осложняет только то, что в момент отслеживания система должна монотонно делать одно и то же и не отвлекаться.
Если нагрузить систему монотонной задачей, например написать под yandex-tank файлик.yml нагрузочного тестирования, и пусть танк погрузит весь комплекс (или одиночный сервер) минут 10, то можно получить подходящий набор настроек sysctl "под высокую нагрузку". После чего можно осмыслить эти значения, и сохранить файл sysctl.conf. Тулзу удалить)
Держать на хосте постоянно нечто меняющее параметры системы в автоматическом режиме - стремно. А то увидит хрень эта что вот уже 10 минут как в системе открыто всего пара тысяч файлов, да и прикрутит лимит, чтобы немного памяти сэкономить. А потом по крону запустится массивная задача, и падает, уперевшись в лимит.
Извечная проблема всех чего-то там автонастройщиков - непонятно чего понастроят и конфиги изуродуют. Давно понял, что все эти тулзы нужны, но только с исследовательской точки зрения.
Но это же и есть стандартное поведение сервера - монотонно делать что-то одно. ( от лат. Serve - служить )
Нагрузка может зависеть, например, от времени суток.
От времени суток это самая очевидная зависимость
В реальной же жизни может зависить и от времени суток, и от дня недели, и от месяца года, и даже от погоды или какой-нибудь сезонной инфекции
В разных кейсах у тебя будут разные зависимости нагрузки серверов и даже их просчитать и то задача не из простых
Главное, чтобы ЗП в оракл не уходила.
Хочу оптимизатор Системд,в ней тоже мало кто разбирается.
Переводи документацию, а вообще есть systemd-analyze.
100500 страниц в которых и сам Леннарт плавает,бессмысленно курить.
Лучше разобраться, чем чёрный ящик чинить чёрным ящиком. Или распутывать гирлянду другим клубком гирлянд. Такое себе извращение :)
Ну почему ? К чОрному, чОрному ящику прикрутить розовенькую ручку ...
Было бы прикольно, если в качестве target можно было бы указывать свои метрики, типа TTFB.
Можно ли этой утилитой оптимизировать ОС под медленный процессор и малое количество оперативной памяти?
Оно всё про сеть, если речь идёт сетевых задачах то - да =)
малое количество оперативной памяти - это приговор рептилоидов.
О, Zenitur в теме. Ожидаемо ;)
Можно, но лучше потратить карманные деньги на более быстрый процессор и дополнительную память.
Хорошая наверное штукаособенно хорошо что такая компания как Oracle поделилась
Хотя уже есть tuned https://access.redhat.com/documentation/en-us/red_hat_enterp...
tuned - это немножечко про другое. Плюс оно монструозное, на малые ноды вешать накладно.
Можно вообще не ставить. Он же просто профили применяет для sysctl и ещё чего-то. Можно подсмотреть профили и вручную выставить настройки.
Ну в общем да, везде снесён.
Вообще-то если нагрузка выходит за рамки настроек, то это звоночек. Вроде логично, нет?
За рамки каких настроек? Красное выходит за рамки тяжелого? Нагрузка может выйти за рамки лимитов, но это от тебя зависит какой у тебя в кластере лимит на ноды и что ты делаешь чтобы нагрузка не выходила за рамки лимитов.
Например, тебя дудосят и забили всю очередь подключений. Но ты хотя бы можешь зайти в систему и увидеть это. Но тут волшебный bpftune увидел, что очереди не хватает, увеличивает её и теперь дудос забил ещё больше реурсов в системе.Другой пример из мира userspace: корявый скрипт импорта из 1С забил всю память, сайт лежит.
Дудос надо на границе отсекать, а не тащить его через всю автономку чтобы он сервер уронил.С корявым скриптом в юзерспейсе путь OOMKiller разбирается. Не зря же ты юзеру cgroups настраивал и лимиты прописывал.
Помимо памяти много чего ещё забить можно: лимит сессий, иноды, подключения к MySQL. OOMKiller это вообще на самый крайний случай, когда течёт память, а не таблетка от всех болезней.
Типа без оптимизатора ты с ддосом такой на изи справляешься, а с ним сразу падаешь. Тебе тут никакие настройки не помогут если твой локалхост на самом деле решили по ддосить. А вот лимиты на количество запросов всех остальных в баню могут. Тут другой вопрос кому нужно ддосить твой один единственный локлахост. И если он такой ценный почему ты не защищаешь его от ддоса.
Против дудоса не у всех настроен ddog-guard, botguard, stormwall или cloudflare. Фильтровать дудос дело нетривиальное.
Ну вот.
Оракл делом занимается, пока Шляпа исходники зажимает, а халявщики кипятком писяють.
Догадайся откуда название CentOS :)
OS за центы?
Все кроме тебя знают что из Community ENTerprise Operating System.
centos давно нет
Есть. CentOS Stream называется. Роллинг там условный. Не как в Арче и подобном Г.
Лучший дистрибутив, жаль что Oracle не может заполучить все права на ядро и вышвырнуть финского неумеху за борт.
>не может заполучить все права на ядро и вышвырнуть финского неумеху за борт.Правильно, давно пора гнать Линуса и прочих дармоедов ссаными тряпками. Пусть правами владеет нормальная корпорация, а не куча халявщиков, которые ничего не делают, а всё им дай, при чем бесплатно. Ради этого и денег не жалко, тысячу или две долларов за лицензию думаю не так уж и много для качественно продукта, а у кого нет денег, тот пусть валит.
> Ради этого и денег не жалко, тысячу или две долларов за лицензию думаю не так уж и много для качественно продукта, а у кого нет денег, тот пусть валит.Пан директор, тут звонили продажники из IBM, спрашивали ваш номер.
Мой комп просто улетел после того как я поставил эту штуку. Реально работает!
Дашь знать, как прилетит обратно.
у тебя же systemd нет
> Среди доступных для использования плагиновА где же "сделать зашибись"?
нажми на кнопку, получишь результат
Так мы результатов "с" и "без" не увидели.
> bpftune-oy-vse - автоматический вызов кернел-паник в случаях, когда система автоматически зарегулировалась до состояния полного невменозаТам один модуль упустили в новости.
Хорошая система, главное своевременная. Оракл решил выступить на рынке роутеров, 10 лет замурованных в стену?
TuneUp Utilites for Linux
>Oracle опубликовал систему автоматической оптимизации параметров ядра Linux
>использующий подсистему ядра BPFНу так и надо было указать в заголовке. А то создается впечатление, что это вообще какой-то меганабор оптимизаций, не только сетевых.
BPF - это JIT в ядре Linux.JIT - это зло которое необходимо искоренять!
Что же BPF компилирует? Или ты безграмотен?
Вот чего я не понял, так зачем здесь BPF?
Объясните мне, темному, плиз.
https://www.brendangregg.com/bpf-performance-tools-book.html
> Компания Oracle представилаbpftune: bpftune is not supported
bpftune: bpftune is not supported on this system; exiting
380 звёзд... то ли дело у tinygrad только за сегодня навалили 1000. При этом непонятно, что это вообще такое. Конечно, звёзды - не единственный показатель, но эти числа определённо что-то значат и я очень хочу понять что.