LINUX.ORG.RU

Повышением производительности Linux

 ,


1

1

Здравствуйте, есть вопрос по поводу оптимизации ОС Linux. Цель оптимизации - повышение производительности ОС Linux. Дистрибутив Ubuntu. Повышать производительность планирую методом математического эксперимента. Опишу вам план вкратце: 1)Определение параметров планировщика задач, которые могут влиять на производительность системы. Например: время кванта, управление памятью, использование многопроцессорной обработки, управление IO.

2)Определение возможных значений для каждого параметра. Создание плана экспериментов, в котором для каждого параметра будет испытано каждое значение. Например, если мы определили 4 параметра и для каждого из них 3 возможных значения, то у нас будет 81 (3 в степени 4) различных комбинаций параметров.

3)Проведение экспериментов для каждой комбинации параметров. Мы можем использовать специальные скрипты для тестирования производительности, например, для замера времени выполнения задач и общей загрузки системы.

4)Запись результатов каждого эксперимента в таблицу. Построение математической модели производительности системы с использованием методов машинного обучения, например, линейной регрессии или деревьев решений. Мы можем использовать результаты экспериментов для обучения модели. 5)Определение оптимальных значений для каждого параметра, которые максимизируют производительность системы, используя математическую модель.

6)Применение оптимальных значений к планировщику задач в Ubuntu для повышения производительности системы.

7)Повторение процесса оптимизации при необходимости, например, при обновлении системы или изменении аппаратного обеспечения.

Кто-нибудь возможно пользовался данным методом для повышения производительности. Подскажите в чем могут возникнуть трудности. Может кто даст рекомендации и наведет на правильный путь



Последнее исправление: akm00 (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

Вы имеете ввиду, арендовать сервер с каким-нибудь железом и там провести оптимизацию методом планирования математического эксперимента? Если да то какие эксперименты и с чем посоветуете провести, чтобы в результате получить повышение производительности PS: спрашиваю все это так как планирую написать диплом на данную тему

akm00
() автор топика
Ответ на: комментарий от akm00

Тогда беру свои слова немного назад, для диплома даже разница в синтетических тестах пойдёт. Можно заранее подсмотреть результаты и выводы у форониксов и подогнать под это дело теоретическую часть.

vvn_black ★★★★★
()
Ответ на: комментарий от akm00

Ubuntu медленнее Gentoo потому, что универсальнее. Там предустановленное ПО, что занимает часть ресурсов и не всегда нужно, но его держат про запас, там пакеты собраны под всё железо, а не под конкретное, потому ПО не использует все возможности железа.

А Gentoo в описанном мной варианте — это когда пакеты и ядро собраны под ровно то железо, что есть, планировщик и прочее тобой описанное тоже, и в самой ОС нет ничего лишнего, кроме того, что нужно для задачи.

Не обязательно Gentoo брать, можно хоть и LFS, просто тогда это будет ещё сложнее. Хотя в Embedded, где мало ресурсов и ОС выполняет очень ограниченные задачи именно так и поступают.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от akm00

Может тогда выбрать какую-нибудь задачу в самой ОС? Можете порекомендовать?

Был как-то японец. Натягивал онтопик на плоскую модель без переключения контекста. Смысл - нода кластера. Перформанс был - мама не горюй. Но если падало - то всё. Что при определенном размере кластера значения не имело.

Хорошая тема.

kindof
()
Ответ на: комментарий от akm00

У тебя же не реальная задача, а синтетика. Можешь на Avito купить древний ПК за пару тысяч и заводить на нём десктоп или просто поднять LAMP.

Вот тут скриншоты человека, что для себя сделал этот подвиг:

mush performance

much performance II

Селерон на 900 мегагерц и 256 метров памяти. Вот пример оптимизации — современная Ubuntu на таком даже не стартует, а 32-битный Debian разве что без GUI будет работать.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от chenbr0

Ну я следовал из того чтопланировщик задач влияет на производительность ОС, так как он отвечает за распределение вычислительных ресурсов (CPU, память, дисковый ввод/вывод) между запущенными процессами.

akm00
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid

Если я куплю достаточно слабый ПК. С тем железом на котором линукс стартовать не будет. Есть варианты как к оптимизации подвязать метод математического планирования эксперимента?

akm00
() автор топика
Ответ на: комментарий от akm00

Cron — это планировщик задач, работающий в Unix-подобных операционных системах, включая все дистрибутивы Linux. Демон cron работает на сервере в фоновом режиме и запускает по расписанию запланированные задачи.

Ты про этот планировщик?

chenbr0
()
Ответ на: комментарий от akm00

Я красноглазик, а специалист по изображению научной деятельности. Я тебе описал, где в реальном мире применяют оптимизацию и как.

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

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от akm00

Эм… это тут при чем? То есть cron это планировщик, но не тот планировщик, о котором говорят при оптимизации. Речь идет о process scheduler в ядре Linux, да, они бывают разными: CFS, BFS, NOOP scheduler, BFQ…

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)

повышение производительности ОС Linux

Для начала нужно определить, что есть производительность (bandwidth vs latency, например).
Потом нужно определиться с софтом и бенчмарками.
И только потом уже все пункты выше.

devl547 ★★★★★
()
Ответ на: комментарий от akm00

А нафига ты тогда пишешь диплом по теме, в которой не в зуб ногой? Есть же куча тем именно из области вычислительной математики — та же банальная оптимизация рассчетов, это больше именно про программирование, а ты тему взял из области сисадминства.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от akm00

Знаком с методом планирования математического эксперимента, вот решил у знающих людей попросить советов и помощи в применении данного метода для оптимизации линукса.

akm00
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid

Преподаватель предложил использовать данный метод для анализа и оптимизации ПО. Желательно сказали чтобы было практическое применение. Возможно я и правда лезу туда куда бы мне и не следовало, не спорю.

akm00
() автор топика
Ответ на: комментарий от akm00

Насколько я его понял, речь шла про задачу вида «У нас есть программа на C, что рассчитывает плазму в токамаке, и нужно оптимизтировать скорость рассчетов».

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от akm00

Нет, не мой уровень. Если бы я занимался оптимизаций ОС для высоконагруженных серверов, я бы не сидел на таком форуме. И работал бы за весьма большие деньги.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Как вариант я лишь предложил оптимизировать скорость. Как вариант можно оптимизировать еще использование памяти, надежность, безопасность. Просто скорость как по мне более легче чем остальные параметры.

akm00
() автор топика

Перед тестами надо чисто из мануалов на железо высчитать пиковую производительность, а то фигак и окажется что результаты тестов выше физических возможностей железа, я такое видал на оверклокерс.ру ох там ржали все,ссылку не найду запомнилось чисто на эмоциях :D

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

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

akm00
() автор топика
Ответ на: комментарий от LINUX-ORG-RU

А если код с UB компилить на современном компиляторе, то можно получить результаты даже выше теоретического физического предела для нашей Вселенной.

wandrien ★★
()
Ответ на: комментарий от akm00

оптимизировать скорость. Как вариант можно оптимизировать еще использование памяти, надежность, безопасность

Попугаев или слонов? Что и чем ты измерять собрался?

Перенастройка ОС под задачу на 100% зависит от задачи. Что ускоряет одно, может замедлять иное. То же и про остальные параметры.

Vsevolod-linuxoid ★★★★★
()