Представление "Использование"

Представление использования содержит информацию о ЦП, GPU и других системных ресурсах, которые используются текущим процессом. Выберите Анализ>Визуализатор параллелизма, чтобы запустить визуализатор. В нем показана средняя интенсивность использования ядра во времени анализируемым процессом, процессом бездействия системы, системным процессом и другими процессами, запущенными в системе. Оно не показывает, какое из ядер активно в заданный момент времени. Например, если два ядра были загружены на 50 процентов производительности в течение заданного периода времени, представление показывает, что использовалось одно логическое ядро. Представление создается путем разделения времени профилирования на короткие временные сегменты. Для каждого сегмента на графике показано среднее количество потоков процесса, выполняемых в логических ядрах в течение этого интервала.

CPU Utilization View

Граф показывает время (по оси x) и среднее количество логических ядер, которые используются целевым процессом, процессом бездействия системы и системным процессом. (Процесс бездействия системы показывает простаивающие ядра. Системный процесс является процессом Windows, который может выполнять работу от имени других процессов.) Для остальных процессов, которые запущены в системе, определяется использование остальных ядер.

Количество логических ядер показано по оси y. Windows рассматривает одновременную поддержку многопоточности как логические ядра (например, технологию Hyper-Threading). Следовательно, система с четырехъядерным процессором, поддерживая два потока на ядро, будет выглядеть как восьмиядерная. Это также применимо к представлению ядер. Дополнительные сведения см. в разделе Представление "Ядра".

Диаграмма активности GPU показывает число модулей DirectX во времени. Модуль используется, если он обрабатывает пакет прямого доступа к памяти. На диаграмме не показан определенный модуль DirectX (например, модуль 3D, модуль видео и др.).

Характер использования

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

Если вы заинтересованы в настройке производительности, вы можете попробовать обнаружить поведение, расходящееся с ожиданиями. Также можно обнаружить наличие и причину областей малой загрузки логических ядер ЦП. Можно также обнаружить шаблоны использования между ЦП и GPU.

Если вам нужно распараллелить приложение, можно выполнить поиск областей выполнения, ограниченных производительностью ЦП, или областей, где ЦП не загружается.

Области, ограниченные производительностью ЦП, выделены зеленым цветом. На графе показано одно используемое ядро, если приложение является последовательным.

Области, где процессор не загружен, выделены серым цветом. Таким образом могут быть представлены области, где приложение простаивает или выполняет блокирующие запросы ввода-вывода, что предоставляет возможность для использования параллелизма путем перекрытия с другими операциями, ограниченными производительностью ЦП.

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

Если использовать GPU с C++ AMP или DirectX, можно задать число используемых модулей GPU или области, где GPU бездействует.

Масштабирование

Для увеличения диаграммы использования ЦП или диаграммы активности GPU выберите раздел или воспользуйтесь ползунком масштаба над диаграммой. Масштаб сохраняется при переходе к другим представлениям. Для уменьшения масштаба воспользуйтесь ползунком масштаба. Кроме того, чтобы изменить масштаб, можно прокрутить колесико мыши, нажав и удерживая клавишу CTRL+прокрутки.

Граф использования ЦП

На графе использования ЦП показывает уровень использования приложения с течением времени. Ось Х представляет время работы трассировки, а ось Y — количество логических ядер в системе. Этот граф не показывает, какое из ядер активно в заданный момент времени. Например, если два ядра были загружены на 50 процентов производительности в течение заданного периода времени, представление показывает, что использовалось одно логическое ядро.

Цвета графа использования ЦП

  • Зеленый цвет означает использование логических ядер в системе текущим процессом.

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

  • Темно-серый цвет обозначает потребление логических ядер системным процессом. Этим процессом невозможно управлять непосредственно, но полезно знать, когда он выполняется, так как он может повлиять на доступность логических ядер для данного процесса.

  • Белый цвет обозначает доступность неиспользуемых логических ядер в системе. Эти ядра доступны для данного процесса, если можно найти дополнительные возможности для параллелизма.

Среднее использование ЦП

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

Элемент управления масштабированием (представление использования)

Элемент управления "Масштаб" помогает увеличивать масштаб диаграммы загрузки ЦП, сосредотачиваясь на интересующих участках. Этот элемент управления фокусируется на центре представления. Поэтому перед увеличением необходимо расположить интересующую вас область в центре.

Можно перетащить указатель мыши на диаграмме загрузки ЦП или диаграмме активности GPU для создания выделенной области. Когда кнопка мыши будет отпущена, представление увеличится по выбранному диапазону.

Граф активности GPU

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

Цвета на графе активности GPU

Зеленый цвет обозначает потребление ядер DirectX текущим процессом.

Светло-серый цвет обозначает потребление ядер DirectX другими процессами в системе. Чтобы уменьшить потребление ядер DirectX другими процессами, сократите число других процессов, выполняющихся в системе.

Белый цвет указывает на наличие неиспользуемых ядер DirectX в системе. Эти ядра доступны для процесса, если вам удастся найти дополнительные возможности для их использования. Некоторые ядра могут использоваться только для определенных видов задач.

Активность GPU (подкачка)

Сегменты Активность GPU (подкачка) на вкладке Потоки представляют время, когда GPU выполнял обработку запросов подкачки. Длина сегмента представляет время, в течение которого GPU выполнял обработку пакета подкачки прямого доступа к памяти (DMA). Как правило, пакеты подкачки связаны с передачей памяти между ЦП и графическим процессором.

При выборе сегмента подкачки GPU в отчете на вкладке Текущие отображаются сведения об обработанном пакете DMA. Эти сведения включают время ожидания пакета в очереди оборудования, связанной с ядром DirectX; процесс, отправивший пакет DMA; и время, которое потребовалось для обработки пакета.

Активность GPU (этот процесс)

Сегменты Активность GPU (этот процесс) в представлении потоков визуализатора параллелизма представляют моменты времени, когда GPU выполнял обработку запросов от имени текущего процесса. Эти запросы отправляются в GPU как пакеты прямого доступа к памяти (DMA). Длина сегмента представляет время, в течение которого GPU выполнял обработку пакета DMA от имени текущего процесса.

При выборе сегмента активности GPU в отчете на вкладке Текущие отображаются сведения об обработанном пакете DMA. Эти сведения включают время ожидания пакета в очереди оборудования, связанной с ядром DirectX; процесс, отправивший пакет; и время, которое потребовалось для обработки пакета. Процесс, отличный от текущего процесса, может физически отправлять пакет DMA в графический процессор. Визуализатор параллелизма может обнаруживать отправку работы в GPU другим процессом от имени текущего процесса.

Активность GPU (другие процессы)

Сегменты Активность GPU (другие процессы) в представлении потоков визуализатора параллелизма представляют моменты времени, когда GPU выполнял обработку запросов от имени других процессов в системе. Эти запросы отправляются в GPU как пакеты прямого доступа к памяти (DMA). Длина сегмента представляет количество времени, затраченного на обработку пакета графическим процессором.

При выборе такого типа сегмента в отчете на вкладке Текущие отображаются сведения об обработанном пакете. Эти сведения включают время ожидания пакета в очереди оборудования, связанной с ядром DirectX; процесс, отправивший пакет; и время, которое потребовалось для обработки пакета.