+7 (495) 229-0436   shopadmin@itshop.ru 119334, г. Москва, ул. Бардина, д. 4, корп. 3
 
 
Вход
 
 
Каталог
 
 
Подписка на новости
Новости ITShop
Windows 7 и Office: Новости и советы
Обучение и сертификация Microsoft
Вопросы и ответы по MSSQLServer
Delphi - проблемы и решения
Adobe Photoshop: алхимия дизайна
 
Ваш отзыв
Оцените качество магазина ITShop.ru на Яндекс.Маркете. Если вам нравится наш магазин - скажите об этом Google!
 
 
Способы оплаты
 
Курс расчета
 
 1 у.е. = 91.78 руб.
 
 Цены показывать:
 
 
 
 
  
Новости, статьи, акции
 

JavaScript: повышение производительности при запуске IE с помощью Visual Studio

29.10.2014 12:38

  • При разработке веб-сайтов на VS я всегда запускаю IE, нажимая F5 или щелкая HTML-страницу правой кнопкой мыши и выбирая пункт View in Browser (Просмотреть в браузере).
  • В ходе моих недавних экспериментов с HTML5 я пытался написать код, который копирует кадры видеозаписи в формате MP4, переворачивает изображение вверх ногами и затем снова визуализирует эти кадры на полотне.
  • В этом коде для обработки кадров используется метод requestAnimationFrame, с его помощью также отображается достигнутый показатель количества кадров в секунду (кадр/с).
  • Вот мой результат:

  • Всего четыре кадра в секунду. Пытаясь проанализировать эту проблему, я применил  xperf следующим образом:
    • Откройте окно командной строки с правами администратора.
    • Задайте значения следующих переменных среды:
      • set _NT_SYMBOL_PATH=SRV*C:\websymbols*http://msdl.microsoft.com/downloads/symbols
      • set _NT_SYMCACHE_PATH=C:\websymbols
    • Откройте веб-сайт с помощью IE.
    • Выполните команду:
      • xperf -on base
      • ...здесь выполняется профилирование, подождите несколько секунд...
      • xperf -d trace.etl
      • ...выполняется сохранение файла трассировки...
    • Откройте файл трассировки в средстве просмотра:
      • xperf trace.etl
    • В средстве просмотра:
      • Щелкните Trace (Трассировка) --> Load Symbols (Загрузить символы).
      • Откройте кадр: CPU Sampling by Process --> iexplorer.exe  (Thread ID that shows high CPU usage) (Данные ЦП по процессам  --> iexplorer.exe (идентификатор потока, отображающий высокую загрузку ЦП)).
      • Выберите область графика с высокой нагрузкой на ЦП, затем щелкните ее правой кнопкой мыши и выберите пункт Summary Table (Сводная таблица).
      • Дождитесь окончания загрузки символов и появления окна:

  • Отсортируйте таблицу, щелкнув столбец Weight (Вес).
  • На снимке экрана видно, что 40,57 % вычислительной мощности ЦП было израсходовано на библиотеку jscript9.dll (Chakra, механизм поддержки JavaScript в IE), а 15,24 % расходуется на вызовы функций к Js::InterpreterStackFrame::ProcessWithDebugging.
  • Слова ProcessWithDebugging указывают, что происходит отладка, которая также требует дополнительных вычислительных мощностей при выполнении сценария.
  • Чтобы протестировать код JavaScript в браузере IE в режиме release mode нельзя просто указать для собранной программы VS режим Release (Релиз), поскольку это не приведет к изменению клиентского кода.
  • Вместо этого оставьте открытое окно IE и просто приостановите исполнение кода JavaScript, например, нажав какую-нибудь кнопку добавления или приостановки видеозаписи.
  • Затем откройте новый экземпляр IE. В операционных системах Windows 7 или 8 это делается следующим образом: щелкните правой кнопкой мыши значок IE и затем щелкните значок Internet Explorer в контекстном меню.
  • Скопируйте URL-адрес из первого окна IE в новое окно и посмотрите, что произойдет:

  • Теперь этот код достигает 54 кадров в секунду из 60 возможных!
  • Если взглянуть на результаты трассировки этого нового окна, то можно увидеть, что время выполнения кода JavaScript стало практически незначительным:

  • Вместо этого большая часть времени тратится на обработку матричных операций полотном:

  • Сравнительный анализ различий в производительности кода можно найти в моей статье под названием  JS: Dots are bad, M'kay? ("JS: когда точки вредны"):
  • Запуск IE из VS
    array.length: 5881
    len: 4678

    Math.floor: 6537
    / 0: 4566

    документ не кэширован: 6452
    документ кэширован: 2831

    Запуск новой копии IE отдельно от VS
    array.length: 786
    len: 664

    Math.floor: 869
    / 0: 714

    документ не кэширован: 3729
    документ кэширован: 44

Ссылки по теме

  
Помощь
Задать вопрос
 программы
 обучение
 экзамены
 компьютеры
Бесплатный звонок
ICQ-консультанты
Skype-консультанты

Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 
Бестселлеры
Курсы обучения "Atlassian JIRA - система управления проектами и задачами на предприятии"
Microsoft Windows 10 Профессиональная 32-bit/64-bit. Все языки. Электронный ключ
Microsoft Office для Дома и Учебы 2019. Все языки. Электронный ключ
Курс "Oracle. Программирование на SQL и PL/SQL"
Курс "Основы TOGAF® 9"
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год. Электронный ключ
Курс "Нотация BPMN 2.0. Ее использование для моделирования бизнес-процессов и их регламентации"
 

О нас
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.

На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям.

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

В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.



 

О нас

 
Главная
Каталог
Новинки
Акции
Вакансии
 

Помощь

 
Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 

Способы оплаты

 

Проекты Interface Ltd.

 
Interface.ru   ITShop.ru   Interface.ru/training   Olap.ru   ITnews.ru  
 

119334, г. Москва, ул. Бардина, д. 4, корп. 3
+7 (495) 229-0436   shopadmin@itshop.ru
Проверить аттестат
© ООО "Interface Ltd."
Продаем программное обеспечение с 1990 года