Загрузка процессора

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#1
Седня наконец-то раздуплился с админ-клиентом в лотусе.
Привык к тому, что когда нажимаю на таски на закладке Server\Server Tasks всегда светилось 0% это в 6.5 админе
я уж думал, что ни работает это и всё, смирился
и тут вдруг открыл тоже самое в 8.5 админе и прозрел, там процентность указана с сотой долей процента 0.38%
тут то меня и осенило, что 6-й клиент округляет до целой части а 8-й показывает с дробями
а учитывая что у меня 8 ядер и любой таск при нагрузке сразу делится на 8(количество ядер) - чего лично я не понимаю вообще, ну есть у меня 8 ядер ну показавай нагрузку до 800% а не до 100%, не те, всё уменьшают до 100% тем самым теряется ясность всей статистики
эти 0.38% на одно ядерном показало бы 0.38%*8 = 3.04% - чувствуете разницу?

так что если вдруг у вас везде нули, подумайте а сколько у вас там ядер :welcome:
 
K

Klido

#3
сколько серверов ни наблюдал - не увидел зависимости :) на линухе так вообще не показывало до 7-ки загрузку...
единственно полезная вещь смотреть её - только чтоб понять, что какие-то задачи ну очень напряжены :)
а реально смотреть надо в системной консоли
 
O

Odyssey

#4
ToxaRat а что у тебя за OS на сервере? у меня под Соляркой что 6.5.6 что 8.5.1 ничего толком не показывает (в любых комбинациях сервера и клиента), иногда только индексёр/компакт/фиксап что-нибудь нарисуют, причем к реальной загрузке процессора отношение не имеющее :)
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#6
вот глядите
cpu1.jpg - это админ 8.5.1 на вин2003 (64бит) видете сотые доли?
в 6-м админе я буду видеть исключительно нули

а вот теперь глядите на таскменеджер
cpu2.jpg - даже если я вдруг положу полностью одно ядро суммарно нагрузка будет не больше 100/8=12.5% - что доказывает когдя я последнее ядро на половину приложил(50% ядра выливаются в общую 6%)

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

Вложения

A

allex

#8
У меня вот например двух процессорный xeon, а сервер (Domino 7) работает на первом процессоре
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#9
ну чем больше ядер - тем меньше реальная нагрузка... разве не так?
не так
Если агент зашивает ядро на 100% то разве реальная нагрузка стала меньше и разве агент завершится раньше?

теперь появилась трудность в том, что если индексер показывает нагрузку в 12% то это ахтунг, так как он зашивается по полной, а без него система будет тупо стоять и никакие ядра ей уже не помогут вообще, так как база в прострации...
 
K

Klido

#10
дык одно ядро на 100%, а не все 8 ядер на 100%... как по мне - всё нормально...
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#11
Klido
дык одно ядро на 100%, а не все 8 ядер на 100%... как по мне - всё нормально...
если одно ядро компактит базу, то все другие ядра с этой базой ничего не сделают, согласны?
а значит показать мне загрузку в виде 12% не информативно
 
K

Klido

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

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#14
как-то я по-другому думал о распределении межядерной нагрузки... они вроде бы как обрабатывают главный стек команд, а он - один, соответственно, если в стеке только компакт базы - все ядра его и будут рюхать...
я бы тоже так хотел, но наблюдаю иную ситуацию а именно:
каждый отдельный таск по домино (nCompact.exe, nAmgr.exe, nServer.exe, nHttp.exe) просто вешается как отдельный поток на какое-то конкретное(возможно самое свободное) ядро - банальное распределение потоков по ядрам
Запустите компакт и поглядите как только одно ядро в таскменеджере дрогнет, остальные так и останутся по нулям
 
K

Klido

#15
и поглядите как только одно ядро в таскменеджере дрогнет, остальные так и останутся по нулям
интересный вопрос... поскольку под виндой сервер только дома отнюдь н ена многоядерном проце :) дам задание линуксоидам просветить данный вопрос....
 
30.05.2006
1 345
11
#16
каждый отдельный таск по домино (nCompact.exe, nAmgr.exe, nServer.exe, nHttp.exe) просто вешается как отдельный поток на какое-то конкретное .. ядро
Да-да, именно так. То-ли в док-ции, то-ли на лекциях про это было
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#18
puks
да, там предлагают работать через веб, в то время как я описываю не совсем баг, а скорее пробему многоядерства :)
 
K

Klido

#19
каждый отдельный таск по домино (nCompact.exe, nAmgr.exe, nServer.exe, nHttp.exe) просто вешается как отдельный поток на какое-то конкретное(возможно самое свободное) ядро - банальное распределение потоков по ядрам
тогда стек выполняемого когда всей нитки процесса должен быть либо очень мал, чтоб не подключились остальные ядра (т.е. нагрузка никакая), либо они напрямую забили на системном уровне на многоядерность (но если ядер 8 и процессов домино больше 8 - хана домино наступила бы :))
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 231
18
#20
они напрямую забили на системном уровне на многоядерность (но если ядер 8 и процессов домино больше 8 - хана домино наступила бы )
оправданий на эту тему можно придумать уйму но есть кое-что что меня и тревожит и радует:

+ когда агент ограничем одним ядром это как бы и хорошо - в любой момент любой юзер входящий в базу попадает практически на нулевую нагрузку и ему всегда всё быстро и комфортно

- а вот когда индексер ограничен одним ядром, и при этом ни одной нагрузке вообще нету, почему ему не помочь остальными 7 ядрами побыстрячку закончить операцию, чтобы когда через 10 минут нахлынет 300 юзверей сервер к ним был готов?

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