• Хостинг игровых серверов

    Максимальная производительность для ваших игровых серверов!

    Заказать сейчас

Помогите Есть сервер (Именно железо) на 352 ядра

stahan

3 Окт 2022
2
0
0
В общем в наличии: Кластер на 352 ядра
Сам спец в серверах (в железе), но плохо понимаю в создании *программной части* сервера Rust.
Характеристики такие:
3x64 Ядра (Пометка Y)
4x32 Ядра (Пометка Y)
1x32/64 ядра/потока. (Пометка X)
все поддерживают AVX инструкции
Между собой связанны свичом с пропускной способностью 3.8tb и задержками в 100ns (не путать с ms)
На каждое устройство: 40Gb/s lan с задержкой 100+100+100ns (ну в общем макс 300-400ns задержки (2500 операций в 1ms)).
На каждом устройстве Y: 64gb диски со скоростью на чтение и запись 6gb/s (прям реальные 6 гигабайт в секунду) iops страшные цифры, коррекция ошибок.
На устройстве X: 32gb диск Чтение/запись 24gb/s (тоже настоящие гигабайты в секунду) iops цифры еще страшнее, коррекция ошибок.
На тестах обрабатывал 100 000 пользователей
Так-же есть 45tb пространства (на SSD), для хранение данных требующие быстрый доступ о 100 000 пользователей.
Так-же уже есть 60tb для хранение данных к примеру под CombatLog каждого пользователя,
В Rast 5000 (в теории и все 100 000) пользователей вывезет (поправка я плохо представляю как работает сам серв в Rast)
В общем, я либо запущу свой сумашедший серв и ищу понимающих на % от прибыли, либо могу кому-то предоставить хостинг.
Пишите куда-то сюда (только зарегистрировался), там обменяемся более удобными контактами. Быстро не отвечу, занятость полная.
Нацелен на официальный стак серверов. так-же есть возможность воспользоваться тунелями в EU и AS
 
Сейчас весь этот стак тупо валяется у меня дома. Рассматриваю разные направление внедрение этих серверов, думаю у вас есть 1 месяц что-бы что-то предложить, Мощности переплюнуть офф сервера в Rust хватит, не переживайте, в резерве еще есть +-3000 ядер.
 
Ядра в играх не помогут, нужна частота, чем выше тем лучше, от 5 ГГц на ядро, без гипертрейдинга или с отключенным. И никаких энергоэффективных ядер лучше не использовать, при низких частотах проца fps сервера снижается заметно.
Главное ещё оперативки нужно 6-11 гигов на один выделенный сервер Rust.
Но скажу, что, попробовать стоит на 352 ядра, если кучу серверов. Считай, 88 серверов, терабайт оперативки нужно. Чтобы поэкспериментировать.
Но, если при простое ниже 90 серверного fps, это уже лаги могут ощущаться время от времени, потому что при нагрузках всё равно есть кратковременные падения fps.

Допустим у меня проц i9-12900K, 8+8 ядер 24 потока. 16 потоков на производительных, потому что гипертрейдинг включен, и 8 потоков на энергоэффективных ядрах. Это у меня до 5 ГГц и 3.7 ГГц соответственно.
Далее по контексту, чтобы не было путаницы - 1 поток равен виртуальному ядру, или просто ядро.
Использую Process Lasso, для выбора соответствия ЦП (задать сходство, это я конечно заморачиваюсь), на последние 4 ядер производительных, одно через одно. На сервере global.maxthreads выставил 4 потока, он больше всё равно не потребляет на полное процессорное время, только занимает их по чуть-чуть. 10% загрузки проца максимум, 5% если ограничить, как раз сейчас столько использует.
И обязательно снять галки на энергоэффективных. Ну и на других процессах, браузеры и прочая ерунда выставил энергоэффективные ядра, чтобы не мешали, хотя и не должны. Система сама регулирует кому чего, правда не совсем так как хочется, поэтому и существуют такие проги для распределения ядер для служб и процессов в системе для тонкой настройки.
И полёт нормальный, самая большая карта, более 310 тыс ents сейчас (было меньше, что-то я там добавил), правда игроков пара штук, чисто персональный сервер для себя потому что. Ещё и играю на этом же компе, оперативки хватает. Ну и для самой игры выделил тоже 4 ядра-потока первых, через одно ядро, распределил короче. Вообще, для стима указал чтобы он использовал 8 потоков, так же, один через один из 16 производительных виртуальных ядер, или правильнее 16 потоков. Это особенность проца, всё равно он нагрузку распределяет через одно ядро. И почему-то система использует всегда 8 и 10 ядра службами какими-то, не знаю почему, нагружены постоянно, на них не распределяю ничего.
Но т.к. у меня комп домашний, по ночам хочется тишины, когда никто не играет, а сервер чтобы работал, то чтобы кулера не раскручивались на водянке и помпа не шуршала, ставлю галки ещё и на 4 энергоэффективных через одно ядро.

Короче. Если не ограничивать fps сервера прямым или косвенным методом, и грамотно распределить потоки для клиента и сервера, то 180 фпс держит на средней карте, без особой нагрузки правда, нагрузку взять неоткуда, игроков в смысле, да мне оно и не надо.
А все ядра используются только во время загрузки сервера и генерации новой карты, - быстрая загрузка.
Считайте сами, на плагины один поток, и на сервер максимум 2-3 потока нужно, больше и не используется. Чисто програмно 2 потока максимум можно реализовать для игр. А больше 2-х это уже нужно постараться распараллелить задачи, потом синхронизировать их, это не каждый разработчик такое сможет сделать, да и не нужно это в играх, поэтому не заморачиваются. А так хотелось бы конечно чтобы процессорные вычисления распределялись более чем на 2 потока в некоторых играх, но обычно 1 поток на физику используется. Это тогда и на плойке можно было бы игрушечку запустить ))

ИМХО. Спасибо за внимание =)
 
  • Люблю это
  • Мне нравится
Реакции: egenfox и MrFallen
Активность
Пока никто не печатает сообщение