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




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



Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4340 • Страница 188 из 217<  1 ... 185  186  187  188  189  190  191 ... 217  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

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

2. Ссылки.

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


Позднее дополню каждый раздел.
Все проблемы у нас связаны с тем, что windows относится к операционным системам с вытесняющей многозадачностью.
Вытесняющая многозадачность требует обработки системного прерывания от аппаратного таймера. По истечении кванта времени, отведённого процессу, происходит прерывание и вызывается планировщик процессов. Частота вызова планировщика критична: слишком частый его вызов будет расходовать процессорное время впустую.
Единственное, что мы можем изменить - это увеличить время кванта и поменять соотношение квантов времени на активную задачу и задачи в фоне, за это отвечает параметр в реестре
Win32PrioritySeparation
По умолчанию
0х28 квант 6:6 = Оптимальный вариант, если делать 18:6, то dpc и isr системные могут дать фризы.
При этом само время кванта зависит от системного таймера.
При системном таймера 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Гц.[/spoiler]

Главные правила для таймеров:
Таймеры используются для времени (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 10.07.2025 14:09, всего редактировалось 38 раз(а).
Начну редактировать первое сообщение и возьмусь за эту тему.



Партнер
 

Member
Статус: Не в сети
Регистрация: 01.02.2010
Фото: 12
Y0!, а без hdd проверялось ?


 

Advanced member
Статус: Не в сети
Регистрация: 05.01.2006
Откуда: мск
Фото: 5

_________________
✅ РЕМОНТ мышек! ✅ качественно и с гарантией ✅


 

Member
Статус: Не в сети
Регистрация: 25.01.2004
Откуда: Ростов-на-Дону
Фото: 4
Это рекламный видос. Не советую делать то, чем он занимается если вы в этом слабо шарите как это работает в деталях под капотом. А если вы шарите на достаточном уровне, то вы уже будете знать, что на видео показана фигня и железо это тоже фигня.
Баффер блоат который он устраняет возникает ТОЛЬКО при нагрузке на канал выше 90%, то есть если вы хотите играть и качать торренты/обновлять колду варзон с ее 100гиговыми патчами и т.п. Онлайн игры не потребляют более 5мбит канала, и то когда загружается киллкам, во время игры там и 1мбита не набирается. А у вас 25 или 50 или сотка, а кто-то и 500мбит домой поставил. Не грузите канал - не будет проблемы.
А вот купив эти железки, которые уже не для домохозяек, вы либо не сделаете лучше, либо сделаете даже хуже, активировав рискованные для безопасности функции роутера. Как например автор видоса включил UPNP, который нужен разве что консолям, а не ПК, но является рискованной функцией для безопасности.
Для дома купите роутер зуксель примерно за 80$ и всё. Дешевле там совсем слабые, а дороже - ненужные функции.
В них за вас уже подумали о безопасности на 95%, а в игрушках как на видео - 95% безопасности это ваша забота и ответственность.

_________________
12400|224XT|MSI PRO B660M-A DDR4|4x8Gb@3466|KFA2 3060-12X|Deepcool PQ650M|Corsair 200R|Win11x64


 

Member
Статус: Не в сети
Регистрация: 10.02.2018
Фото: 35
Кто сталкивался с проблемой плавающего инпут лага, можете провести небольшой тест?

1. Запустите игровой мир (лучше игру в которую вы наиграли много часов, онлайн/оффлайн без разницы)
2. Побегайте 1 минуту (чтобы оценить текущее состояние игрового времени)
3. Сверните игру и загрузите всю оставшуюся свободную память (другой игрой / утилитой / ... без разницы)
4. Вернитесь в игру (некоторые игры могут вылететь, но с n-ой попытки запустятся - в основном вылетают "старые" игры)
5. Посмотрите по ощущениям изменилось ли игровой время - инпут лаг, плавность и т. д.

спс


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
gadpaw Проверял давно. Становилось лучше или идеально на короткое время.


 

Member
Статус: Не в сети
Регистрация: 25.01.2004
Откуда: Ростов-на-Дону
Фото: 4
gadpaw
Тест делать не буду, но могу объяснить откуда инпутлаг возьмется.
Просматривая на ютубе тесты сколько озу надо современным играм, где сравнивалось 16, 32 и 64гига (вроде бы канал тестинг геймс, но это не точно), я на одном видео заметил, что на системе с 16 гигами процент загрузки ЦПУ в киберпанке был выше на 1-2 десятков(!) процентов, чем на 32 гига. Во всех случаях мощности цпу всё еще было достаточно, там 8 ядерник интел был, и фпс был идентичный на всех системах. Но на системе с 16 гигами процессор больше работал, ну или больше простаивал в ожидании данных, потому что мониторинг не различает простой в ожидании данных и работу с нагрузкой когда данные не ожидаются так долго. То есть либо цпу гонял данные ссд-озу-своп, на что тратил циклы работы, либо ждал данных от накопителей. И вот пока у него есть запас мощности на это, то есть игра работает в меньшем количестве потоков чем есть у цпу, система может себе позволить гонять и ждать данные. Но как только у вас ядер окажется недостаточно (вы купили 4/8 проц), то ресурсы на прокачку данных будут отъедать циклы и фпс упадет, причем из-за рваной нагрузки, которую обычно создают игры, могут быть кратковременные задержки в обработке в том числе и периферии.
Поэтому выполнив ряд условий одновременно: перегруз ОЗУ по объему, недостаточность ядер для конкретной игры, упор фпс в цпу - можно получить задержку ввода, то есть инпутлаг, как пиковый моментальный заметный иногда на флике, так и продолжающийся который ощущается по полсекунды, как от сложного для системы места в игре, который вызывает продолжительное снижение фпс.

_________________
12400|224XT|MSI PRO B660M-A DDR4|4x8Gb@3466|KFA2 3060-12X|Deepcool PQ650M|Corsair 200R|Win11x64


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
Ага, точно. Играм уровня КС 1.6 не хватает 8гб ОЗУ. И 16 тоже не хватает.


 

Куратор темы
Статус: Не в сети
Регистрация: 22.12.2005
Откуда: Киров
Проверка CS:GO настроек на инпут лаг:


 

Member
Статус: Не в сети
Регистрация: 02.06.2012
Откуда: Стольный Град
St@s1987 писал(а):
Y0!, а без hdd проверялось ?

По ощущениям, скачков времени кадра становится меньше, но полностью они не пропадают.

_________________
4-ех фаз хватает, что бы разогнать !!!8-ми ядерный!!! райзен до 3.8-3.9
Lopos, 13.10.2017


 

Member
Статус: Не в сети
Регистрация: 01.02.2010
Фото: 12
Genrix писал(а):
потому что мониторинг не различает простой в ожидании данных и работу с нагрузкой когда данные не ожидаются так долго.

Откуда эта информация ? Простой в ожидании данных это System Idle Process - ожидание ввода/вывода, прерываний, и оно конечно же не засчитывается в процент загрузки цп, который мы видим. Проц либо активен, либо в простое. А на том видео возможно что то в фоне грузило проц или более активная подкачка страниц.


 

Member
Статус: Не в сети
Регистрация: 22.03.2005
Откуда: Уфа
Фото: 0
St@s1987 писал(а):
не засчитывается

Засчитывается, т.к. тред по прежнему находится в ядре на исполнении и никто его не отменял. "В простое" нам показывается, только когда нет достаточного количества тредов для исполнения.

_________________
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


 

Member
Статус: Не в сети
Регистрация: 01.02.2010
Фото: 12
Alex TOPMAN
Я так понимаю речь об этом https://habr.com/ru/company/infopulse/blog/329206/. Это как iowait — время ожидания I/O операций в линуксе.


 

Member
Статус: Не в сети
Регистрация: 22.03.2005
Откуда: Уфа
Фото: 0
Об этом.

_________________
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


 

Junior
Статус: Не в сети
Регистрация: 18.08.2021
Здравствуйте уважаемые участники форума. Я никогда не сталкивался с какими либо проблемами в компьютере, являюсь бытовым пользователем и играю в игры. Играю в WoW, Apex Legends и другие игры с новой и требовательной графикой. Месяц назад начались мелкие фризы, но я не стал особо придавать этому внимание. Но пару дней назад начался кошмар, только захожу поиграть в игру - сразу просадки до 5-6 кадров и через секунд 10 выключаются оба монитора и компьютер просто встаёт, приходится заново его перезапускать и сидеть и думать, что же делать. Как обнаружилось вся проблема в системных задержках, которые можно проследить в программе LatencyMon.
Разгоном никогда не баловался, вирусов нет т.к. даже специально винду переустановил и на компе кроме стима, дискорда и апекса ничего нет. Драйвера стоят последние. Процессор - ryzen 3600, карточка - rtx 2060 super, 16 гб оперативы, продувается всё хорошо.
Прошу вас, готов предоставить любые данные из любых программ, помогите люди добрые. Прикладываю скриншоты из LatencyMon - первый скриншот показатели, второй скриншот рейтинг по dpc задержкам, третий рейтинг по isr задержкам.
Файл формата html не отправлялся, прикладываю скриншот из Hwinfo.
Проделал следующие пункты из faq: 1,3,4,5,6,7,8. Ничего не поменялось. Так же пробовал менять настройки в игре, раньше играл на максимальных, на минимальных только хуже. Прошу господа, помогайте.


Вложения:
Безымянный4.jpg
Безымянный4.jpg [ 305.21 КБ | Просмотров: 2236 ]
Безымянный3.jpg
Безымянный3.jpg [ 156.72 КБ | Просмотров: 2236 ]
Безымянный2.jpg
Безымянный2.jpg [ 297.97 КБ | Просмотров: 2236 ]
Безымянный1.jpg
Безымянный1.jpg [ 325.76 КБ | Просмотров: 2236 ]
Безымянный.jpg
Безымянный.jpg [ 289.28 КБ | Просмотров: 2236 ]
 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
boonzxc писал(а):
Как обнаружилось вся проблема в системных задержках, которые можно проследить в программе LatencyMon.

Нет.

У тебя либо ссд сдох наполовину либо проблема памяти. Короче вообще не та тема.


 

Junior
Статус: Не в сети
Регистрация: 18.08.2021
Вы меня очень удивили, прошу помогите. Я отправил фото из программы кристалдиск где видно, что ссд вполне живой, а как узнать есть ли проблемы с оперативной памятью?


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
boonzxc Сходить в магазин взять другую память и ссд.
Про температуры кстати ни слова не написано.
И да - просто так ничего выключаться не будет и тем более перезагружаться. Не и еще - железо не столь старое, скорее всего еще на гарантии. Если навыков нет - проще и быстрее все в сервисе делать.


 

Junior
Статус: Не в сети
Регистрация: 18.08.2021
OLD Hunter писал(а):
boonzxc Сходить в магазин взять другую память и ссд.
Про температуры кстати ни слова не написано.
И да - просто так ничего выключаться не будет и тем более перезагружаться. Не и еще - железо не столь старое, скорее всего еще на гарантии. Если навыков нет - проще и быстрее все в сервисе делать.

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

Добавлено спустя 48 секунд:
OLD Hunter писал(а):
boonzxc Сходить в магазин взять другую память и ссд.
Про температуры кстати ни слова не написано.
И да - просто так ничего выключаться не будет и тем более перезагружаться. Не и еще - железо не столь старое, скорее всего еще на гарантии. Если навыков нет - проще и быстрее все в сервисе делать.

Температура процессора в бенчмарке cpu-z 66.4 градуса, тумпература карты в районе 66 тоже


 

Member
Статус: Не в сети
Регистрация: 14.06.2009
Откуда: Омск
boonzxc писал(а):
могу ли я отнести в сервисный центр или ещё куда чтобы выявили проблему?

Да конечно, во всех крупных городах у них есть свои сц.


 

Junior
Статус: Не в сети
Регистрация: 24.09.2021
Y0! писал(а):
Возможно, это аппаратная проблема - винда, на которую из дров я поставил только видео, а также Steam (для тестирования фризов), умудрилась упасть в BSOD 1000007e (ntfs.sys), когда Steam скачивал CS:GO. В системе два диска - 860 evo (винда и всё, что на неё установлено) и обычный винчестер 7200 об., первый вчера сканировал samsung magician'ом, второй - chkdsk /f /r, ошибок не найдено.



Приветствую. Почитал вашу историю, у меня была похожая проблема с очень схожими симптомами на Intel Z170: рандомно падала винда в синьку с ошибкой ntfs.sys при скачивании \ установке разных файлов, долго искал виновника торжества, грешил на память и тд. По итогу - виновником оказался PCH, он же чипсет материнской платы, отвечающий за некоторые линии PCI-E , SATA и тому подобные штуки. Чипсет видимо деграднул ( от времени ли, или был банальный брак\недосмотр - не ясно), ему требовалось большее напряжение, чем выставлено было по дефолту в биосе и настройках материнки для стабильной работы. Проблему решало небольшое поднятие напряжения на чипсете +0.03v~0.04v , но со временем материнку я все же поменял. Попробуйте копать в этом направлении, еще стоит проверить наличие грязи\пыли\термопасты на контактах сокета и ножках самого CPU ( и такое видывал ).


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 4340 • Страница 188 из 217<  1 ... 185  186  187  188  189  190  191 ... 217  >
-

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


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

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


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

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