Unity 6.3
0 онлайн 95 гостей 3 в системе
Вход
Оптимизация производительности Шаг 3 из 7

CPU Использование Profiler Ссылка модуля

Модуль CPU Использование Profiler разделен на диаграммы в верхней половине окна Profiler, и имеет временные и иерархические представления в панели деталей в нижней половине окна.

Окно Profiler с рамкой в выбранном модуле CPU Использование Profiler. Представление Timeline выбрано в панели деталей.
Окно Profiler с рамкой в выбранном модуле CPU Использование Profiler. Представление Timeline выбрано в панели деталей.

Категории диаграмм

Диаграмма модуля CPU Usage Profiler отслеживает время, затраченное в главном потоке приложения.

Диаграмма Описание
Рендеринг Сколько времени ваше приложение тратит на рендеринг графики.
Скрипты Количество времени, которое приложение тратит на запуск скриптов.
Физика Сколько времени ваше приложение тратит на физику системы.
Animation Количество времени, которое ваше приложение тратит на анимацию рендеров сетки с кожей, GameObjects и других компонентов в вашем приложении. Это также включает время, затраченное на расчеты для систем, используемых компонентами Animation и Animator.
GarbageCollector Сколько времени ваше приложение тратит на запуск управляемый мусоросборщик.
VSync Время, которое ваше приложение тратит на один кадр в ожидании синхронизации с targetFrameRate или следующим VBlank. Для определения значения VSync Unity использует значение QualitySettings.vSyncCount, целевую частоту кадров или максимальное значение по умолчанию или принудительное максимальное значение VSync платформы, на которой работает ваше приложение. Дополнительные сведения о VSync см. в документации по маркерам Profiler.
Глобальное освещение Сколько времени ваше приложение тратит на освещение.
UI Сколько времени ваше приложение тратит на отображение UI.
Прочие Как много времени ваше приложение тратит на код, который не подпадает ни под одну из других категорий. Это включает такие области, как весь EditorLoop, или накладные расходы на профилирование, когда вы профилируете в режиме воспроизведения. Для получения дополнительной информации см. Режим воспроизведения и образцы редактора.

Панель инструментов панели сведений о модуле

Когда вы выбираете модуль CPU Usage, на панели сведений отображается разбивка времени, потраченного приложением в выбранном кадре. Используйте панель инструментов в верхней части панели для перехода между представлениями.

Свойство Описание
Раскрывающееся меню просмотра данных времени Выберите, чтобы отображать данные времени в виде временной шкалы или иерархической таблицы. Чтобы изменить отображение, используйте раскрывающееся меню в области сведений (настроить на Timeline Доступны следующие представления:
  • Timeline: Отображает разбивку времени для определенного кадра вдоль временной оси длины кадра.

    Это единственное представление, которое можно использовать для просмотра времени на всех потоках одновременно и в моменты времени в кадре, когда они произошли, так что вы можете коррелировать время между потоками. Например, система заданий рабочие потоки запускаются после того, как система на главном потоке планирует их. Для получения дополнительной информации см. Timeline вид.
  • Hierarchy: группирует данные о времени по их внутренней иерархической структуре. Это представление показывает вызванные приложением элементы в виде убывающего списка, по умолчанию отсортированного по затраченному времени. Информацию можно также упорядочить по объёму выделенной скриптовой памяти или по количеству вызовов.
  • Raw Hierarchy: Отображает данные о времени в иерархической структуре, аналогичной стекам вызовов, где происходило время. Unity перечисляет каждый стек вызовов отдельно в этом режиме, вместо того, чтобы объединять их, как это делается в представлении Hierarchy.
  • Перевернутое Hierarchy: Группировка образцов по маркеры профилей На первом уровне иерархии отображается элемент для каждого маркера профилера. На втором уровне иерархии отображается элемент для каждого маркера профилера.

    Разверните элемент в дереве, чтобы отобразить маркеры, которые содержат этот элемент в их примерном стеке. Эта опция помогает выявить более крупные проблемы производительности, вызванные большим количеством экземпляров небольших последствий для производительности. Такие проблемы могут быть труднее обнаружить в дереве. Timeline или неинвертированные представления иерархии.
Живая настройка Отображает данные о выбранном кадре в реальном времени в панели деталей модуля при записи новых данных в режиме воспроизведения или редакторе. По умолчанию эта настройка отключена, и панель деталей модуля пуста при записи данных.

Примечание: Эта настройка увеличивает нагрузку на EditorLoop при перекраске окна Profiler.
Выбор резьбы (только для Hierarchy) Используйте раскрывающееся меню Поток, чтобы выбрать конкретный поток, например Главный поток или Поток отображения, для проверки в этих представлениях.
Детали dropdown (Hierarchy (только для просмотра) Отображение информации о том, где приложение вызывает и использует профилированные функции. Выберите один из следующих параметров:
  • Без деталей: Не отображает дополнительную информацию
  • Связанные данные: Отображает список UnityEngine.Objects, которые используют перегрузку Begin, связанную с выборкой Profiler.
  • Звонки: Отображает, откуда вызван выбранный образец и какие другие функции он вызывает.

Больше (ru) настроек меню

Меню Дополнительно (a) содержит следующие параметры:

Настройка Описание
Показать Полные Имена Методов Скриптов Отображает полные имена всех методов скриптов (Assembly::Class::MethodName).
Показать события потока (Timeline только просмотр) Отображает взаимосвязь между системами, заданиями и потоками. При включении этого параметра Profiler добавляет белые метки событий к образцам Profiler, которые планируют задания или ожидают завершения запланированных заданий. Несвязанные образцы также затемнены, чтобы облегчить визуализацию выбранного образца.

Когда вы выбираете образец, Profiler соединяет соответствующие маркеры событий потока вместе с линиями. Более толстая линия выделяет конкретную выбранную вами линию потока. Например, begin точки отбора проб к двум другим next образцы, когда вы нажимаете на один из next образцы, Profiler рисует более толстую линию к нему.

Profiler добавляет следующие типы стрелок к образцам:
  • Стрелка вниз (s): Указывает начало потока, и что эта выборка запланировала некоторые работы.
  • Стрелка вправо (s): Указывает следующий элемент в потоке, и что другой образец запланировал это.
  • Стрелка вверх (s): Указывает на окончание потока и на то, что работа завершена или синхронизирована на этом образце.
Свернуть EditorOnly образцы (Hierarchy только просмотры) Отображает в представлении сэмплы EditorOnly. По умолчанию Unity сворачивает все сэмплы EditorOnly в представлениях Hierarchy. Сэмплы EditorOnly — это сэмплы в цикле Player, возникающие только из-за проверок безопасности, выполняемых исключительно в Editor. Когда сэмплы свёрнуты, их значение GC.Alloc не включается в значение GC.Alloc родительского сэмпла. Дополнительные сведения см. в разделе Сэмплы режима Play и Editor.

Timeline подсказки

Когда вы выбираете образец в представлении Timeline, tooltip на выбранном образце предоставляет дополнительные сведения, такие как количество экземпляров и общее время этого образца во всех потоках. Вы можете выбрать текст в tooltip и скопировать его и использовать кнопки для дальнейшего взаимодействия с образцом.

Подсказка Описание
Копировать Скопируйте стек вызова и все содержимое tooltip в буфер обмена.
Показать Выберите это раскрывающееся меню, чтобы просмотреть образец в различных контекстах:
  • Hierarchy: Изменить вид выбранного образца на вид Hierarchy.
  • Raw Hierarchy: Изменить вид выбранного образца Raw Hierarchy вид.
  • Inverted Hierarchy: Изменение вида выбранного образца Inverted Hierarchy view.
  • Полная информация о стеках звонков: Включите это свойство для отображения полного списка адресов указателей методов стека вызова.

    Unity записывает стеки вызовов в виде списка адресов указателей методов, которые используются для отображения имени метода, пути к файлу и номера строки стека. Когда присутствует только адрес указателя, Unity игнорирует его, чтобы сохранить экранное пространство для действительных элементов, которые имеют дополнительную доступную информацию.
  • Выбранный стек образцов: Просмотр деталей стека образцов. Unity открывает эту информацию в отдельном окне. Затем вы можете скопировать информацию о стеке образцов в буфер обмена.

    Стек образцов отличается от стека вызовов метода, поскольку Unity не связывает каждый образец с конкретным методом и не записывает каждый вызов как образец. Если вы выбираете образец в другом кадре и в отображаемом кадре нет образца с таким же стеком образцов, в этом окне показывается как стек образцов первоначального выбора, так и приблизительный выбор для этого кадра.

Колонки Hierarchy

В представлениях иерархии для каждого элемента отображаются следующие подробные сведения:

Колонка Описание
Итого 2010 год Общее количество времени Unity, потраченное на конкретную выборку, в процентах от общего времени кадра.
Самостоятельные Общее количество времени Unity, потраченное на конкретную выборку, в процентах от общего времени кадра, исключая время из подвыборок.
Звонки Количество вызовов, сделанных к этому образцу в этом кадре. В Raw Hierarchy представлении значения в этом столбце всегда 1, потому что Profiler не объединяет иерархию образцов.
GC Аллок Количество памяти, выделенное Unity в текущем кадре. Сборщик мусора управляет памятью стека скриптов.

Более подробную информацию об управляемом стеке см. в документации Понимание автоматического управления памятью.
Время мс Общее количество времени Unity затраченные на конкретную выборку, в миллисекундах.

Примечание: Если ваше приложение использует система работы или многопоточное отображение, эта информация может вводить в заблуждение, поскольку она содержит только время Unity чтобы изменить поток, выберите Нить в верхней части страницы Hierarchy Сэр.
Самостоятельные Общее количество времени Unity, потраченное на определенный образец, в миллисекундах, исключая время Unity, потраченное на вызов подфункций.
Предупреждение (⚠) Отображает, сколько раз приложение вызвало предупреждение в текущем кадре. Дополнительные сведения см. в разделе Предупреждения о производительности.

Дополнительные ресурсы