Все прерывания делятся по следующим приоритетам: 1 место - работает на уровне кольцо -2 прерывания SMI (system management interrupt — прерывание системного управления), которое возникает: -по сигналу от чипсета или периферии на материнской плате -программный SMI, посланный системным ПО через порт ввода-вывода -запись по адресу ввода-вывода, для которого микропрограммно установлена необходимость активации SMM. 2 место - гипервизор, который работает в кольце -1 3 место - ядро операционной системы - работает в кольце 0 4 место - пользовательский уровень - работает в кольце 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), поэтому любое прерывание на нашем ядре прервет нашу программу.
Борьба с прерываниями. Бороться надо двумя путями. Первый путь - уменьшить само количество прерываний=их частоту. Частота прерываний за 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 минуты после загрузки системы. Не двигаем мышку и не используем клавиатуру в момент измерений. Потом остановка и скриншот.
Добавлено спустя 1 минуту 11 секунд: Еще биос Остальное на дефе
Добавлено спустя 3 минуты 24 секунды: А Не , не всё ,тут повтор в фотках и нету достающих
Добавлено спустя 2 минуты 48 секунд: Еще один последний забыл снапшот 5
остальное деф в и биосе крч
В загрузках как видите стоит только жесткий диск,если надо флешку ставлю еще флешку
Добавлено спустя 2 минуты 34 секунды:
You-piter писал(а):
Fet KiLLa
Всё печально?
#77 #77
Хз бро может ты не правильно замерял, windows 10 не любит когда ты замеряешь через collect только f2 logstart потом plot и она не любит открытых программ и папок даже открытых всё закрыто кроме неё Вин 7 в этом выигрывает по какой причине я хз ,там когда видео работает в браузере и еще папки открыты там график пиксель в пиксель
Добавлено спустя 1 минуту 8 секунд: Вот с видосом тестер
Добавлено спустя 4 минуты 22 секунды: Собственно температуры корпус полностью открыт,нет не одного куллера,но стоит большой куллер УСТРОЙСТВО ОХЛАЖДЕНИЯ(КУЛЕР) BE QUIET! S1155/1156/1150/1151/1200, S2066, AM4, AM3/AM3+ 1600 ОБ/МИН ( SHADOW ROCK 3 )
1660 ti palit stormx 1 куллер
Добавлено спустя 30 секунд: Темпы
Добавлено спустя 50 секунд: КОРОЧЕ Я ВСЁ ВЫЛОЖИЛ КАК НАДО НА ДЕСЯТЬ ИЗ ДЕСЯТИ ТАМ УЖЕ САМИ ДУМАЙТЕ Я ЛИВАЮ
Кто тут говорит про какие то помехи , телевизор я видел кто то писал вешает и у него там че то е*ните ему чем нить тяжелым по голове это мясо безголовое Разетки заземлены имеют если железки внутри себя то и хорошо подключите такой же сетевой фильтр и всё , не надо там ниче переезжать АЛОООООООООО
Больной человек.Я,тоже из Мск,ты ещё не видел,что такой инпут-лаг,а плавающая мышь или нет резкости,это вообще детский лепет ещё.У меня сами пиксели отстают от шрифта в браузере,на рабочем столе от анимации курсора.(так сказать пиксельная тень) и ещё куча всего,что даже на новом втором мониторе,тоже появилось
Member
Статус: Не в сети Регистрация: 14.06.2009 Откуда: Омск
Fet KiLLa писал(а):
Лан спорить не буду,я просто с москвы ,у меня двухкомнатная квартира ,розетки заземлены всегда были,22 этажный дом,за стенами никого нету,так что не могу с точностью утверждать
И в Москве есть проблема, найти такого чела не составит труда.
Все картинки лучше под спойлер убрать, сворачиваемый. Они у тебя всю страницу занимают. Ты же не один тут.
Добавлено спустя 3 минуты 14 секунд:
pepper1985 писал(а):
Больной человек.Я,тоже из Мск,ты ещё не видел,что такой инпут-лаг,а плавающая мышь или нет резкости,это вообще детский лепет ещё.У меня сами пиксели отстают от шрифта в браузере,на рабочем столе от анимации курсора.(так сказать пиксельная тень) и ещё куча всего,что даже на новом втором мониторе,тоже появилось
Это же замечательно, что из мск. Пусть приедет к тебе со своим системником. Правда если не боится, что после такого эксперимента у него дома будет то же самое что и у тебя.
Advanced member
Статус: Не в сети Регистрация: 05.01.2006 Откуда: мск Фото: 5
Fet KiLLa на графиках mousetester надо смотреть не частоту а интервалы, при этом начальные и конечные точки, которые имеют большие значения надо отрезать. в теме было как это делать правильно.
_________________ ✅ РЕМОНТ мышек! ✅ качественно и с гарантией ✅
Member
Статус: Не в сети Регистрация: 29.07.2019 Откуда: 192.168.0.2
Fet KiLLa писал(а):
Хз бро может ты не правильно замерял, windows 10 не любит когда ты замеряешь через collect только f2 logstart потом plot и она не любит открытых программ и папок даже открытых всё закрыто кроме неё
Так и делал. Я как сразу купил новую мышь для себя, после старой остался неприятный момент с поведением курсора на рабочем столе и в играх. Сейчас я уже привык к этому, но разобраться всё же хочется. Старая мышь себя так не вела, поэтому я думал на нынешнюю. Чуть ранее кстати писал, что после чистой установки Windows 10 2004 всё было нормально с мышкой, я обрадовался, а после установки всех драйверов всё вернулось на круги своя. Надо будет попробовать заново чистую установку. А на Хачатура ты гонишь зря.
Это же замечательно, что из мск. Пусть приедет к тебе со своим системником. Правда если не боится, что после такого эксперимента у него дома будет то же самое что и у тебя.
Смеёшься что ли,ты слышал этот наркоманский голос или какая музыка у него на видосах и описание их.Вообще не советую его слушать,тем более таких,кто бустил на старом фк акки,я бы сжигал на костре(кто в теме старого фк,тот поймёт)И это говно,а не стрельба в 1.6,даже с ботами,что он показал.
Fet KiLLa Как же тебя с ложно читать, одно дело чётко сформулированные и понятные по смысловому течению слова, другое каша из непонятных изречений без чётко расставленных знаков, у меня при прочтении складывается ощущение как будто я читаю не русского человека, который пишет текст пропуская его через google переводчик, где 90% каши и оскорблений, если действительно как ты пишешь, хочешь помочь тем кто имеет проблемы по теме, нужно делать это понятно и с осознанием дела, а не абы как, попутно поливая участников темы словесным калом, сам же пишешь что дорос до 27 лет, а спускаешься до уровня дет. сада, пишешь много букв, а полезной информации почти нет.
Вот ветка создателя Mouse Tester ,кто хочет понять какие есть функции в ней и ,что делать.https://www.overclock.net/threads/mouse ... e.1535687/ Они обновили форум(как в нвидиа форум),у меня теперь ни один снимок там не отображается.Сложно так же читать.Думаю кто айтишник ,тот поймёт там коды ,я голову сломал.Было всё супер и тут херню сделали
Система Winsows 7 SP1 x64, никаких твиков, просто стандартная установка с родными драйверами с диска.
Но почему-то раньше курсор немного отставал от движений мышки, а сейчас нет. Раньше было удобнее, рука не уставала. Не знаешь как вернуть такое подтормаживание?
Писал давно тут о своей проблеме. Отчитаюсь еще разок что проделал за это время:
-поменял мат плату с asrock extreme4 z390 на asrock taichi z390 -брал у друга новую видеокарту 2060 взамен своей rtx2080 -поменял блок питания на sea sonic gold 1000w -ставил другой процессор взамен своего 9700k -пробовал ставить другую оперативную память -покупал новый монитор бенкъю 144гц, и пробовал подключать через hdmi и разными dp -пробовал ставить вин10 на только что купленный винчестер, предварительно вытащив 2 ссд из корпуса -вешал ферритовые фильтры на кабели питания -покупал другой сетевой фильтр -купил стабилизатор напряжения "Штиль" -купил внешнюю usb звуковую карту sound blasterX g6 (не знаю зачем написал)
Возил свой Пк вместе с монитором и мышкой zowie za13 в сервисный центр и там мне дали сесть за свой комп и потестить, у них все точно также как и у меня дома, местный сервис мен согласился со мной о наличии проблемы но помочь ничем не смог, только лишь высказал свои мысли и догадки.
Более того я собрал свой старый Пк: i7 3770k, gtx680, 8gb, какая-то asus мать, Fsp 700w. Установил вин7 на hdd и что вы думаете ? На нем такая же проблема, как и на 1-ом Пк.
Напомню более подробно о своей проблеме:
-на 144гц мониторе курсор мыши двигается с небольшим шлейфом, как-будто он в режиме 60гц -в играх есть ощущение низкого фпс 30-60, хотя по факту 144 -инпут лаг в играх(в любых и в сетевых и в ОДИНОЧНЫХ) -какое-то кисельное изображение с разрывом кадров, при горизонтальном движении мышкой влево-вправо, знаю что от этого помогает включение верт. синх., но этого не должно быть на 144гц мониторе и раньше этого НЕ БЫЛО
Представьте ситуацию: у вашего персоонажа в руках скорострельное оружие, которое может быстро стрелять одиночными выстрелами, примерно за 1сек времени вы накликиваете раз 5, перс выстреливает только 3 ! Вот так это происходит на моем компе и это касается не только мыши но и клавиатуры, в моба играх невозможно сделать быстрый прокаст способностей за короткий промежуток времени, нажимаю 1,2,3 срабатывает только 1и2. И на мышке присутствует какая-то недоакселерация, если раньше(когда все было нормально) играл на чувствительности 8 в BF при 800dpi, то сейчас даже на чувствительности 10 мышь какая-то медленная, не отзывчивая и с инпут лагом...
Уже создается впечатление что, что-то в квартире портит компы... Бред, но у меня так с двумя компами...
Блиииин, а мне наоборот нравилось такое затормаживание графики. Через несколько лет само прошло, как это вернуть? И даже непонятно какой компонент в ОС этим управляет. Но если закатать ОСь в образ, потом раскатать, то этот эффект не сохраняется. Может это как-то связано с дисковой подсистемой?
Advanced member
Статус: Не в сети Регистрация: 05.01.2006 Откуда: мск Фото: 5
helpme111 писал(а):
на 144гц мониторе
у меня на 144гц прицел более вялый чем на 120гц. в игре (овервоч) пробовал ставить разне сочетания - фпс 144 монитор 144 - фпс 120 монитор 144 - 144 120 - 120 120
наиболее четкий курсор когда 120 на 120
есттно пробовал и кучу других сочетаний, но 120 на 120 пока самое четкое.
в-синх есттно отключена.
_________________ ✅ РЕМОНТ мышек! ✅ качественно и с гарантией ✅
Member
Статус: Не в сети Регистрация: 14.06.2009 Откуда: Омск
helpme111 писал(а):
Уже создается впечатление что, что-то в квартире портит компы... Бред, но у меня так с двумя компами...
Ну да, есть такая теория, ее придерживается уже довольно много людей. Может уже и не теория, т.к на новом месте старый ПК работает так же с лагами и инпут лагом, а покупка нового ПК решает проблему. Общался с товарищами которые решили таким способом проблему. Суть в том, что если "подцепил" эту проблему, то у себя по месту жительства уже нет смысла перебирать ПК или покупать новый - это просто деньги на ветер. Только переезжать и там уже брать новый комп. Это мало кто сможет реализовать. iG0Lkakolyan1980-08-11 - ну это у вас мониторы такие. Любо из-за большего отклика пикселей при 144Гц чем на 120 и большем размытии создаётся ощущения вялости и кисельности либо просто при 144 инпут лаг выше чем при 120. Видел я такие мониторы, 144, один va, другой ips.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения