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




Куратор(ы):   eLfiK   



Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4392 • Страница 151 из 220<  1 ... 148  149  150  151  152  153  154 ... 220  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Member
Статус: Не в сети
Регистрация: 12.10.2016
1. Ликбез по прерываниям.
Все прерывания делятся по следующим приоритетам:
1 место - работает на уровне кольцо -2
прерывания SMI (system management interrupt — прерывание системного управления), которое возникает:
-по сигналу от чипсета или периферии на материнской плате
-программный SMI, посланный системным ПО через порт ввода-вывода
-запись по адресу ввода-вывода, для которого микропрограммно установлена необходимость активации SMM.
2 место - гипервизор, который работает в кольце -1
3 место - ядро операционной системы - работает в кольце 0
4 место - пользовательский уровень - работает в кольце 3

2. Ссылки.

3. Борьба с прерываниями.


Позднее дополню каждый раздел.
Все проблемы у нас связаны с тем, что windows относится к операционным системам с вытесняющей многозадачностью.
Вытесняющая многозадачность требует обработки системного прерывания от аппаратного таймера. По истечении кванта времени, отведённого процессу, происходит прерывание и вызывается планировщик процессов. Частота вызова планировщика критична: слишком частый его вызов будет расходовать процессорное время впустую.
Единственное, что мы можем изменить - это увеличить время кванта и поменять соотношение квантов времени на активную задачу и задачи в фоне, за это отвечает параметр в реестре
Win32PrioritySeparation
По умолчанию
0х26 кванты 18:6 = Оптимальный вариант.
https://github.com/keoy7am/Win32PrioritySeparationTool
При этом само время кванта зависит от системного таймера.
При системном таймера 15.625 мс оно будет больше, чем при 1.0 мс.
Высчитывается время системного таймера * тики.
1 тик= 3 кванта
Для системного таймера 0.5 мс фону тогда буде даваться 0.5мс*6/3 = 1мс из каждых 4 мс.
При 1 мс - 2мс из каждых 8мс.
При 2 мс - 4мс из каждых 16мс.
Для борьбы с фризами оптимально выставить системный таймер 0.5мс.

SMI-прерывания зависят от BIOS/UEFI и оборудования.
Отключаем все лишнее, отключаем энергосохранение, скорость вентиляторов фиксируем, это все, что мы можем сделать.
В нашем плане энергосохранения выбрать оценка для поднятия частоты вместо 15 мс максимум 5000 мс.
Есть программа Intel SMI Latency Checker
Для гипервизора - отключаем поддержку виртуальных машин в биосе.

Про прерывания на уровне ядра и пользователя в windows.
В Windows применяется:
- для x86 - 32 уровня IRQL от 0 до 31 (в скобках указано числовое значение):
High (31)
Power fail (30)
IPI (29)
Clock (28)
Profile (27)
Диапазон аппаратных прерываний, называемых Devices IRQL, или DIRQL (от 26 до 3) или ISR
DPC/DISPATCH (2)
APC (1)
PASSIVE (0)
Это означает, например, что планировщик (работающий на уровне DPC/DISPATCH) может быть прерван аппаратными прерываниями, межпроцессорными прерываниями (IPI) и т. д., но не может быть прерван асинхронными процедурами (APC) и обычными потоками, работающими на уровне PASSIVE. Межпроцессорные прерывания IPI могут быть прерваны сбоем электропитания (прерывание на уровне Power fail), но не могут быть прерваны обычными аппаратными прерываниями от устройств и т. д.
- для х64
16 уровней IRQL (от 0 до 15)
High/Profile (15)
Interprocessor interrupt/Power (14)
Clock (13)
Synch (12)
Device n (11)
.........
Device 1 (3)
Dispatch/DPC (2)
APC (1)
Passive/Low (0)

При этом:
hardware interrupts 3-15 (3-31)
software interrupts 1-2 (1-2)
normal thread execution 0 (0)


Наш пользовательский процесс может иметь следующие приоритеты:
Idle - 4
Below Normal - 6
Normal -8
Above Normal -10
High -13
Real-Time -24
Внутри процесса мы можем задать приоритет для его потоков:
Idle дает итоговый приоритет процесса с потоком 1, кроме real-time, там он его просто снизит до фиксированной 16
Lowest -2
Below Normal -1
Normal 0
Above Normal +1
Highest +2
Time Critical +7

Итоговый приоритет потока - это сумма приоритетов процесса и потока.
31 - максимум
Real-Time - от 16 до 31.
При этом даже максимальный 31 приоритет не лает нам возможности подняться выше уровня Passive/Low(0), поэтому любое прерывание на нашем ядре прервет нашу программу.


Программы для оценки прерываний:
ETW xperf WPA - родной софт от microsoft
Latency monitor https://www.resplendence.com/latencymon
DPC latency https://www.wagnardsoft.com/forums/viewtopic.php?t=5265


Настройка прерываний


Борьба с прерываниями.
Бороться надо двумя путями.
Первый путь - уменьшить само количество прерываний=их частоту.
Частота прерываний за 1 секунду до 10000 считается еще неплохой.
Второй путь - уменьшить длительность прерываний.
Есть еще третий путь - освободить от прерываний нужные нам ядра.
Первое и самое главное.
Установка максимально облегченной и очищенной системы.
Если хватит windows 10, то лучше ставить ее.
23H2 лучше, чем 24Н2.
Отключить динамический таймер.
Поднять, а не снизить время для системного таймера до 15,625 мс!
Если снизим до 0.5 мс, то увеличим количество прерываний.
Но тут вступает в действие многозадачность винды.
1/4 времени отдается фоновым процессам.
Минимум - это 6 тиков=2 кванта
Полностью вырубить все фоновые процессы на винде мы не сможем.
Для 120 кадров нам нужно иметь перерыв не больше 1/120=8.(3) мс.
Поэтому подходит время для системного таймера только
0.5 мс /1 мс и условно 2 мс , так как 2 мс*2=4 мс.

Внести в реестр для глобальной настройки системного таймера (работает только для win 11)
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\kernel]
"GlobalTimerResolutionRequests"=dword:00000001"

Отключить VSYNC.
Включить тройную буферизацию если процессор успевает рендерить, то компенсирует воемя двух кадров: 2*1000 мс / частоту кадров в Гц
Краткий список исследований по психофизиологии:
Watson (1986): Задержки <5 мс незаметны.
Kelly (1979): Порог фликера <2 мс.
Burr & Ross (1982): 10% кадра = 100мс/частоту кадров (при движении).
Clayton (2018): 1–2% кадров= 1000мс*процент пропуска кадров (10–20 мс/с) незаметно.
Carrasco (2011): <5–10 мс при внимании.
Hoffman et al. (2017): <3 мс с размытием.
Swafford et al. (2016): <4 мс, 2% (20 мс) при редких фризах (реже 1 раза в секунду).
Digital Foundry (2025): 0.125 фриза/с=0.125*1000мс/частоту кадров Гц) заметно при частых повторениях.

Для 120 Гц:
1982-0.833мс
2025-1.042мс


Снизить частоту опроса мыши до 125Гц.

Главные правила для таймеров:
Таймеры используются для времени (QPC) и для системных прерываний=тиков.
useplatformclock disables TSC and uses the platform source clock instead (HPET or PMT). PMT is used when HPET is disabled in BIOS.
useplatformtick disables TSC tick and uses the platform source tick instead (RTC).
Does disabledynamictick work when useplatformtick is used?
No, it does not do anything since RTC is not a dynamic tick counter.

При этом возможны разные комбинации таймеров.
TSC + TSC without desync:
bcdedit /deletevalue useplatformclock - bcdedit /deletevalue useplatformtick
(make sure HPET is enabled in BIOS)
TSC + RTC:
bcdedit /deletevalue useplatformclock - bcdedit /set useplatformtick Yes
HPET + RTC:
bcdedit /set useplatformclock Yes - bcdedit /set useplatformtick Yes
(make sure HPET is enabled in BIOS)
PMT + RTC:
bcdedit /set useplatformclock Yes - bcdedit /set useplatformtick Yes
(make sure HPET is disabled in BIOS)
Частота HPET 14.318180 MHz, в 4 раза выше частоты ACPI PM Timer.
RTC устаревший тайминг с частотой от 2-х до 8192 Гц.
Использует кварц 32.768 KHz
HPET требует больше времени на вызов, чем TSC или PM Timer, но это важно только для системных прерываний.
HPET и PM timer находятся в южном мосте.
TSC в процессоре.
Поэтому вполне допустима комбинация HPET (для времени QPC)+TSC (для тиков).


bcdedit /set useplatformtick no (отключаем RTC и включаем TSC для тиков)
bcdedit /set useplatformclock no (отключаем HPET и включаем TSC для времени QPC)
bcdedit /set disabledynamictick yes (отключаем динамическое изменение частоты системного таймера - влияет только на тики)
bcdedit /set tscsyncpolicy Enhanced (включаем улучшенную синхронизацию TSC-таймера)
HPET не следует отключать в биосе и в диспетчере устройств.
Посмотреть текущую конфигурацию можно с помощью команды
bcdedit /enum


Обсуждение проблем ОС и оборудования: задержка реакции системы (latency), микроcтаттер, инпутлаг, фризы.

Перед тем как задавать вопросы, просьба прочитать FAQ

Осуществлять мониторинг программой Latency Monitor нужно в течение 1 минуты, в состоянии простоя системы т.е. без дисковой, сетевой активности, и любой другой, с выключенным ав и приложениями в трее и автозагрузке,
не раньше чем через 2 минуты после загрузки системы.
Не двигаем мышку и не используем клавиатуру в момент измерений. Потом остановка и скриншот.


Презентация NVIDIA (на англ.) о проблемах статтеров, фризов и лагов (терминология, описание и причины возникновения)


Последний раз редактировалось anta777 16.07.2025 21:44, всего редактировалось 40 раз(а).
Начну редактировать первое сообщение и возьмусь за эту тему.



Партнер
 

Member
Статус: Не в сети
Регистрация: 13.02.2012
Да уже давно надо было переименовать в "DPC latency, Input lag" или сделать раздел, как на blurbusters "Input lag, Display lag, Newtwork lag"
FenixSU писал(а):
А вот для тестирования своей интернет-линии на предмет прохождения UDP-пакетов

Ну поставил Apex Legends, Джорджия
Средняя Задержка: 146.57мс
Средний джиттер: 18.43мс
потерь нету


 

Member
Статус: Не в сети
Регистрация: 13.01.2018
aivill писал(а):
Интересно , а причем здесь уже нвидия?, непонятно...., товарищи с проводами в голове, клетками фарадея, мировыми заговорами, ух как сильно тема развилась. :lol:

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


 

Member
Статус: Не в сети
Регистрация: 24.01.2011
Откуда: Нижегородчина
Фото: 31
DMCry писал(а):
До и после как Вы оценили?

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


Добавлено спустя 1 минуту 5 секунд:
brot3 писал(а):
Да уже давно надо было переименовать в "DPC latency, Input lag" или сделать раздел, как на blurbusters "Input lag, Display lag, Newtwork lag"

Кстати, отличная идея! :good:

Добавлено спустя 16 минут 35 секунд:
brot3 писал(а):
Ну поставил Apex Legends, Джорджия
Средняя Задержка: 146.57мс
Средний джиттер: 18.43мс
потерь нету

Замечательно. График без всплесков?
Лучше выставьте вручную параметры конкретно для своей игры: кол-во снимков можно оценить по переменным типа "snpas" и "cl_maxpackets", а размер пакетов конечно лучше через перехватчик какой-то типа wireshark поглядеть.

_________________
鼠 ( ¦­­­­­­­­­-)ک


 

Member
Статус: Не в сети
Регистрация: 13.02.2012
FenixSU писал(а):
Замечательно. График без всплесков?
Лучше выставьте вручную параметры конкретно для своей игры: кол-во снимков можно оценить по переменным типа "snpas" и "cl_maxpackets", а размер пакетов конечно лучше через перехватчик какой-то типа wireshark поглядеть.

Ну сначало пакетов 30 пинг 300, потом 140 и идет в принципе все ровно. Ну если сервера в Джорджии и Австралии, то эт как то не очень надо, в Германии бы сервак.


 

Member
Статус: Не в сети
Регистрация: 24.01.2011
Откуда: Нижегородчина
Фото: 31
brot3
да, неплохо бы было б в разных частях света и Европы иметь данные. Ну хоть оценить, если уж в любое время дня и ночи потери и зашкаливания по пингу - то что-то с линией провайдера явно не то. Или у друзей в подъезде на другом провайдере всё пучком , а на вашем - вакханалия....

_________________
鼠 ( ¦­­­­­­­­­-)ک


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
FenixSU писал(а):
Вы вашему же провайдеру не сможете доказать, что у него проблемы с прохождением(огромной задержкой) UDP-пакетов т.к. провайдер будет козырять инфой с источников тестирующих TCP

Да не показывают эти тесты ничего. Даже если у тебя просто 0 рега, на тестах все будет отлично.
Да и во всех более менее современных сетевых играх есть значки/индикаторы плохого инет соединения - так вот и тоже может не быть, как и реги, + будут задержки рассинхрона и инпут лаг.


 

Member
Статус: Не в сети
Регистрация: 13.01.2018
OLD Hunter писал(а):
Да не показывают эти тесты ничего. Даже если у тебя просто 0 рега, на тестах все будет отлично.
Да и во всех более менее современных сетевых играх есть значки/индикаторы плохого инет соединения - так вот и тоже может не быть, как и реги, + будут задержки рассинхрона и инпут лаг.

Смотрели моё видео,что скинул?


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
pepper1985 Про радио и ЭМИ? Ну так понятно что все электроприборы его излучают, вот только проблемы(если мы про инпут лаг конкретно) есть далеко не у всех.


 

Member
Статус: Не в сети
Регистрация: 13.01.2018
OLD Hunter писал(а):
Про радио и ЭМИ? Ну так понятно что все электроприборы его излучают, вот только проблемы(если мы про инпут лаг конкретно) есть далеко не у всех.

Смотрите шире на проблему.Ам радио даёт понять,что помехи везде.Для наглядности обычная лампочка и с энергосбережением.(пример БП AC\DC и DC\DC)Трубы отопления,есть ещё "умные" люди,которые через неё заземляются и т.д.


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
pepper1985 ну и? Помехи везде, у всех. А проблема не у всех. Как так и почему?
Тут нужно какое-то более серьезное оборудование, которое конкретно покажет уровень либо Эми помех либо же проблемы в электросети, в цифрах.


 

Member
Статус: Не в сети
Регистрация: 13.01.2018
OLD Hunter писал(а):
ну и? Помехи везде, у всех. А проблема не у всех. Как так и почему?
Тут нужно какое-то более серьезное оборудование, которое конкретно покажет уровень либо Эми помех либо же проблемы в электросети, в цифрах.

Вы меня не поняли. Осциллограф называется.


 

Member
Статус: Не в сети
Регистрация: 29.11.2013
Фото: 0
pepper1985 писал(а):
Осциллограф называется.

Смотрите... есть осцилограф, который показывает наличие помех и приближение конца света и рядом мышь, котороя в акуе, от озвученного осцилографом приговора и пытается покончить жизнь самоотключением. И, есть такая-же самая мышь (близняшки они), живущая, в соседнем квартале, в сожительстве, с таким-же осцилографом, который тоже предвещает армагедон. НО, этой мышке пофиг, все прогнозы на будущее и настоящее и она живет и радуется. Как так? В подобном случае, с людьми, вопросов бы не возникало - бухали бы все, но это жешь мыши... Другими словами - кабздец надвигается везде и у всех, а мыши не едины, в своем мнении почему-то :meeting:


 

Advanced member
Статус: Не в сети
Регистрация: 05.01.2006
Откуда: мск
Фото: 5
pepper1985 писал(а):
Осциллограф называется.

и как им наводки, скажем на сетевой кабель смотреть?

_________________
✅ РЕМОНТ мышек! ✅ смотрите на овито объявление с красным крестом ✅


 

Member
Статус: Не в сети
Регистрация: 24.01.2011
Откуда: Нижегородчина
Фото: 31
OLD Hunter писал(а):
Да не показывают эти тесты ничего. Даже если у тебя просто 0 рега, на тестах все будет отлично.

Неа, не верю :nea: Уже повторятся начинаю: много ли Вы знаете тестов на прохождение именно пакетов UDP? Это ж негарантированная доставка, их игра "выплюнула" в сеть, потом сервер "выплюнул" и что там с ними по пути произошло и тому и другому начхать. А они там где-то в переполненных буферах торчат в длинню-ю-ющей очереди, и там не десятки и даже порой не сотни миллисекунд... единицы секунд - вполне может быть.
Вот, к слову, ещё одна тема небезызвестная BufferBloat: http://www.dslreports.com/speedtest - можете поглядеть какие могут быть буферные "пробки" на пути. У меня, например, на работе показывает до 2625мс(!) задержку - вот они хитреги нулевые где.

_________________
鼠 ( ¦­­­­­­­­­-)ک


 

Advanced member
Статус: Не в сети
Регистрация: 05.01.2006
Откуда: мск
Фото: 5
FenixSU писал(а):
небезызвестная BufferBloat:


Вложение:
0.jpg
0.jpg [ 178.73 КБ | Просмотров: 656 ]


у меня кстати BufferBloat зависит от настроек сетевой карты.
там есть одна настройка которая уменьшает его до единиц мс.
я вроде раньше писал об этом.

и да продолжаю собирать вдовой лучшие моменты матча...
очень прикалывает что это со сломанной рукой :lol:

https://yadi.sk/i/7PcDhG4l8UQneQ

_________________
✅ РЕМОНТ мышек! ✅ смотрите на овито объявление с красным крестом ✅


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
FenixSU писал(а):
Уже повторятся начинаю: много ли Вы знаете тестов на прохождение именно пакетов UDP?

Игра на живом сервере - вот лучший тест.
Я уже писал про такую штуку как udp reordering и выявить ее смогли только при совместной работе разработчика игры и провайдера.
А что если такое же возможно и на уровне дома/подъезда/района? А не глобально на уровне повайдера? И какой "тест" это покажет? Никакой?
FenixSU писал(а):
можете поглядеть какие могут быть буферные "пробки" на пути. У меня, например, на работе показывает до 2625мс(!) задержку - вот они хитреги нулевые где.

А вот это вообще бесполезная хрень, которая имеет смысл только если у тебя дома канал забит полностью другими девайсами. Решается элементарно нормальным роутером или его прошивкой с нормальной работой qos.


 

Member
Статус: Не в сети
Регистрация: 13.01.2018
FenixSU писал(а):
Вот, к слову, ещё одна тема небезызвестная BufferBloat: http://www.dslreports.com/speedtest - можете поглядеть какие могут быть буферные "пробки" на пути. У меня, например, на работе показывает до 2625мс(!) задержку - вот они хитреги нулевые где.

Я уже это давным давно писал на хер знает какой странице про этот тест.Говорил,что,когда у меня рядом проходил коакс.антенный кабель рядом с моей розеткой(розетка рядом с плинтусом)то бафферблоат был постоянно F,когда я убрал полностью коакс.кабель,стал в основном D-C и под 3000мс(на 2 провайдерах)и мышь стала легче,комп меньше гудеть стал и БП стал меньше греться(вообще практически не стал)ещё заметил,что стиралка ,тоже стала меньше гудеть,когда работает и старый холодильник,после всего этого


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
У меня с включенным на фоне стримом индекс B , то скачки пинга по этому тесту только на аплоад при загрузке канала полностью под 100 мбит. Покажите мне игру, которая грузит канал на аплоад на 100 мбит, забивая его полностью.
Хотя если вы любите раздавать торрент на весь канал и играть при этом онлайн, то тест для вас, возможно он поможет и от смены роутера или его прошивки что-то изменится. При обычных условиях тест хрень полная ничто и ни о чем, все уже проверено кучей людей.


 

Member
Статус: Не в сети
Регистрация: 22.03.2005
Откуда: Уфа
Фото: 0
FenixSU писал(а):
много ли Вы знаете тестов на прохождение именно пакетов UDP?

А какие проблемы его сделать? Пяток проверочных серверов в разных частях мира и клиентская + серверная часть теста. Клиентская отправляет нумерованные по порядку UDP(!), сервер пишет в лог о тех, которые поймал за тестовое время. То же самое делается и наоборот от сервера к клиенту. Оба лога потом показываются клиенту "для раздумий" на тему наличия проблемы вообще и её масштаба. И ничего, что это будет не какой-то конкретный игровой сервер. Проблемы "последней мили" прорисовываются очень даже ясно.

_________________
14900KF(P62-58E48R52) Apex z790Encore Kingbank 2x24GB_8200cl32-48-48-2T Optane 5801X+960Pro+2x960Evo+5xSSD Palit5090Gamerock ASUS_PG278Q Pimax_8KX CM_HAF_X Win11x64


 

Advanced member
Статус: Не в сети
Регистрация: 05.01.2006
Откуда: мск
Фото: 5
Alex TOPMAN писал(а):
А какие проблемы его сделать?

даже сервер не нужен - достаточно поставить прогу на двух компах.
может такая прога есть а мы не знаем... :D

_________________
✅ РЕМОНТ мышек! ✅ смотрите на овито объявление с красным крестом ✅


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4392 • Страница 151 из 220<  1 ... 148  149  150  151  152  153  154 ... 220  >
-

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


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

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan