Клондайк Программиста
ПИРАТСКАЯ БУХТА для РАЗРАБОТЧИКОВ
Windows Performance Station это программа, в которую встроена нейросеть.
Она анализирует Ваши действия за компьютером и автоматически оптимизирует его для получения максимальной производительности в тех задачах, которыми Вы прямо сейчас занимаетесь.
Особенно заметным прирост в производительности будет на слабых компьютерах, ноутбуках и ультрабуках.
В частности в тех у которых стоят процессоры с индексом U или Core M.
Скачать
Рекламные ссылки
Похожие материалы
Управляйте производительностью, температурой и устройствами из одного приложения. NZXT CAM быстр, эффективен и прост в использовании, позволяя вам контролировать все аспекты вашего компьютера.
Windows Performance Station это программа, в которую встроена нейросеть.
Она анализирует Ваши действия за компьютером и автоматически оптимизирует его для получения максимальной производительности в тех задачах, которыми Вы прямо сейчас занимаетесь.
Особенно заметным прирост в производительности будет на слабых компьютерах, ноутбуках и ультрабуках.
В частности в тех у которых стоят процессоры с индексом U или Core M.
Как заставить Windows нормально работать? Пользуемся утилитой WPS performance station
Пару лет назад мы уже рассказывали про утилиту Windows Performance Station для оптимизации работы операционной системы. Недавно вспомнили про нее еще раз — а там все стало быстрее, выше, сильнее и во всех смыслах круче работает. Решили не упускать возможность и еще раз напомнить вам, наши читатели, почему вообще нужно ставить утилиты для оптимизации Windows и что теперь умеет именно WPS. Начать разговор стоит с того, что десктопные операционки так и не стали достаточно дружелюбными для пользователей, в то время как мы сами становимся все больше разбалованы простотой использования мобильных операционок. Даже macOS едва ли можно начать комфортно пользоваться прямо из коробки без того чтобы сначала пройтись по всем опциям и выставить правильные для себя настройки. В случае с Windows все еще хуже – из-под современного интерфейса «десятки» то там, то тут вылезают какие-то непонятные и сложные функции из недружелюбного к человеку компьютерного прошлого времен. А так хочется, чтобы компьютеры сразу работали как надо и не начинали тупить с течением времени.
Для тех, кто не считает себя продвинутым пользователем, или просто ленится возиться с ручной настройкой и оптимизацией компьютера советуем поставить утилиту для оптимизации операционной системы. Как вы уже догадались, WPS performance station. Во-первых, она стоит копейки (на самом деле 99 рублей), во-вторых, ее делают российский разработчики (а их всегда приятно поддержать), а в-третьих, за время существования эта утилита стала действительно качественным и мощным продуктом. Последнее стало возможным благодаря толковой команде инженеров, которые действительно разбираются во всех тонкостях работы Windows и знают как сделать ее лучше. Ко всему прочему, их личный опыт объединен с машинным обучением утилиты.
Если говорить о функциональности WPS Performance Station в автоматическом режиме, в первую очередь, утилита работает для повышения производительности компьютера и автономности ноутбука. Приложение автоматически определяет, с чем вы работаете в данный момент, и расставляет приоритеты между активными и фоновыми программами. А в целом по операционной системе повышает производительность за счет работы не только с пользовательским софтом, но и менее очевидными для человека системными процессами. Как следствие, для ноутбуков это позволяет повысить время автономной работы — энергия перестает тратиться впустую.
Для универсальных компьютеров, на которых пользователи работают, сидят в интернете, смотрят фильмы, занимаются созданием контента и играют разработчики WPS предусмотрели профили. В приложении можно переключаться между разными режимами для того, чтобы работа системы оптимизировалась для разных задач. Например, в «Авто» утилита будет сама принимать решения об изменениях в работе в зависимости от используемых приложений. В режиме «Видео» происходит ускорение работы мультимедийных процессор для стриминга или обработки роликов в видеоредакторах, а профиль «Аудио» обеспечивает минимальные задержки при обработке звуковых потоков. Кроме того, есть опция «Слабый ПК», при работе которой, по аналогии с мобильными операционными системами, происходит «заморозка» фоновых процессов у свернутых приложений и все ресурсы направлены на программу в активном окне.
Получается, в каких-то случаях в приоритете мощность процессора, в других — графической системы, а для каких-то задач компьютер может «выдохнуть» и работать вполсилы. Конечно же в WPS есть игровой режим для того, чтобы добавить огоньку старым компьютерам и дать геймеру шанс выставить чуть более высокие настройки качества графики. Ну, или без особых усилий раскрыть потенциал мощных машин. Приложение одинаково хорошо работает как со старыми ПК, так и с топовыми моделями текущего года. Опять же, продвинутые пользователи могут не полагаться только на профили и вручную контролировать приоритеты и управлять мощностью процессора, создавая правила работы для отдельных приложений и даже для конкретных типов исполняемых файлов. На всякий случай, разработчики написали инструкцию по ручным настройкам в утилите, чтобы продвинутые пользователи могли подсматривать туда в случае затруднений или просто решить, нужно ли вообще делать что-то самим или проще положиться на автоматику.
Еще одна важная в наши дни опция WPS — оптимизация подключения к интернету и повышение конфиденциальности. Утилита умеет ускорять загрузку данных за счет сжатия (впрочем, мало у кого сейчас трафик имеет ограничения), а главное — шифрует передаваемую информацию и убирает рекламу из ненадежных источников. Получается, что разработчики решили не ограничиваться оптимизацией работы «железа» и функционирования процессор операционной системы, а начинают делать из WPS универсальный комбайн, который в целом повышает пользовательский опыт при любой работе с компьютером.
Если говорить о примерах, создатели WPS показывают, что по результатам синтетических тестов GeekBench 3 система может показывать до 50% больше производительности, а в игре Dirt Rally — до 25%. Неплохие показатели для утилиты стоимостью всего 99 рублей! В общем, всем пользователям Windows настоятельно советуем скачать WPS и оценить то, насколько лучше начнет работать компьютер после оптимизации. А главное — как приятно переложить заботу о системе на стороннее приложение и меньше возиться с улучшением Windows.
Windows Performance Station или как я учил комп работать эффективно
Здравствуйте, уважаемые читатели! Вот я и добрался до Хабра и хочу поведать здесь историю своего проекта. Многие аспекты собственного опыта и работы приходится описывать довольно общими терминами, чтобы не задеть коммерческую тайну тех организаций, о которых идёт речь.
Суть данного рассказа в том, чтобы поделиться найденным методом решения проблемы производительности компьютеров на Windows и рассказать про подход, который позволил сделать данное решение полностью универсальным и индивидуальным для каждого пользователя. На написание кода и подбор наиболее эффективных механизмов потребовалось около 2х лет ежедневной работы, а также консультации и помощь от большого количества моих товарищей из разных IT областей, за что им огромное спасибо.
Итак, данная история началась в 2013ом году, в то время я работал в одной крупной международной организации производящей порошки и шампуни. Должность у меня была сисадминская, но, как это часто бывает, по сути я был «тыжпрограммистом». Суть работы сводилась к поддержанию некоторых систем СЭД, написанию различных макросов на VBA, утилиток для автоматизации или интеграций разных простеньких систем и т.п.
И как раз в то же время я решал одну из наболевших проблем организации, а именно, неудовлетворительную работу различного ПО на новых ноутбуках многих сотрудников. По сути, мне пришлось столкнуться с проблемой, которая возникает у многих сисадминов крупных компаний — на компьютерах персонала, кроме любимых ими MS Office, SAP, 1С и т.п., присутствовал не менее любимый всеми IT специалистами «mcafee», «punto switcher», «mail спутник» и что только не. Тут стоит уточнить, что данная компания тогда продвигала либеральное отношение к компьютерам сотрудников, и, по сути, зарождала у себя BYOD.
Так как жалобы на производительность поступали в т.ч. и мне, я стал искать приложения для настройки производительности на подобии Process Lasso. Мой выбор тогда пал на «Bill2`s Process Manager». На тот момент я нашёл много альтернатив, но все они имели жутко перегруженный интерфейс и на собственную работу отъедали больше ресурсов, чем можно было высвободить оптимизацией.
Найденный на тот момент «Bill2`s Process Manager» имел массу преимуществ перед системными средствами, т.к. был довольно простым в управлении и настройке. По сути, он позволял делать то же самое, что умеет диспетчер задач, а именно, задавать базовый приоритет и маску ядер для приложений, но, в отличии от диспетчера, давал возможность сохранить эти параметры после перезагрузки и различал приложения которые отображаются в окнах на рабочем столе или работают в фоне.
Благодаря этому приложению мне удалось решить одну из самых насущных проблем, объяснить компьютеру с какими приложениями я работаю сейчас, и что для меня важнее — EXCEL или фоновая установка обновлений.
Но, несмотря на то, что для меня это приложение решило основную проблему, оно имело массу недостатков:
В жизни же, получается, что только малая часть ПО пишется с учётом программной архитектуры Windows, большинство производителей, в т.ч. очень серьёзных и крупных, пишут ПО без указания этих параметров и ОС использует всё по умолчанию.
И это не говоря про службы, которые совершенно беспардонно отъедают любые доступные ресурсы как только поступает эвент к действию (типа скачивания и установки обновлений). Желающие проверить ситуацию на своём ПК могут открыть диспетчер задач и отобразить столбец «базовый приоритет» во вкладке с процессами.
Немного данную ситуацию исправляет MMCSS, но он слишком мягко влияет на процессы, почти не затрагивая их фактическую производительность.
Самая неприятная вещь в многозадачности Windows, которая меня постоянно преследовала, было прослушивание музыки во время ресурсоёмких операций. Т.к. я во время работы слушал музыку через Хром и запускал расчёты крупных таблиц в Excel, звук имел особенность подвиснуть именно на момент полной загрузки ЦП или постоянно похрипывать при любом скачке этой нагрузки. Данная ситуация почти полностью решилась использованием «Bill2`s Process Manager», но его нужно было вручную настроить на Хром, чтобы тот не кряхтел и получалось, что хром всё время в повышенном приоритете, даже когда музыка не нужна, что уже было не гуд.
Тут же стоит уточнить, что компьютеры и тогда использовались довольно мощные по меркам ноутбуков. На тот момент это был Core i5 2430m / 8GB Ram / 256GB SSD.
При этом, зарождавшийся тогда в компании BYOD предполагал, что сотрудники со своими рабочими ноутбуками могут работать повсюду, в т.ч. из дома и, при этом, использовать рабочий ПК как домашний для просмотра фильмов игр и т.п.
Все эти факторы в итоге натолкнули меня на мысль о написании собственного приложения, которое будет вбирать в себя всё лучшее от имеющихся альтернатив и устранит их недостатки, при этом будет не просто интерфейсом для настройки как диспетчер задач, а полностью автоматической системой для адаптации производительности под выполняемую задачу. По сути, я собирался создать идеальную структуру для BYOD на своём ПК, в которой я мог бы и поработать без понижения производительности процессами Steam, iTunes или т.п. и поиграть, посмотреть фильмы без влияния корпоративного софта, антивирусов и т.п.
Для решения данной задачи мне понадобилось привлечь нескольких своих друзей, которые так же работали в IT. Изначальная мысль была в том, чтобы сделать приложение для нашего собственного удобства и расширить собственные познания по работе ОС и различных приложений.
Дело было за малым, сначала мы написали простенькую альтернативу «Bill2`s Process Manager», но без интерфейсов настройки, чтобы приложение работало с преднастроенным конфигом. Основной фишкой было определение того, какие окна развёрнуты, какие процессы работают в фоне и какое приложение в фокусе. Так же сразу добавили опцию назначения приоритета не только процессу, но и всем процессам из определённой папки. Написать данное приложение было довольно просто и благодаря имеющемуся опыту сразу же получилось недопустить утечек памяти, утечки хэндлеров, вылетов и прочих багов т.к. приложение должно было работать в фоне длительное время без перезагрузок. Чтобы приложение было лёгким и работало эффективно, мы использовали только стандартные функции ОС и WinAPI. В самом начале мы обходились даже без интерфейса.
Следующим этапом было написать локальный алгоритм обучения, который по входным параметрам определял бы назначение приложения. За основу была взята математическая модель нейросети с нейронами на основе пороговой передаточной функции, но на тот момент не учитывались весовые коэффициенты, которые мы добавили позже. Эта нейросеть сначала училась только на базовых параметрах времени работы с приложением, его имени, правилом в конфигурации и расположением на жёстком диске (например, если много приложений постоянно используются и не работают в фоне, расположены в одной корневой папке типа «C:/Games/», то скорее всего все последующие приложения запускаемые из этой папки будут использоваться активно и понижать их приоритет в фоне не нужно).
Для доведения этого алгоритма до совершенства потребовалось почти пол года. В дальнейшем количество входных параметров для анализа увеличивалось и подбирались оптимальные правила, применяемые к сторонним приложениям.
Тут стоит уточнить, что в отличии от классических диспетчеров задач, мы решили не управлять приоритетами, ядрами, оперативкой и вводом-выводом по отдельности, а объединили эти параметры в правила, которые комбинировали в разной пропорции. Например, для заглавного приложения правило = FOREGROUND (доступны все ядра, приоритет выше среднего, приоритет ввода-вывода высокий, оперативку в SWAP не сбрасываем).
В дальнейшем к алгоритму обучения были добавлены параметры положения окна (есть ли отображаемое окно у приложения, свёрнуто ли оно или развёрнуто. Если развёрнуто на весь экран и в фокусе, то нужно уделить этому процессу больше внимания, чем фоновым и т.п.).
Было добавлено определение служб, т.к. одинаково называющиеся процессы служб svchost.exe выполняют совершенно разные задачи.
Самым сложным, пожалуй, было научить приложение различать одинаковые процессы по разному назначению. Например, многие браузеры запускают для каждой отдельной вкладки отдельный процесс (Chrome, Firefox, Yandex, Opera и т.п.), а звук и видео воспроизводят хост процессы, следовательно из 20ти процессов хрома, когда он не в фокусе, нужно повысить те процессы, которые воспроизводят звук. Это же касается и любых других процессов, которые могут работать в фоне.
Чтобы не прописывать в конфиге все известные миру процессы, в конечном счёте приложение научилось определять не только то, как часто пользователь работает с процессом, но и фактическое назначение процесса и его важность для работы.
Таким образом приложение научилось распределять нагрузку по ключевым узлам компьютера в зависимости от того, с чем в данный момент работает пользователь. Более того, нагрузка распределяется индивидуально для каждого ПК в зависимости от сценария использования какого-либо приложения, т.е. используется ли оно в окне, воспроизводит ли оно видео/звук/3d, как много пользователь обращается к данному приложению и в какой папке данное приложение расположено.
Приложение получилось простым и универсальным, установка происходит в пару кликов и для работы не требуется никаких настроек, всё адаптируется автоматически.
Вся данная логика не могла бы существовать без тесной интеграции с системой, поэтому для реализации всех механизмов пришлось задействовать по максимуму функции Windows API. Это позволило при минимальных затратах расчётных мощностей достучаться до глубоких функций ядра и сохранить максимальную совместимость с любым ПК на x86-64 процессоре.
Так же, важно было учитывать тип компьютера с которым работает пользователь. Например, при работе от аккумулятора используются несколько иные алгоритмы работы с ядрами ЦП, чтобы уменьшить нагрузку и сэкономить заряд. Были добавлены опции управления питанием, чтобы можно было не выключать ноутбук или планшет, а, погасив экран, продолжать слушать музыку или выполнять скачивание/копирование/архивирование файлов с энергопотреблением около спящего режима.
Так же важно было научиться определять как процессор работает с многопоточностью и как распределяет нагрузку на ядра.
Все данные алгоритмы в совокупности помогли создать действительно универсальное решение, которое не является твикером или разгоном и не ограничивает функциональности ОС и другого ПО. По сути, приложение учит компьютер понимать запросы пользователя и управлять нагрузкой на ключевые узлы так, как это делал бы опытный админ для каждой конкретной задачи.
Со временем к работе над данным проектом присоединились другие мои товарищи, которые помогали заниматься дизайном, сайтом, группой ВК и т.п. вопросами.
Предвкушая различные советы от гуру, хочу сразу упомянуть, что мой суммарный опыт работы в IT на данный момент составляет 8 лет. За время работы над данным приложением я встречал множество противоречивой информации на тему особенностей работы ОС и некоторых компонентов ПК, поэтому не удивлюсь, что кто-то может быть несогласен с некоторыми описанными подходами, но конечное тестирование показало эффективность данных решений.
Даже в профессиональной сфере моих коллег, многие до конца не понимают тонкости работы ЦП, многопоточности, многозадачности и многоядерности. Информацию о некоторых системных функциях Windows приходилось находить в самых отдалённых частях интернета. Самым сложным, пожалуй, было найти работающий(!) способ установки высокого приоритета ввода-вывода сторонним приложениям.
Описанный механизм не является сферическим алгоритмом в вакууме и успешно работает на реальных машинах. В случаях где реально используется многозадачность — прибавка производительности может составлять до 50%.
Финальным штрихом для работы над приложением стало подписание сертификатом «code signing» для ОС Windows.
Большое спасибо всем, кто осилил данный текст до конца.
P.S. Прошу прощения за некоторую сумбурность, старался уложить только самую главную инфу, чтобы не сильно разрастался текст.
Мы распространяем приложение по схеме Freemium, чтобы любой пользователь мог воспользоваться самыми основными функциями, но нам будет очень приятно, если сообщество Хабра нас поддержит, чтобы наш проект смог развиваться далее.
У нас есть ещё множество идей по увеличению функциональности и производительности нашего приложения, чтобы сделать его ещё лучше и эффективнее.
Искренне надеюсь, что наши усилия помогут облегчить работу с компьютером многим пользователям, которые не обладают специальными навыками для настройки своего ПК, а прожжёным спецам позволят избавиться от постоянного выбора между скоростью и функциональностью.
Я буду рад рассказать более подробно про различные аспекты работы приложения отдельно, если данная статья вызовет интерес.
WPS Performance Station Software
Программа позволяет получить максимальную производительность от имеющегося железа, позволяя не закрывать фоновые приложения и службы
Спасибо за вашу помощь и предложения!
WPS Performance Station Software запись закреплена
Наш хостинг выражает вам свое почтение и настоящим сообщает, что в промежуток времени с 17.07.2021 22:00:00 до 18.07.2021 06:00:00 (время московское) будут проводиться плановые работы в связи с модернизацией магистрального узла, что может повлечь за собой прерывания в работе услуг связи, каждое из которых может составить до 20 минут в указанном интервале времени.
Приносим свои извинения за возможные неудобства.
WPS Performance Station Software запись закреплена
Мы рады сообщить о выпуске обновления 5.21.0426 в котором произошли следующие изменения:
— Улучшено энергосбережение при работе от аккумулятора.
Обновление станет доступно автоматически, после прохождения бета-теста. Ранний доступ к обновлению предоставляется всем участникам бета-тестирования. Скачать актуальную версию приложения можно на нашем сайте: https://winperst.ru/download
WPS Performance Station Software запись закреплена
Мы рады сообщить о выпуске обновления 5.21.0330 в котором произошли следующие изменения:
— Добавлена новая логика работы с тротлингом для повышения производительности без риска перегрева.
Обновление станет доступно автоматически, после прохождения бета-теста. Ранний доступ к обновлению предоставляется всем участникам бета-тестирования. Скачать актуальную версию приложения можно на нашем сайте: https://winperst.ru/download
WPS Performance Station Software запись закреплена
Мы рады сообщить о выпуске обновления 5.21.0202 в котором произошли следующие изменения:
— Оптимизирован алгоритм работы базы знаний.
Обновление станет доступно автоматически, после прохождения бета-теста. Ранний доступ к обновлению предоставляется всем участникам бета-тестирования. Скачать актуальную версию приложения можно на нашем сайте: https://winperst.ru/download
что там в новой бете?
WPS Performance Station Software запись закреплена
Мы рады сообщить о выпуске обновления 5.21.0201 в котором произошли следующие изменения:
— Доработана логика обработки тегированных процессов (теперь они по приоритету ниже, чем топ-10 и база знаний).
— Улучшен алгоритм выбора логических/физических ядер для всех процессоров.
— Обновлены параметры профилей «Авто» и «Игры» в соответствии с новой логикой интеллектуального режима.
Обновление станет доступно автоматически, после прохождения бета-теста. Ранний доступ к обновлению предоставляется всем участникам бета-тестирования. Скачать актуальную версию приложения можно на нашем сайте: https://winperst.ru/download
WPS Performance Station Software запись закреплена
Мы рады сообщить о выпуске обновления 5.21.0125 в котором произошли следующие изменения:
— Полностью переписан алгоритм применения и накопления опыта, теперь вместо счетчиков будет использоваться стейт-машина, которая передает информацию из ТОП-10 в общую базу знаний на сервер, после чего, информация с сервера кешируется локально (при наличии лицензии). При отсуствии лицензии, будет использоваться только опыт приложений из ТОП-10. С новым алгоритмом опыт снова становится глобальным (а не групповым по пользователям), но при этом для хранения, обработки и использования будет требовать значительно меньше ресурсов, чем ранее использованные алгоритмы.
— Исправлены мелкие баги.