Создатель JSON представил новый тест производительности JavaScript в web-браузерах
По мнению некоторых исследователей, проанализировавших скорость работы наиболее популярных веб-служб, обычные тестовые комплекты, такие как SunSpider, V8 и Dromaeo, Kraken, rwBench и Peacekeeper, являются синтетическими тестами и не отражают поведение реальных web-приложений. Результаты тестирования также искажаются из-за того, что производители браузеров при выпуске новой версии стремятся максимально оптимизировать выполнение операций, влияющих на скорость выполнения типовых тестов. Опасность такой оптимизации связана не столько с накруткой показателей, сколько с тем, что производительность реальных приложений часто остаётся за кадром, поэтому в некоторых ситуация web-разработчикам приходится подстраиваться под JavaScript-движки и для повышения производительности использовать сомнительные приёмы программирования. Дополнительно упоминаются программы, завязанные на операциях с DOM (Document Object Model), на скорость работы которых в основном влияет производительность работы API DOM, а не производительность JavaScript-движка.
Исправить ситуацию по мнению Дугласа может новый тест производительности, который был бы максимально приближен к работе больших и правильно написанных web-приложений. В качестве основы для проведения тестов было решено использовать развиваемый много лет пакет JSLint, отличающийся высоким качеством кода, достаточно сложной логикой работы и наличием типичных для обычных web-приложений операций, таких как разбор строк, выполнение регулярных выражений и применение шаблонов. JSLint предназначен для анализа JavaScript-кода, оценки его качества и автоматического выявления ошибок.
Измерив время проверки в JSLint собственных исходных текстов (размер выполняемого файла jslint.js составляет около 300 Кб или 6.5 тысяч строк кода), Дуглас получил неожиданные результаты, существенно расходящиеся с обычно используемыми тестовыми пакетами. Быстрее всего проверка была выполнена в браузере Internet Explorer 10, Firefox 4 и Opera 11 показали средние результаты, а медленнее всех оказался Chrome 10 (примечательно, что Chrome 10 лидирует при выполнении тестов SunSpider и V8):
- IE 10 - 0.562;
- Firefox 4.0.1 - 0.956;
- Safari 5.0.5 - 0.984;
- Opera 11.10 - 1.106;
- IE 9 - 1.159;
- Chrome 10 - 2.801.
Источник: http://www.opennet.ru/opennews/art.shtml?num=30338
|
0 | Tweet | Нравится |
|