FPS сервера - Форум

ФОРУМ ПЕРЕЕХАЛ! ЭТОТ ФОРУМ НЕ ОБСЛУЖИВАЕТСЯ! 
АДРЕС НОВОГО ФОРУМА: http://forum.cs.nline.net.ua/


Страница 1 из 11
Форум » Half Life Dedicated Servers » Support HLDS » FPS сервера (некоторые хитрости)
FPS сервера
BuTaMuHДата: Понедельник, 04.01.2010, 20:10 | Сообщение # 1
Генерал-полковник
Группа: Администраторы
Сообщений: 1905
Награды: 22
Репутация: 32767
Страна: Украина Украина
Статус: Offline
FPS сервера:

FPS сервера означает скорость работы сервера. Не стоит путать его с клиентским FPS, которые означают число кадров в секунду на мониторе клиента.
Latency игроков зависит в том числе и от того, насколько быстро сервер обрабатывает полученные от клиентов пакеты данных и формирует отправляемые пакеты клиентам. То есть чем больше FPS сервера, тем быстрее он работает и тем ниже пинг игроков. Но высокое значение FPS потребует большей нагрузки сервера на процессор.
Методы повышения FPS:
Linux
На линуксе все очень просто: добавляем в параметры командной строки -pingboost 3 для обеспечивания максимальной нагрузки на CPU и максимального FPS. Если нагрузку надо снизить то понижаем значение до -pingboost 2 или -pingboost 1.

Windows
Тут все несколько сложнее. По-умолчанию в Windows установлена слишком низкая частота MMTimer(мультимедиа таймер), в следствии чего HLDS сервер обрабатывает пакеты с низкой частотой, из-за этого fps сервера не будет больше 64, что хорошему пингу не способствует. Есть 2 пути решения этой проблемы:

- Увеличение частоты mmtimer.
Самый простой способ - запуск любого приложения Windows, который увеличивает частоту mmtimer, например Windows Media Player. Просто запускаете WMP в фоновом режиме и FPS увеличивается до 500 а возможно и до 1000. Во время работы сервера в зависимости от нагрузки на процессор FPS изменяется в диапазоне от 150 до 500 или до 1000.
Также можно использовать Booster - плагин к Metamod.
Действует он таким же образом, изменяя mmtimer для обеспечения заданного FPS.
Настраивать его нужно по своему усмотрению, в зависимости от нагрузки сервера на ваш процессор. Помните, что не всегда имеет смысл гнаться за слишком высоким FPS, иногда лучше снизить нагрузку. Отличия в пинге игроков и нагрузке на CPU между серверами работающие допустим на 200 и на 500 FPS достаточно небольшие. Эти же самые различия для серверов к примеру на 64 и на 200 FPS гораздо больше. То есть пинг не будет снижаться пропорционально увеличению FPS.
Важно, если вы используете Booster - никаких других приложений, увеличивающих частоту mmtimer не должно быть запущено, иначе контроль максимума fps booster_minsleepms теряет смысл.
Функция мониторинга нагрузки CPU - booster_cpu_enabled 1 работает только на английской версии Windows и только для одноядерных процессоров.
Есть еще один плагин схожий по функциям, но шире по настройкам и возможностям, чем Booster. Это ALX Lowping. Использовать его можете на свое усмотрение.

- Обработка пакетов HLDS в необходимое время.
При этом способе сервер HLDS обрабатывает пакеты только в то время, когда это необходимо, то есть, когда приходит пакет от клиента. FPS сервера будет увеличен ровно настолько, насколько это нужно для обработки пакета. Поскольку этот способ не требует увеличения частоты mmtimer, то он может неплохо сэкономить ресурсы CPU. Для этого нужно установить плагин Booster Lite
Настройки Booster Lite по умолчанию:
sys_ticrate 10000
booster_lite_mode 0 //контролирует степень нагрузки на CPU (от 0 до 3) 0 - самый высокий уровень, наиболее эффективно понижает пинг, 3 - самый низкий уровень, фактически отключает Booster-Lite
booster_lite_extra_sleep_frequency 10
Использование Booster-Lite позволяет добиться такого же, а возможно даже и лучшего результата, чем при использовании Booster. И при этом к тому же нагрузка на процессор будет существенно меньшей даже если ставить booster_lite_mode 0.
Есть лишь один минус - при использовании Booster-Lite нельзя запускать никакие приложения, повышающие частоту mmtimer (Windows Media Player, Winamp, QIP и т.д.). Иначе последствия будут непредсказуемыми, начиная от ускорения игрового времени на сервере и заканчивая вылетом сервера с ошибкой.

Какой из двух методов повышения FPS выбрать решать вам. Можно еще использовать Booster версии выше чем 2.0, там объединены функции Booster 1.7 и Booster-Lite, но его использование повышает риск падения сервера.
Если у вас несколько серверов и многоядерный процессор и вы хотите распределить разные сервера(нагрузку) по разным ядрам, не используйте Booster 1.70 или ALX LowPing, поскольку несмотря на заданное соответствие (Affinity), нагрузка всех серверов всегда будет ложиться только на 1 ядро. cool



ФОРУМ ПЕРЕЕХАЛ!
ЭТОТ ФОРУМ НЕ ОБСЛУЖИВАЕТСЯ!
АДРЕС НОВОГО ФОРУМА: http://forum.cs.nline.net.ua/
 
Форум » Half Life Dedicated Servers » Support HLDS » FPS сервера (некоторые хитрости)
Страница 1 из 11
Поиск: