BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 165 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9  След.
Автор Сообщение
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 4:29 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
fidaj писал(а):
poudriere и многое другое уходят в nice...

Нет.

Код:
% pkg info -ql poudriere-devel-3.0.99.20140926 | xargs grep -i nice | wc -l
       0


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 4:36 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
AMDmi3 писал(а):
fidaj писал(а):
poudriere и многое другое уходят в nice...

Нет.

Код:
% pkg info -ql poudriere-devel-3.0.99.20140926 | xargs grep -i nice | wc -l
       0


ну значит в один поток или еще что-то что снижает нагрузку на ядра...

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 4:46 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
Не надо либастралить, пожалуйста. В 32 потока на 8 ядрах (которых 4, на самом деле).

Где-то я слышал (про баг 12309, кажется) что такие проблемы могут быть из-за кривого железа, контроллеров и мостов, видимо с какими-то глупыми очередями так что одна I/O операция блокирует всё (вплоть до USB, из-за чего дёргается мышь). Из-за этого же баг проявляется далеко не у всех, и софтом это лечится только диким throttling'ом, при котором производительность bulk I/O значительно падает, зато ничего не затывается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 4:48 pm 
Не в сети

Зарегистрирован: Чт 14 май, 2009 6:56 pm
Сообщения: 732
Видео в HTML5 тормозит у меня и без дополнительной нагрузки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 4:53 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
Кстати да, но только в начале ролика. Я это и на винде недавно наблюдал, не знаю правда что там за браузер был.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 5:48 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
AMDmi3 писал(а):
Не надо либастралить, пожалуйста. В 32 потока на 8 ядрах (которых 4, на самом деле).

arrowdodger писал(а):
Видео в HTML5 тормозит у меня и без дополнительной нагрузки.

AMDmi3 писал(а):
Кстати да, но только в начале ролика. Я это и на винде недавно наблюдал, не знаю правда что там за браузер был.

ну кто таки решиться не либастралить, повторит в точности предложенное тут viewtopic.php?p=165183#p165183 для чистоты эксперимента и продемонстрирует результат на 2-х планировщиках - на своем текущем железе ;)?

AMDmi3 писал(а):
Где-то я слышал (про баг 12309, кажется) что такие проблемы могут быть из-за кривого железа, контроллеров и мостов, видимо с какими-то глупыми очередями так что одна I/O операция блокирует всё (вплоть до USB, из-за чего дёргается мышь). Из-за этого же баг проявляется далеко не у всех, и софтом это лечится только диким throttling'ом, при котором производительность bulk I/O значительно падает, зато ничего не затывается.

мною проверено на 3-х разных железках (с разными процессорами чипсетами и материнками) на практике - ULE тормозит везде (в терминах интерактивности) и речь абсолютно не об I/O операциях - на них ULE сливает еще больше на всех 3-х железках.
напоминаю еще раз - мы говорим сугубо об интерактивности а не об аппаратных проблемах...

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Чт 16 окт, 2014 11:39 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
Ну вот, если угодно: http://amdmi3.ru/files/scheduler.avi (снято с 60FPS для наглядности). Две сборки gcc в ncpu потоков каждая, 2 minerd'а, ваш ютуб ролик. Никаких nice/rtprio/idprio. ULE. Ничего не дёргается (хотя в теории это впритык, просто потому что firefox жрет ~4% CPU при проигрывании этого видео; если выполняемых потоков будет больше 100%/~4%, как ни крути, доля ff будет меньше нужных ему ~4%, он будет голодать и терять кадры. mplayer и всякая интерактивщина же, как правило, ничего не жрёт, так что с ней проблем не будет и при гораздо большем числе потоков).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 17 окт, 2014 12:22 am 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
да... для такого количества ядер на борту - думаю планировщик вообще не критичен...
через меня пока что 2 ноута прошло - оба на интеле (текущий Core i5 2410m) - и на обоих проблемы с подвисаниями при критичных нагрузках. видимо в мобильных процессорах что-то другое из внутренностей нежели в настольных... но в случае сабжа - эти подвисания менее сказываются
при ULE - видео воспроизводится мелкими рывками, если это будет заметно при 30fps, на FBFS -идет более плавно с редкими заметными подвисаниями.
при этом на ULE случаются моменты когда курсор мыши вообще фризится - на FBFS - такого не замечал...
sched FBFS
sched ULE

P.S. придется заменить звук - а то тыртуб возмущается по авторским правам :( главное что оригинальный звук ни там ни там не прерывается.

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 17 окт, 2014 1:25 am 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
Так на ноутах говноконтроллеры как раз и имеют наибольшую вероятность присутствовать. Что до ядер - так в i5 их всего в 2 раза меньше, а при том что нагрузка - что сборка, что miner, пропорциональна к-ву ядер, разницы нет. При этом можно и больше - пока я это пишу, mplayer играет Аватара в 1080p, в фоне 4 сборки по 8 потоков + 32 miner'а (т.е. ещё 256 потоков), LA 140 и растёт, и это никак не ощущается. А на работе тоже какой-то i5 (десктоп), и тоже сборки во много потоков на фоне процессов потребляющих чистый CPU, и тоже никаких неудобств (пока память не кончится).

Я думаю в вашем случае подвисания мыши показательны. Вы же знаете как работает шедулер - чем больше процесс спит, тем выше у него приоритет. Учитывая что Xorg'у чтобы пошевелить курсором нужны жалкие единицы тактов, он просто никак не может голодать по CPU. Дискового I/O он также не потребляет и ждать на нём не может. Остаётся не-дисковое I/O, например USB. Почему оно может тормозить столько времени что это заметно? Вероятно ждёт другого I/O, например диска (в голову не приходит других процессов, продолжающихся десятки-сотни миллисекунд; шедулинг всяко работает быстрее). А это уже либо железо, либо ядерные проблемы уровня драйверов PCI контроллера.

FBFS же тут если чем-то и помогает, то скорее всего неэффективностью в плане невозможности нагрузить и тем заткнуть это самое I/O. Оно может и выход в какой-то степени, но всё равно забивание гвоздей микроскопом и не повод для рекламы BFS как шедулера. Нужно разбираться что именно и в каком порядке летает по шине (наверное, копать в сторону dtrace для начала) и возможно изобретать какие-то механизмы троттлинга. Так, думается, можно прямым способом и более эффективно устранить эти проблемы с интерактивностью.

PS. -j для make в портах ни на что не влияет, влияет только переменная MAKE_JOBS_NUMBER, которая по умолчанию как раз равна hw.ncpu


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 17 окт, 2014 8:25 am 
Не в сети

Зарегистрирован: Чт 14 май, 2009 6:56 pm
Сообщения: 732
Черт, мне бы так в ядре и шедулерах шарить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 17 окт, 2014 4:30 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
Ну тут предположений не меньше чем знаний.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 3:10 pm 
Не в сети

Зарегистрирован: Чт 14 май, 2009 6:56 pm
Сообщения: 732
Давно хотел рассказать историю, да все забывал.

Сел я на Windows Server 2012 R2 компилировать KDevelop. А это значит весь Qt, добрую часть KDE Frameworks, все дела. На компе у меня Core i7-3770, 4х2 ядер, 16 гигов оперативки.

В процессе компиляции получил настолько сильные тормоза, что даже mp3 вконтакте (на флеше) играло с сильными запинками. Естественно, все остальные симптомы также присутствовали - залипающий курсор, задержка ввода с клавиатуры и т.д.

Я, признаться, совершенно не ожидал такого поворота, т.к. и железо нормальное, и шедулер (как я думал) эталонный. Быть может, здесь тоже проявились косяки, о которых говорил AMDmi3, однако я лишний раз убедился что ULE весьма и весьма неплох. На гораздо худшем железе (ноуте) при компиляции того же Qt он умудряется обеспечивать гораздо большую интерактивность, чем я видел на винде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 3:31 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
arrowdodger писал(а):
Давно хотел рассказать историю, да все забывал.

Сел я на Windows Server 2012 R2 компилировать KDevelop. А это значит весь Qt, добрую часть KDE Frameworks, все дела. На компе у меня Core i7-3770, 4х2 ядер, 16 гигов оперативки.

В процессе компиляции получил настолько сильные тормоза, что даже mp3 вконтакте (на флеше) играло с сильными запинками. Естественно, все остальные симптомы также присутствовали - залипающий курсор, задержка ввода с клавиатуры и т.д.

Я, признаться, совершенно не ожидал такого поворота, т.к. и железо нормальное, и шедулер (как я думал) эталонный. Быть может, здесь тоже проявились косяки, о которых говорил AMDmi3, однако я лишний раз убедился что ULE весьма и весьма неплох. На гораздо худшем железе (ноуте) при компиляции того же Qt он умудряется обеспечивать гораздо большую интерактивность, чем я видел на винде.

+1
Помимо винды, просто ради эксперимента я точно так же пробовал откомпилировать gcc под хакинтошем из MacPorts и под HAIKU.
Версии gcc естественно разные, но проводилось это всё на одном и том же железе.
И я был разочарован тоже в пресловутых и хваленых интерактивностях и Mac OS X, и HAIKU, как наследницы BeOS.
Хотя по тем же данным из желтой прессы под Mac OS X используется портированный ULE планировщик. Казалось бы...
А в HAIKU непонятно откуда планировщик, но точно не из BeOS (просто повторяющий по описаниям сохранившихся документаций к BeOS).

На FreeBSD - всё значительно лучше.

P.S. Кстати в Ubuntu тоже когда-то попытался собрать что-то из исходников, что потянуло за собой сборку gcc - тоже ощущения были не на высшем уровне. Но с того момента прошло уже достаточно времени - что-то могло измениться.

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 3:34 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
и насколько помнит мой склероз - я закрывал эту тему :)

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 3:37 pm 
Не в сети

Зарегистрирован: Чт 14 май, 2009 6:56 pm
Сообщения: 732
fidaj писал(а):
и насколько помнит мой склероз - я закрывал эту тему :)

Я попросил ее открыть специально чтобы оставить этот комментарий. Ну, не прям этот, а про виндовый шедулер.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 7:52 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
К слову, безотносительно планировщиков, я бы не отказался от более гибкого управления приоритетами. Как минимум, nice не ограниченный 20, а лучше непривилегированный idprio.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 8:19 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
AMDmi3 писал(а):
К слову, безотносительно планировщиков, я бы не отказался от более гибкого управления приоритетами. Как минимум,

AMDmi3 писал(а):
nice не ограниченный 20

а в чем проявляется нехватка диапазона -20 20?
AMDmi3 писал(а):
, а лучше непривилегированный idprio.

всмысле?

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 9:28 pm 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
fidaj писал(а):
а в чем проявляется нехватка диапазона -20 20?
0..20, потому что в минус - привилегированная операция. Нехватка, очевидно, в невозможности установить сколь угодно малый приоритет. Процесс с nice=0 против процесса с nice=20 получит ~80% времени, против 8 процессов с nice=20 уже ~30%. Я хочу такой nice чтобы процесс с nice=0 получал > 95% в обоих случаях.

fidaj писал(а):
всмысле?
idprio может выполнять только root. (fix: оказывается, уже есть sysctl чтобы разрешить его простому пользователю, но возможность дедлоков никуда не исчезает)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Пт 12 фев, 2016 9:55 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3072
Откуда: Ukraine
AMDmi3 писал(а):
fidaj писал(а):
а в чем проявляется нехватка диапазона -20 20?
0..20, потому что в минус - привилегированная операция. Нехватка, очевидно, в невозможности установить сколь угодно малый приоритет. Процесс с nice=0 против процесса с nice=20 получит ~80% времени, против 8 процессов с nice=20 уже ~30%. Я хочу такой nice чтобы процесс с nice=0 получал > 95% в обоих случаях.


Видимо для начала нужно загнать kern.sched.interact в ноль, что бы получить абсолютно справедливое планирование от ULE наподобие поведения CFS в Linux.

AMDmi3 писал(а):
fidaj писал(а):
всмысле?
idprio может выполнять только root. (fix: оказывается, уже есть sysctl чтобы разрешить его простому пользователю, но возможность дедлоков никуда не исчезает)


Странно - дедлоки это обязательный фактор во всех ОС для таких же начальных условий?

я использовал иногда вот такой велосипед от root по крону:
Код:
#!/bin/sh

