다음을 통해 공유


WPF 성능 도구 및 리소스

업데이트: 2007년 11월

WPF는 응용 프로그램의 런타임 동작을 분석하고 적용할 수 있는 성능 최적화 형식을 결정하는 데 사용할 수 있는 성능 프로파일링 도구 집합을 제공합니다. 다음 표에서는 Windows SDK 도구 WPFPerf에 포함된 다섯 가지 성능 프로파일링 도구를 보여 줍니다.

도구

설명

Event Trace

이벤트를 분석하고 이벤트 로그 파일을 생성하는 데 사용합니다.

Perforator

렌더링 동작을 분석하는 데 사용합니다.

Trace Viewer

ETW(Windows용 이벤트 추적) 로그 파일을 WPF 사용자 인터페이스 형식으로 기록, 표시 및 검색합니다.

Visual Profiler

시각적 트리를 요소를 통해 레이아웃 및 이벤트 처리와 같은 WPF 서비스의 사용을 프로파일링하는 데 사용합니다.

Working Set Viewer

응용 프로그램의 작업 집합 특성을 분석하는 데 사용합니다.

Visual Profiler 도구 집합에서는 성능 데이터에 대한 다양한 그래픽 뷰를 제공합니다. 다음 스크린 샷을 보면 Visual Profiler의 CPU 사용 섹션에 개체의 WPF 서비스(예: 렌더링 및 레이아웃) 사용 정보가 자세히 분석되어 제공되어 있습니다.

Visual Profiler 표시 출력

Visual Profiler 표시 출력

자세한 내용은 WPF용 성능 프로파일링 도구를 참조하십시오.

XamlPad를 사용하여 시각적 트리 보기

XAMLPad를 사용하여 시각적 트리 계층 구조를 분석하면 컨트롤 템플릿 확장이 작동하는 방식을 보다 정확하게 파악할 수 있습니다. 이러한 지식은 작성 중인 사용자 인터페이스 디자인의 장단점 및 성능 비용을 이해하는 데 도움이 됩니다.

XamlPad는 현재 정의되어 있는 XAML 콘텐츠에 해당하는 시각적 트리를 보고 탐색하는 데 사용할 수 있는 옵션을 제공합니다. 메뉴 모음에서 Show Visual Tree 단추를 클릭하면 시각적 트리가 표시됩니다. 다음 그림에서는 XamlPad의 Visual Tree Explorer 패널에서 시각적 트리 노드로 XAML 콘텐츠를 확장하는 것을 보여 줍니다.

XamlPad의 Visual Tree Explorer 패널

XamlPad의 시각적 트리 탐색기 패널

여기서 Label, TextBoxButton 컨트롤은 XamlPad의 Visual Tree Explorer 패널에 각각 별도의 시각적 개체 계층 구조를 표시합니다. 이는 WPF 컨트롤에 해당 컨트롤의 시각적 트리를 포함하는 ControlTemplate이 있기 때문입니다. 컨트롤을 명시적으로 참조하는 경우 해당 시각적 계층 구조를 암시적으로 참조하게 됩니다. 시각적 개체 및 시각적 트리에 대한 자세한 내용은 Windows Presentation Foundation 그래픽 렌더링 개요를 참조하십시오.

항목을 선택하여 Visual Tree Explorer에서 해당 항목의 속성 설정을 볼 수 있습니다. Visual Tree Explorer 패널 아래에 있는 Property Tree Explorer 패널에는 선택한 시각적 개체의 현재 속성 설정이 표시됩니다.

XamlPad의 Property Tree Explorer 패널

속성 트리 탐색기

자세한 내용은 XAMLPad를 참조하십시오.

WPF용 디버그 추적 지원

PresentationTraceSources 클래스는 WPF 응용 프로그램을 대상으로 하는 디버그 추적을 지원합니다. 추적은 응용 프로그램의 진행을 추적할 수 있는 진단 시스템입니다. WriteLine 메서드가 흔히 사용되는 방법과 같이 추적 문에서 정보를 보고합니다. 그러나 구성 파일을 사용하여 추적 문을 켜거나 끌 수 있습니다. 또한 추적 문의 출력을 사용자 지정할 수 있습니다.

다른 관련 .NET Framework 진단 클래스는 System.Diagnostics를 참조하십시오.

참고 항목

개념

WPF 응용 프로그램 성능 최적화

응용 프로그램 성능 계획

성능 최적화: 하드웨어 이용

성능 최적화: 레이아웃 및 디자인

성능 최적화: 2차원 그래픽 및 이미징

성능 최적화: 개체 동작

성능 최적화: 응용 프로그램 리소스

성능 최적화: 텍스트

성능 최적화: 데이터 바인딩

성능 최적화: 기타 권장 사항