Что делает профилировщик ЦП Chrome JavaScript, что может повлиять на производительность программы (во время профилирования)?

Недавно мне удалось ввести ошибку в мой скрипт, из-за которой частота кадров физики время от времени падает со 100 кадров в секунду до 10 кадров в секунду (это приложение типа моделирования физики).

Я пытался найти причину уже довольно давно и наткнулся на странное явление: когда частота кадров падает до 10 кадров в секунду, если я запускаю профилировщик ЦП Chrome, он снова увеличивается до 100 кадров в секунду и остается там даже после того, как я остановить профайлер.

Итак, я поиграл с профилировщиком, и кажется, что он отключает условные точки останова во время работы, что повышает производительность. Убедившись, что я удалил все точки останова, очистил кеш и перезапустил процесс Chrome, я уверен, что точки останова не имеют к этому никакого отношения.

Итак, что я хотел бы знать: делает ли Chrome что-либо еще, что может повлиять (особенно увеличить) производительность моего приложения во время работы профилировщика?

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

Спасибо!

EDIT: я почти уверен, что это как-то связано со связью между потоками, хотя и не совсем уверен.


person Community    schedule 29.08.2015    source источник
comment
Почему бы вам не отправить это обратно в Chrome?   -  person Liam    schedule 02.10.2015
comment
Потому что я до сих пор не уверен, что это просто что-то, что я делаю неправильно   -  person    schedule 02.10.2015
comment
Увеличивается ли использование памяти при снижении частоты кадров? Я мог видеть профиль, преднамеренно следящий за тем, чтобы память была очищена. Я также мог видеть связь между потоками, создающую утечку.   -  person freak3dot    schedule 21.10.2015
comment
@Лиам хороший звонок. Лучшее место для сообщения об ошибках разработчиков — crbug.com.   -  person Paul Irish    schedule 26.10.2015
comment
@joerocc, можешь написать о проблеме? Мы хотели бы погрузиться.   -  person Paul Irish    schedule 26.10.2015


Ответы (1)


Мы заметили значительное снижение производительности при открытых DevTools. Проблема появилась месяца 2-3 назад. С открытым DevTools наши тесты QUnit начинаются очень медленно. Страница просто зависла на несколько секунд, прежде чем тесты начинают идти. У нас есть довольно большое приложение с примерно 10Mb JavaScript и зависимостями. Я полагаю, что вы могли столкнуться с подобной проблемой.

Вот список активных проблем Chromium (это база с открытым исходным кодом для браузера Chrome): https://code.google.com/p/chromium/issues/list Поиск по запросу "производительность инструментов разработки" дает мне несколько экранов проблем.

person Ivan Nikitin    schedule 26.10.2015