#*/3 * * * * /usr/bin/lockf -s -t0 /tmp/rtprio_set /root/scripts/rtprio_set.sh > /dev/null 2>&1

#LIST="Xorg moused"
LIST="Xorg"
for prog in $LIST; do
/usr/sbin/rtprio 7 "-"`pgrep -a ^$prog$`
PIDs=`pgrep -a ^$prog$`
for pid in $PIDs; do
CNICE=`ps -oni -p $pid|awk 'FNR>1'`
#GID=`ps -opgid $pid|awk 'FNR>1'`
if [ "$CNICE" != "-7"  ]; then
###/usr/bin/renice -17 -g $GID
/usr/bin/renice -15 $pid
fi
/bin/sleep 1
done
done


#LIST="compton compiz"
LIST="compton xfwm4 xfdesktop"
for prog in $LIST; do
/usr/sbin/rtprio 14 "-"`pgrep -a ^$prog$`
PIDs=`pgrep -a ^$prog$`
for pid in $PIDs; do
CNICE=`ps -oni -p $pid|awk 'FNR>1'`
#GID=`ps -opgid $pid|awk 'FNR>1'`
if [ "$CNICE" != "-3"  ]; then
###/usr/bin/renice -3 -g $GID
/usr/bin/renice -3 $pid
fi
/bin/sleep 1
done
done


#LIST="gtk-window-decorator emerald"
#?#LIST="emeralg"
#?#for prog in $LIST; do
###/usr/sbin/rtprio 28 "-"`pgrep -a ^$prog$`
#?#PIDs=`pgrep -a ^$prog$`
#?#for pid in $PIDs; do
#?#CNICE=`ps -oni -p $pid|awk 'FNR>1'`
#GID=`ps -opgid $pid|awk 'FNR>1'`
#?#if [ "$CNICE" != "-2"  ]; then
###/usr/bin/renice -2 -g $GID
#?#/usr/bin/renice -2 $pid
#?#fi
#?#/bin/sleep 1
#?#done
#?#done


#LIST="firefox"
#?#LIST="firefox"
#?#for prog in $LIST; do
#?#/usr/sbin/rtprio 31 "-"`pgrep -a ^$prog$`
#?#PIDs=`pgrep -a ^$prog$`
#?#for pid in $PIDs; do
#?#CNICE=`ps -oni -p $pid|awk 'FNR>1'`
#GID=`ps -opgid $pid|awk 'FNR>1'`
#?#if [ "$CNICE" != "-1"  ]; then
###/usr/bin/renice -1 -g $GID
#?#/usr/bin/renice -1 $pid
#?#fi
#?#/bin/sleep 1
#?#done
#?#done



там можно доделать для управления просессами по группам, вынести подобные куски кода в функции..., так и индивидуальные процессы по иммени программы...

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 4.10.2-zen-fidaj-muqss-ck+ #4 ZEN SMP PREEMPT Sun Mar 12 19:48:08 EET 2017 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Использование FBFS ( FreeBSD BFS ) scheduler
СообщениеДобавлено: Сб 13 фев, 2016 1:03 am 
Не в сети
Модератор

Зарегистрирован: Сб 11 сен, 2004 6:33 am
Сообщения: 5093
Откуда: Москва
fidaj писал(а):
Видимо для начала нужно загнать kern.sched.interact в ноль, что бы получить абсолютно справедливое планирование от ULE наподобие поведения CFS в Linux.

Не при чём здесь совершенно.

fidaj писал(а):
Странно - дедлоки это обязательный фактор во всех ОС для таких же начальных условий?

Дедлоки, насколько я помню, спутник любого невытесняющего шедулинга, и решают их внешними арбитрами. Во FreeBSD какой-то deadlock resolved есть, но я не знаю про это он или нет.

fidaj писал(а):
я использовал иногда вот такой велосипед от root по крону:

Смотреть на это больно. rtprio, вообще говоря, не только не гарантирует улучшения интерактивности (man rtprio, последний абзац), но и может её ухудшить, как по причине описанно в мане, так по той что когда вашему xfdesktop, например, захочется перерисовать иконки, видеоплеер, например, вообще не будет выполняться.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 165 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика