Сервер на базе четырех ядерного Intel Xeon E5430.
При загрузке гейм сервера да и иногда при работе наблюдаю такую вот ситуацию (см. скрин), что сервер нагружается всего на одно ядро, при чем иногда на 100%, но только одно ядро (25% общая нагрузка).
Можно ли как-то нагрузку оптимизировать/распределить на все ядра?
Загрузка сервера происходит в основном в одном потоке, поэтому там в любом случае будет нагружать одно ядро.
То что у Вас в некоторые моменты нераспределенная нагрузка - проблема выполнения в трид пуле очень и очень тяжелой задачи. Подключайте профилировщик и смотрите, что дает такую нагрузку.
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
Дочерние потоки создаются с маской родительского потока.
Поэтому сколько бы вы не запустили дочерних потоков они будут исполняться на том же процессоре что и родительский.
MHard Написал:Дочерние потоки создаются с маской родительского потока.
Поэтому сколько бы вы не запустили дочерних потоков они будут исполняться на том же процессоре что и родительский.
Pointer*Rage Написал:Загрузка сервера происходит в основном в одном потоке, поэтому там в любом случае будет нагружать одно ядро.
То что у Вас в некоторые моменты нераспределенная нагрузка - проблема выполнения в трид пуле очень и очень тяжелой задачи. Подключайте профилировщик и смотрите, что дает такую нагрузку.
Судя по этому ответу и последующим, наполненным технических терминов, которые мне не понятны, думаю что проблему нельзя решить изменением конфига сервера или какой-либо простенькой оптимизацией ОС (раньше помню AMD даже выпустило дополнение "Dual core optimizer" для оптимизации нагрузки на 2-х ядерные процессоры).
В принципе это визуально никак не влияет на работу сервера, он работает как часы, и если нет решения - то можно оставить все как есть.
Если такая загрузка одного ядра постоянна и это тестовый сервер на котором еще нет онлайна то это не нормально. Нужно искать что именно загружает процессор.
02-04-2015, 03:38 PM (Сообщение последний раз редактировалось: 02-04-2015, 06:02 PM ntking.)
Нет, нагрузка на одно ядро не постоянна.
Только при загрузке/старте сервера и редко, на короткое время, при выполнении каких-то плановых задач (например смена ивентов 7-ми печатей и др.). Выхожу из этой ситуации полным освобождением часто нагружаемого ядра от иных задач, кроме гейм сервера.
Сервер работает больше 3-х лет, онлайн практически уже никакой .
Теперь давайте я вам расскажу страшную тайну.
Берем пример на старте сервера (бекап/очистка от мусора базы данных и т.п.)
SELECT
UPDATE
DELETE
ALTER и т.д.
Погружаемся в страшный сон и делаем это мультипоточно, какой мы получаем профит ? Да ни какого кроме либо локов в всех тридах/потоках(к примеру мы разнесли Кюри по тридам) , либо же пулим все в 1 трид. Ну и вариант для наркоманов, все делам без локов и крашим БД
Конечно же можно все раскидать по разным тридам в циклах, но пока не завершит свою работу один из в следующий переводить нельзя(может конечно и можно , уже навертели овер 9000 лясим трясим фреймворков супир сурбд прослойка).
PS Так же смотрите маны по конфигурации БД
Скорее просто сервак нагруженный. Как вообще оно работает?
Тот же сервер l2jfrozen как такой сервер умудряется работать?
---- Про базу данных я вообще помолчу лучше!
Громадные расходы памяти! К чему все это?
В место 2 гигов, сервер должен хавать ровным счетом ничего, запустился и ждет, что в память ложить (может тут вообще не положит никто, а мы уже забили ячейку).
А тут же как! Взяли сразу все забили под жвак и остается тулить, то, что должно ожидаться.
А итемы как позорно сделаны - это ужаснуться можно, они фактически не существуют, они просто есть...
Должны быть привязаны к операциям, событиям, чтобы кроме как пройти и получить нельзя никак больше, соответственно если не убить моба или не пройти задание не будет адены и т.д. (проверяется только то, что сервер знает, если что - то не так пошло, он это пропускает мимо и не выполнит) - всякие кики, баны, защиты - это чуш полная, да спасает, но почему бы не сделать сервер как нужно и заморочек с клиентом вообще не будет никаких - играй все норм (ты такой жестокий).
ПОЧЕМУ ОФ?? А НЕ ТЫ, ВЫ!?
Мы же не нарушаем права.
Сервер сделан для любителей lineage 2, все права посвящаются innova system (так как мы русские), ncsoft.
И никто ничего не скажет, права на них, а запрета на распространения нет - я учел авторские права и не нарушил их.
Мы лишь меняем, под себя гемплей. Ибо нам так хочется. =)