Category Archives: работа

Низкий фреймрейт на Intel Core-i5 10 Gen

Новый ноутбук Acer А515 Core i5-10Gen, 8 Gb RAM, 256 Gb SSD, Intel UHD видео. Установил Windows 10 Pro, Roblox и другие игры. Все замечательно работает, пусть даже не на максимальной графике.

Внезапно приходит ребенок и говорит, что все сильно тормозит. Проверяю. Действительно: в roblox частота кадров заметно снизилась. Зашел в меню настроек, уменьшил качество графики – все равно притормаживает видео. Включил Performance stats – заметно, что CPU не справляется и задержка вместо 33 мс, составляет 70+ мс.

Открыл диспетчер задач – производительность. Процессор загружен всего на 10%. Но при этом тормозит.

Переустановил драйвера видеокарты, проверил систему тестами – все нормально, показатели все хорошие.

Переустановил операционную систему, все заново переустановил – проблема осталась.

И тут я заметил: если в диспетчере задач – производительность – частота процессора повышается до 2.5 ГГц и выше – все начинает быстро работать, но потом частота процессора снижается до 0.5 ГГц – и все тормозит.

Проверил еще раз настройки Электропитания – производительность максимальная, охлаждение активное – здесь все нормально.

Нашел программу: ThrottleStop. Запустил ее, чтобы вылечить скачки частоты процессора. Выключаю параметры, отвечающие за шаги в тактовой частоте. Запускаю roblox. Тадааам! Все летает!!! Но… внезапно программа throttleStop мне пишет – TEMPERATURE – 92! и все это красным…

Еще раз подчеркну – ноутбук новый, использовался всего год. Я его регулярно пылесосил, чтобы он чистый был. Но вот тут-то я и ошибся… надо было первым делом проверить температуру. А я этого не сделал.

Я поднимаю ноутбук, дую в отсек вентилятора, раздается щелчок и…. вентилятор начинает работать. То есть я, когда пылесосил, заклинил вентилятор. В результате система начала просто перегреваться, что приводило к снижению частоты работы процессора.

Теперь все работает. Частота процессора в процессе игры находится на уровне 1.5 ГГц, чего хватает для среднего уровня графики (больше и не надо), температура снизилась ниже 80 градусов, что уже нормально. Можно переводить в режим автоматического уровня графики, чтобы roblox дальше сам решал, что включать, что выключать.

Побочный канал (side channel) по питанию USB

Подключил осциллограф к USB порту ноутбука. Позвонил по скайпу. Увидел звуковую волну, воспроизводимую на динамике ноутбука, на осциллографе. Решил видео по этому поводу снять… Для тех, кто не в теме: это означает, что если вы общаетесь по скайпу с кем-то, то USB устройство может “слушать” то, что вы говорите даже не обладая микрофоном.

D-link DIR-320 NRU вместе с Yota LTE

Когда-то у меня была возможность провести отлично время на даче. Но надо же быть постоянно на связи и иметь под рукой интернет, чтобы с работой все ок было. Поэтому надо было найти какое-то решение, которое позволило бы иметь инет на всем участке на какой-то стабильной скорости. Continue reading

Немного о коде

Налетел сегодня на забавную фичу от C# в контроле DataGridView. Смысл в том, что я заполняю таблицу DataTable результатом от SQL запроса. Потом, для отображения этой таблицы, мне необходимо сделать простую вещь:

датагрид.DataSource = таблицаРезультатов;

Но в таком случае начинается чехорда – колонки DataGridViewTextBoxColumn начинают меняться местами в произвольном порядке. Логично, что должна быть какая-то метода по сортировке этих колонок. Но в визуальном редакторе набора колонок DataGridView этого параметра нет. А вот если внимательно присмотреться к DataGridViewTextBoxColumn, то в нем можно увидеть параметр DisplayIndex, который как раз и отвечает за последовательность отображения DataGridViewTextBoxColumn в самом DataGridView. То есть при переустановке DataSource происходит слет этих индексов. Поэтому пришлось в коде перед установкой нового DataSource делать перевыставление индексов для колонок. После этого чехорда колонок прекратилась. Потратил лишние 30 минут на вкуривание этой темы. Я ламер(

кодю