LINUX.ORG.RU

Linux 2.6: CONFIG_PREEMPT - «y» или «n»?


0

0

При использовании CONFIG_PREEMPT="y" в ядре 2.6.4 было обнаружено падение производительности.
Andrea Arcangeli (разработчик VM подсистемы ядра ветки 2.4) рекомендует не использовать PREEMPT, в то время как ответственный за ветку 2.6 Andrew Morton говорит что preemption сам по себе тут не при чем, т.к. оно всего лишь указывает на появление других ошибок в коде ядра.

>>> Обсуждение проблемы

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

> на появление других ошибок в коде ядра.

На тех, которые только еще появятся?

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

anonymous ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Ошибки шедулера - они не вызовут kernel panic, просто будут влиять на производительность. что и наблюдается..

anonymous ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Блин, ну неужели и kernel hackers путают производительность и время отклика!

Все ж правильно. Улучшается (становится меньше) время отклика. Но никто ж не сказал, что производительность при этом останется прежней.

Dselect ★★★ ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от Dselect

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Ну дык и коню ясно: меньшее время отклика - ниже пропускная способность. Принцип Гейзенберга! и никуда не дется.

anonymous ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

есть предложение: CONFIG_PREEMPT - "m"

anonymous ()
Ответ на: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

да ну её производительность, я лично когда первый раз поставил priemtible, у меня глаза на лоб полезли. Такого изиенения времени отклика я не видел даже когда поменял Duron 1100 на Athlon XP 2400+ десктоп просто летает, а лично _мне_ другого и не нужно. IMNSHO, больше-бы таких "багов" было.

sga ()
Ответ на: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

каждому свое.

> десктоп просто летает, а лично _мне_ другого и не нужно

Как и было задумано... А пЫонеры, собирающие для сервера ядро с CONFIG_PREEMPT=y, идут лесом.

Dselect ★★★ ()
Ответ на: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

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

Zulu ★★☆☆ ()
Ответ на: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от Zulu

Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>Это потому, что он у тебя не загружен

есть такое дело, не спорю компилировал вчера одновременно 2 ядра (2.4.22 и 2.4.24) и кодировал видео. Все это одновременно, под KDE 3.1, и с 256 Mb озу

И это никак не мешало мне смотреть при этом лицензионный mpeg4

sga ()
Ответ на: каждому свое. от Dselect

Re: каждому свое.

CONFIG_PREEMPT очень помогает на игровых серверах.

chucha ★★★☆ ()
Ответ на: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

> И это никак не мешало мне смотреть при этом лицензионный mpeg4

А как изменилось время компиляции и кодирования?

anonymous ()
Ответ на: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

есть предложение: CONFIG_PREEMPT - "m"
это невозможно - вчитайся в entry.S, весь граф
sysenter'a меняется ! Или ты так, провокатор?

anonymous ()
Ответ на: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>И это никак не мешало мне смотреть при этом лицензионный mpeg4 Да, а что это такое - "лицензионный mpeg4"? Или ты про DVD? Так они жрут меньше проца, только на шину нагрузка валится.

anonymous ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Почему-то quake3 у меня работает медленнее на preempt

И замечено это давно.

jackill ★★★★★ ()
Ответ на: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

вообще самые гамерские ядра это 2.2/2.4 с патчами для
увеличения скорости отклика на интеррапты и оттюненными параметрами
include/asm/param.h, рекомендуемое значение HZ=CPU_FREQ/2+100.
UT2003 с дровами нвидиа на 2-10 фпса дают больше чем в винде 2000,
но наверное меньше чем в 98.

anonymous ()
Ответ на: Re: каждому свое. от chucha

CONFIG_PREEMPT и игровой сервер

> CONFIG_PREEMPT очень помогает на игровых серверах.

Вряд ли; может быть, что даже наооборот -- мешает.

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

Dselect ★★★ ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от jackill

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

> Почему-то quake3 у меня работает медленнее на preempt

Дык для него именно производительность существенна.

Dselect ★★★ ()
Ответ на: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>А как изменилось время компиляции и кодирования?

вот этого извиняй, не могу сказать, раньше никогда жизнь не заставляла такими вешчами заниматься хотя подозреваю, (точнее уверен) что будь ядро без priemptible компиляция прошла бы быстрее Но я же говорю, я в это время не медитировал перед монитором повторяя мантры типа "Компилься ты быстрее, зараза!", я фильм смотрел...

sga ()
Ответ на: CONFIG_PREEMPT и игровой сервер от Dselect

Re: CONFIG_PREEMPT и игровой сервер

дяди, хелп. 1)если процесс забирает 99 процентов это гуд или шлехт ? 2)если с тем же процессом параллельно бежит ещё несколько, не теряя производительности это гуд или шлехт ? 3)значит процесс есть гуд, но тогда вопрос: а как сделать так, чтоб система не давала 99% спу тайма на один процесс ?

anonymous ()
Ответ на: каждому свое. от Dselect

Re: каждому свое.

>Как и было задумано... А пЫонеры, собирающие для сервера ядро с CONFIG_PREEMPT=y, идут лесом.

Дык "сервер" это понятие ну о-о-о-очень широкое ...

Как ты думаешь, что требуется от UT dedicated server-а ? ;)

sS ★★★★★ ()
Ответ на: Re: каждому свое. от sS

Re: Re: каждому свое.

Как ты думаешь, что требуется от UT dedicated server-а ? ;)

Примерно то же, что и от числодробилки. :)

Dselect ★★★ ()
Ответ на: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>есть предложение: CONFIG_PREEMPT - "m"

;))))))))))))))))))))))))))))))))))))))))))

То есть вместо preempt_disable() поставить заглушку и дергать ее в любом случае ?

Это только не считая специфичного для CONFIG_PREEMPT кода для кучи драйверов - который тоже придется подлючать через заглушки.

sS ★★★★★ ()
Ответ на: CONFIG_PREEMPT и игровой сервер от Dselect

Re: CONFIG_PREEMPT и игровой сервер

1. У меня запущено несколько процессов на разных портах (counter-strike).

2. fps на сервере увеличивается и в случае одного процесса. Вообще эта тема для counter-strike серверов уже давно обсосана. К примеру под виндой для увеличения fps параллельно с сервером нужно запускать media player (винда при этом как раз и увеличивает отзывивость ;)

chucha ★★★☆ ()
Ответ на: Re: Re: каждому свое. от Dselect

Re: Re: Re: каждому свое.

>Примерно то же, что и от числодробилки. :)

Этим как раз занимаеются клиенты (рендеринг жрет на порядок больше резурсов чем обсчет физики) а вот задача для UTDS - обеспечивать минимальный лаг.

sS ★★★★★ ()
Ответ на: Re: CONFIG_PREEMPT и игровой сервер от anonymous

Re: Re: CONFIG_PREEMPT и игровой сервер

>дяди, хелп. 1)если процесс забирает 99 процентов это гуд или >шлехт ? 2)если с тем же процессом параллельно бежит ещё несколько, >не теряя производительности это гуд или шлехт ? 3)значит процесс >есть гуд, но тогда вопрос: а как сделать так, чтоб система не >давала 99% спу тайма на один процесс ?

1) если этот процее vi, то труба, а если копиляция ядра - нормуль 2) ето рулезь 3) а на кой? если как я понял он ничему не мешает, то пусть дает, проц должен работать!

sga ()
Ответ на: Re: CONFIG_PREEMPT и игровой сервер от anonymous

Re: Re: CONFIG_PREEMPT и игровой сервер

> 1)если процесс забирает 99 процентов это гуд или шлехт ?

Дык это к Вам вопрос...

> 3)значит процесс есть гуд, но тогда вопрос: а как сделать так, чтоб система не давала 99% спу тайма на один процесс ?

Почти никак... Если охота рискнуть, можете попробовать batch scheduling patch от ck. НО: 1) он есть только для 2.6, 2) в зависимости от фазы Луны могут быть Oops'-ы.

http://ck.kolivas.org/patches/2.6/2.6.4/

Dselect ★★★ ()
Ответ на: Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>вообще самые гамерские ядра это 2.2/2.4 с патчами для увеличения скорости отклика на интеррапты и оттюненными параметрами include/asm/param.h, рекомендуемое значение HZ=CPU_FREQ/2+100. UT2003 с дровами нвидиа на 2-10 фпса дают больше чем в винде 2000, но наверное меньше чем в 98.

насчет 2003 не в курсе а вот на простом UT на совсем нетолстой мвашине (Cel300/768Mb+Voodo2/800x600x16) 2.2.25 рвет W98 как бобик грелку А вот 2.4.24-ck1 уже примерно вровень с W98 (причем линух таскает еще на себе openmcu+ohphone)

sS ★★★★★ ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

блин да вы хоть читади обсуждение ? и что Andrew Morton сказал ?
Или все тут и так лучще все знают ?
У парня который ныл какие то проблемы с его машиной или у драйверов
проблемы с preempt .
Сто раз проверяли preempt vs no-preemt, и впервом случае io-performance,
kernel compile даже лучше при лучшей latency.
Так что нечего поднимать шум , проверьте сами на своих pc.

Uman

anonymous ()
Ответ на: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

> И это никак не мешало мне смотреть при этом лицензионный mpeg4

И не могло помешать даже в теории... Ибо лицензионных mpeg4 не
существует в природе ;)

anonymous ()
Ответ на: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от Dselect

Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

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

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

А тут что-то никак.

jackill ★★★★★ ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Возможно. Тогда вопрос - почему появляются лаги при переключении из одного приложения в другое?

jackill ★★★★★ ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

И как проверить? как и что у меня работает... и вообще кто посоветует тесты для линуха... кто и что и как тестирует?

anonymous ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Было бы хорошо знать, когда всё это исправят...

anonymous ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

насчет 2003 не в курсе а вот на простом UT на совсем нетолстой мвашине (Cel300/768Mb+Voodo2/800x600x16) 2.2.25 рвет W98 как бобик грелку А вот 2.4.24-ck1 уже примерно вровень с W98 (причем линух таскает еще на себе openmcu+ohphone)

Хорошо что не gnugk :)

GHhost

anonymous ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

что исправять?
читайте новости в оригинале и думайте .
Нечего собственно исправлять .
Uman.
p.s. один запостил все вдруг запаниковали...

anonymous ()
Ответ на: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

Uman - проблема действительно существует. Такого быть не должно. Т.е. preempt не выполняет обещенного, а только повышает задержки, и тормозит систему в целом, хотя для конечного юзверя результат должен быть не таким.
Я конечно не спорю, что и не стоит паниковать, т.к. те кто не пользует preempt в ядре, для того этой проблемы и нету.

А вообще хз сколько они это фиксить будут.

М.

FreeBSD ★★★ ()

Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

2GHhost

>> (причем линух таскает еще на себе openmcu+ohphone)

>Хорошо что не gnugk :)

Ну в локалке gk не нужен нафиг а mcu исключительно для объмена ненормативной лексикой в real time ;)

sS ★★★★★ ()
Ответ на: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от sga

Re: Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>да ну её производительность, я лично когда первый раз поставил priemtible, у меня глаза на лоб полезли.

При этом правда другие процессы (например gs) работают раза в два медленнее.

pandrey ★★ ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

мой ответ - У!

ananymous ()
Ответ на: CONFIG_PREEMPT и игровой сервер от Dselect

Re: CONFIG_PREEMPT и игровой сервер

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

Хм... Это вряд ли. Хотя, конечно, есть убожества типа sphere (эмулятор УО), но один процесс - это отсутствие масштабируемости. Кроме того, игровой сервер, как правило - система реального времени...

CybOrc ()

Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

они уже достали козлы, когда они уже начнут тестировать свои ядра???
или даёшь каждый день по новому ядру?
уж лучше меньша, намного меньше, но чтоб работало, а то сделают и релизят, не попробывав наверно даже загрузиться

anonymous ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

>они уже достали козлы, когда они уже начнут тестировать свои ядра???
>или даёшь каждый день по новому ядру?
>уж лучше меньша, намного меньше, но чтоб работало, а то сделают и
>релизят, не попробывав наверно даже загрузиться

не нравится - не ешь!! :)

что тебе мешает пользовать ветки 2.0., 2.2. и 2.4. ?? они тоже развиваются..

Spherix ()
Ответ на: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от anonymous

Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

> они уже достали козлы
> anonymous (*) (26.03.2004 9:22:22)
Ты сам козел анонимный; типичный придурок, который ни хрена ни в чем не разбирается и вые..ется.

szh ★★★★ ()
Ответ на: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"? от szh

Re: Re: Re: Linux 2.6: CONFIG_PREEMPT - "y" или "n"?

szh, я смотрю ты сильно разбираешся... а ничё что как только ядро зарелизят, сразу начинают находить кучу дыр и глюков? вот нет бы сначала с полгодика погоняли как pre и rc, а потом релизили, чтоб была хоть какая-то уверенность...

ПС: козлами начинают называть, когда больше ничё по теме сказать не могут :)

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.