Дело об оценке производительности

Спустя пару дней после Рождества я зашел к Холмсу, чтобы предложить ему прогуляться по зимнему Гайд-парку. Мой визит, похоже, застал его врасплох. Войдя в кабинет, я краем глаза заметил, как Холмс быстрым движением спрятал что-то под стол.

«Что это вы там прячете, Холмс? Уж не рождественский ли подарок вашей тайной поклонницы?», — ехидно поинтересовался я. Мой друг усмехнулся: «Вы почти угадали, дорогой Ватсон! Это действительно рождественский подарок, но только ваш!» И с этими словами он к моему изумлению извлек из-под стола хорошо знакомый мне ультрабук.

Дело об оценке производительности

Я подарил его на Рождество миссис Хадсон, поскольку та давно мечтала завести кулинарный блог о любимых блюдах Холмса.

- Простите, Холмс, но почему мой подарок у вас и зачем вы прячете его под столом?! 
- Видите ли, Ватсон… В системе кое-что не работает, и миссис Хадсон попросила меня исправить это. Она просто не хотела беспокоить вас по пустякам.

Холмс явно что-то скрывал, ибо я сразу сказал миссис Хадсон, чтобы она не стеснялась обращаться ко мне по любым вопросам. «По-моему, вы что-то недоговариваете…», — слегка надавил я и вопросительно посмотрел на детектива.

- Миссис Хадсон просила не говорить вам, так что пусть это останется между нами. Ее племянник приходил вчера и что-то оптимизировал в системе…
- И что же перестало работать после его «оптимизации»?
- Сущая мелочь — не вычисляется индекс производительности. Смотрите!

Странная ошибка

Холмс запустил оценку производительности, и через несколько секунд она завершилась ошибкой.

Дело об оценке производительности

«Знаете, Ватсон, раз уж вы здесь и проявили такой неподдельный интерес к проблеме, почему бы вам самому не исправить эту ошибку?», — Холмс хитро улыбнулся и торжественно вручил мне ноутбук.

Он тут же демонстративно открыл Вестник OutsideTheBox, самоустраняясь от решения проблемы.

Я сразу же выяснил, что первой жертвой «оптимизации» стал механизм защиты системы. Конечно, Холмс и не подкинул бы мне эту задачу, если бы восстановить систему было так просто.

Текст сообщения говорил лишь о том, что Windows, скорее всего, не знает причины ее появления. В течение следующих 45 минут я убедился в нормальной работе всего оборудования, проверил наличие новых драйверов с помощью Windows Update и перерыл журнал событий в поисках более внятного сообщения об ошибке. Идеи закончились…

«Ватсон, в журнале WinSat есть что-нибудь интересное?», — вывел меня из тягостных раздумий голос Холмса.

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

О чем рассказал журнал WinSat

Детектив нажал Win + R и быстро ввел путь к файлу:

1
%WinDir%\Performance\WinSat\winsat.log

Он прокрутил текст до конца, впился в него взглядом на несколько секунд и с удовлетворением произнес: «Отлично!»

Дело об оценке производительности
Увеличить рисунок

- Холмс, вы можете объяснить, что вас так обрадовало?
- Это же элементарно, Ватсон! В отчете содержится ключ к нашей загадке!

Он не спеша раскурил трубку и начал объяснять, выделяя строки отчета для наглядности.

- К оценке система должна подойти во всеоружии! Другими словами, электропитание нужно переключить на высокую производительность, но сначала сохраняется текущий план.

1
2
3810776 (4080) - winsat\syspowertools.cpp:0983: > Read the active power scheme as '381b4222-f694-41f0-9685-ff5bb260df2e'
3810823 (4080) - winsat\main.cpp:2793: > power policy saved.

- Вы хотите сказать, что Windows сначала запоминает текущий план, чтобы потом вернуть его обратно?
- Верно, Ватсон! Но дальше-то как раз и возникает проблема. Windows пытается задействовать высокопроизводительный план, но не находит его!
- А как она его ищет?
- Каждому стандартному плану электропитания изначально присвоен свой идентификатор (GUID). Именно на него опирается Windows, пытаясь изменить план.

1
2
3811010 (4080) - winsat\syspowertools.cpp:1018: ERROR: Cannot set the current power scheme to '8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c': Переданное имя копии не было распознано поставщиком данных WMI как допустимое имя.
3811010 (4080) - winsat\main.cpp:2810: ERROR: Can't set high power state.

- Получается, что наш оптимизатор удалил один из стандартных планов электропитания?
- Иначе и быть не может!

Холмс открыл параметры электропитания, и я увидел, что высокопроизводительный план отсутствует. Вместо него был задан второй сбалансированный план.

Дело об оценке производительности

Причина проблемы стала мне понятна. Но не успел я обдумать решение, как Холмс мне его показал. 

Как вернуть план

Детектив открыл командную строку и выполнил в ней:

1
powercfg -list

- Смотрите, Ватсон! Команда powercfg показывает то же самое, что и панель управления – в списке нет плана «Высокая производительность».
- Точно!

Дело об оценке производительности
Увеличить рисунок

Холмс открыл на своем компьютере виртуальную машину с чистой установкой Windows и подключил к ней флэшку. Я сразу понял, что он собирается перенести план «Высокая производительность» в систему миссис Хадсон. Для экспорта плана ему хватило одной команды:

1
powercfg -export F:\h.pow 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

Затем детектив подключил флэшку к ноутбуку и импортировал план:

1
powercfg -import D:\h.pow 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

Дело об оценке производительности
Увеличить рисунок

Холмс тут же сделал его активным, после чего удалил лишний сбалансированный план электропитания.

«Ну, вот и все, Ватсон!», — улыбнулся он. «Поскольку командная строка у нас уже открыта, давайте запустим оценку производительности из нее»

Дело об оценке производительностиХолмс выполнил команду winsat formal, и процесс оценки сразу пошел, в итоге завершившись без сучка и задоринки!

- Браво, Холмс! Но что это за таинственный WinSat?
- Ватсон, когда вы в последний раз были в библиотеке?

Как Windows оценивает свою производительность

- Когда вы запускаете оценку из панели управления, выполняется команда winsat formal, вычисляющая индекс каждого устройства. Параметры каждого теста можно менять.

Холмс открыл папку с отчетом WinSat.

Дело об оценке производительности

- И все эти видеоклипы нужны для оценки работы?
- Для стандартного теста система обходится файлом winsat.wmv, чтобы оценить кодирование и воспроизведение видео на двух платформах – старой DirectShow и Media Foundation, появившейся в Windows Vista.
- Значит, выполняя оценку из командной строки можно указать и другой клип из папки…
- Конечно, Ватсон! А вот оценка производительности процессора происходит немного иначе — файл shell32.dll зашифровывается и расшифровывается с помощью алгоритма AES-256.

Я предположил, что с помощью WinSat можно быстро оценить скорость диска без сторонних программ, и Холмс моментально продемонстрировал мне это.

Дело об оценке производительности
Увеличить рисунок

«Для оценки последовательного чтения и записи используется ключ -seq, а заменив его на-ran, вы можете измерить скорость случайного доступа», — добавил он.

1
2
winsat disk -ran -read -drive %SystemDrive:~0,1%
winsat disk -ran -write -drive %SystemDrive:~0,1%

Холмс открыл папку DataStore.

Дело об оценке производительности

«Здесь хранятся отчеты о тестировании каждого компонента и сводка», — детектив дважды щелкнул сводный XML-файл и продемонстрировал результаты отчета.

«Мистер Холмс, значит, вы все-таки привлекли доктора к лечению проблемы?», — внезапно раздался от дверей кабинета укоризненный голос миссис Хадсон.

Детектив поднялся и с улыбкой вручил ей ноутбук: «Меня трудно застать врасплох, но сегодня такое произошло дважды. Позвольте мне загладить свою вину!» Он бережно достал скрипку из футляра, и через мгновение кабинет наполнился волшебными звуками.

 

 


Памятуя о том, что некоторым читателям не нравится серия о Шерлоке Холмсе, напоминаю: я пишу ее для развлечения — вашего и своего :) Надеюсь, что помимо развлечения вы узнаете что-то новое!

А как у вас обстоят дела с производительностью вашей основной системы?Нажмите Win + R и выполните:

control /name Microsoft.PerformanceInformationAndTools

В открывшемся окне щелкните «Отображение и печать подробных сведений» и сделайтетакой скриншот. Поделитесь ссылкой на него в комментариях!

Vadim Sterkin

Вадим является владельцем этого блога, и большинство записей здесь вышло из-под его пера. Он также давно и успешно занимается развитием сообщества OSZone.net. Подробнее обо всем этом здесь.

Website - Twitter

Комментариев: 72 RSS Comments

  1. maxx  

    Вот уж оптимизировал, так оптимизировал. Интересно, каких результатов хотел добиться «оптимизатор»?

      (Цитировать)  (Ответить)

    Годится! Согласны? +1 -1 +9

  2. Павел  

    http://itmages.ru/image/view/398784/fa945321

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

  3. Геннадий-2011  

    Извините, если offtop, но -
    «Детектив открыл командную строку и выполнил в ней:

    powercfg –list»

    Если скопипастить Вашу строчку, то:
    C:\Users\…………>powercfg <b>–</b>list
    Неправильные параметры — используйте параметр "/?" для получения справки
    Если потом удалить «-list» и ввести вручную, то тогда:
    C:\Users\…………>powercfg -list

    Существующие схемы управления питанием (* — активные)
    ————————————
    GUID схемы питания: 381b4222-f694-41f0-9685-ff5bb260df2e (Сбалансированный)
    GUID схемы питания: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (Высокая производительность) *
    GUID схемы питания: a1841308-3541-4fab-bc81-f71556f20b4a (Экономия энергии)
    Дело в -?

    А так — за "расследование" — спасибо!

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +3

    1. Vadim Sterkin  

      Геннадий, я уже все исправил.

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 +2

  4. Алексей Г  

    Да… .Вам попадаются весьма интересные случаи))) У меня максимум 5-минутная загрузка системы из-за qip (точнее его сервиса защиты домашней страницы) и тормознутостьноубука из-за вставленного в кардридер адаптера без флешки.

    Стационар
    http://cs5966.vk.com/u26504157/123824118/y_7b04fcc6.jpg
    Ноутбук
    http://cs5966.vk.com/u26504157/123824118/y_95fc50e3.jpg

    Да, считаю что если среди пользователей индекс служит как бы «понтом», то для тех, кто обслуживает — это ориентир быстродействия)) Т.е. по индексу можно судить о примерном времени выполнении задачи, и если задача выполняется очень медленно — индекс подсказывает, что так не должно быть.

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Алексей, да случай был вроде и не сложный, но вовсе неочевидный, особенно с учетом текста ошибки.

      Индекс производительность я чаще всего смотрю в… магазинах :)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 +3

  5. Viktor Golub  

    Браво, Шерлок! Ой, в смысле Вадим! =)
    Великолепная запись!
    Узнал для себя кое-что новое о механизме WinSAT, спасибо!
    Дела с производительностью моего основного лэптопа выглядят следующим образом:http://www.screenshots.cc/photos/original/54588-jwckj.jpg
    Хочу купить себе ещё 1 планку RAM на 4Гб, а со временем и SSD, тогда получится полная нирвана ;)

    P.S. Даже не подозревал что кому-то могут не нравится твои записи в стиле о Шерлоке Холмсе :( Но ты этих людей не слушай, пиши ещё в таком стиле, я от этого в восторге!!! :)

      (Цитировать)  (Ответить)

    Годится! Согласны? +1 -1 +4

    1. Vadim Sterkin  

      Спасибо, Виктор! Память надо покупать, пока она «в ходу», а то дорогой будет :)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 +2

  6. Dmitry Razbornov  

    Вадим, приветствую, хорошая статья, спасибо большое!
    Про powercfg прочитал в рамках 70-680 )), очень понравилось.
    Вообще, командная строка -моя маленькая слабость, люблю ее использовать, удобно. А про внутренности winsat не знал, спасибо.
    http://imageshack.us/photo/my-images/43/72340839.jpg

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Спасибо, Дмитрий! winsat — интересная штука, она же еще и во время установке используется ;)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 +1

  7. Dmirtiy Razbornov  

    надо вводить как обычно, через слеш )) холмс ключик не так вбил )
    C:\Windows\system32>powercfg /list

    Существующие схемы управления питанием (* — активные)
    ————————————
    GUID схемы питания: 381b4222-f694-41f0-9685-ff5bb260df2e (Сбалансированный)
    GUID схемы питания: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (Высокая производител
    ность)
    GUID схемы питания: a1841308-3541-4fab-bc81-f71556f20b4a (Экономия энергии) *

    C:\Windows\system32>

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +2

  8. Алексей Г  

    Dmirtiy Razbornov,

    Насколько мне известно, в 7-ке (а наверное ещё и в vista ) вместо слэша ‘ / ‘ используется тире. Сделано это, видимо, для упрощения работы. (параметры запуска сразу выделяются, да и сами слэши \ / иногда путаются)

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +2

  9. Andrii  

    http://cut.ms/budc

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +2

  10. Dmitry Razbornov  

    Алексей Г: Алексей »

    А я предполагал, что смотря любой синтаксис справки предполагает тире, а команды вводятся со слешем.
    Слеши не путал, а вот сейчас с командой и вашем комментарием призадумался.
    Что характерно, работает и так
    ping /a 8.8.8.8
    и так
    ping -a 8.8.8.8
    Предлагаю экспертов с мировым именем по СМД высказать авторитетное мнение ))

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +1

  11. Дмитрий Разборнов  

    А может, у пинга просто синтаксис наследный, как вы говорите, а powercfg команда новая, вишневая (вистовая) )

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      powercfg точно была в XP.

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 0

  12. Александр  

    Геннадий-2011: Извините, если offtop, но -
    «Детектив открыл командную строку и выполнил в ней:
    1
    powercfg –list»Если скопипастить Вашу строчку, то:
    Если потом удалить «-list» и ввести вручную, то тогда:
    Дело в «–</b»?А так — за «расследование» — спасибо!

     »

    «Копипастить» бездумно не стоит. Всегда проверяйте результат копирования текста в буфер обмена перед тем, как пытаться его использовать! Если Вы чаще работали в командной строке, то вышеописанного не произошло бы. :)

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +1

  13. Vadim Sterkin  

    По поводу минусов, тире и слэшей. Команда powercfg прекрасно воспринимает как минус так и слэш в качестве ключей.

    Просто при конвертации из DOCX в HTML многие «минусы» преобразовались в тире, поэтому скопированные команды не работали. Либо блог сам преобразует их, надо разбираться.

    Я исправил текст команд, проблем быть не должно. Что касается остального текста, то на досуге поправлю.

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 +2

  14. 1_137  

    Тут только капслок…

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Спасибо. Советую вам взять отвертку и выковырять клавишу Caps Lock :)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 +2

  15. Edd  

    http://i.imgur.com/qo6DY.png

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Надо полагать, что стоит SSD :)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 0

  16. Максим  

    Вадим, вы как всегда приятно поразили своим рассказом!
    Рассказы о Холмсе делают обычно пресные статьи гораздо вкуснее :)

    Что касается не возможности выполнить оценку — сам пару недель назад заметил, что она у меня не работает, хотя всегда работала и я ни чего не оптимизировал. А сейчас оказывается опять заработала!
    Так что не могу и предположить, что было тому причиной, но вылечила «заряженная» вами статья, товарищ Кашпировский )))

    Edd: http://i.imgur.com/qo6DY.png
    »

    Интересно, у нас с вами одинаковый процессора, но разная оценка
    http://s018.radikal.ru/i519/1201/67/cfbec4a5d6e8.jpg

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Спасибо, Максим!

      По поводу различной оценки CPU… Mожно сравнить индивидуальные показатели по каждому из тестов. В XML-отчете формальной оценки есть узел CPU Metrics, там результаты.

      Вообще, все параметры командной строки, используемые в стандартных тестах, описаны в схеме Winsat.

      Например, для CPU это

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      <!--    CompressionMetric -->
               <!--       argument: cpu -compression -->
               <!--    EncryptionMetric -->
               <!--       argument: cpu -encryption -->
               <!--    Compression2Metric -->
               <!--       argument: cpu -compression2 -->
               <!--    Encryption2Metric -->
               <!--       argument: cpu -encryption2 -->
               <!--    DshowEncodeTime -->
               <!--       argument: media -input {winsatencode.wmv} -encode {winsat.prx} -->

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 0

  17. freeman440  

    У меня из-за HDD общая оценка получается низкой, чем могла бы быть))
    http://s1.lostpic.net/images/395f52f23e03debed6d0bcbd2d5a79c3.jpg

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

    1. Vadim Sterkin  

      Да, а так ровная конфигурация. Копите на SSD, будет в районе 7 баллов :)

        (Цитировать)  (Ответить)

      Ваша оценка: +1 -1 0

  18. Валерий  

    Vadim Sterkin: Спасибо. Советую вам взять отвертку и выковырять клавишу Caps Lock :)
    »

    А заодно ещё что-нибудь, что при нажатии мозги лудрит!

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

  19. Edd  

    Vadim Sterkin,

    SSD пока в планах) — 2 диска в RAID0 в массиве Matrix RAID

      (Цитировать)  (Ответить)

    Ваша оценка: +1 -1 0

  20. Edd  

    Продолжение »

© windowssof

Сделать бесплатный сайт с uCoz