프로파일링 도구 성능 세션 개요

Visual Studio 2017 RC에 대한 최신 설명서는 Visual Studio 2017 RC 설명서를 참조하세요.

이 개요에서는 프로파일링의 기본 사항에 대해 설명합니다. 성능 작업이 생소한 개발자는 Visual Studio 프로파일링 도구를 통해 빠른 속도로 생산성을 높이고 코드의 성능을 향상시키는 방법을 배우게 됩니다. 프로파일링에 익숙한 개발자는 프로파일링 도구의 특정 기능과 프로세스에 대한 개요를 확인할 수 있습니다.

Visual Studio 프로파일링 도구는 소스 코드에서 성능 문제를 식별하고 사용 가능한 솔루션의 성능을 비교하는 데 유용합니다. 프로파일링 도구 마법사 및 기본 설정을 사용하면 다양한 성능 문제를 신속하게 파악할 수 있습니다. 또한 프로파일링 도구의 기능 및 옵션을 활용하면 프로파일링 프로세스를 정밀하게 제어할 수 있는데, 주로 코드 섹션의 정확한 대상 지정, 블록 수준 타이밍 정보 수집, 데이터에 추가 프로세서 및 시스템 성능 데이터 포함 등을 제어합니다.

다음 단계는 프로파일링 도구를 사용하는 기본 프로세스입니다.

  1. 수집 방법 및 수집할 데이터를 지정하여 성능 세션을 구성합니다.

  2. 응용 프로그램을 성능 세션에서 실행하여 프로파일링 데이터를 수집합니다.

  3. 데이터를 분석하여 성능 문제를 식별합니다.

  4. Visual Studio IDE(통합 개발 환경)에서 코드를 수정하여 코드의 응용 프로그램 성능을 높입니다

  5. 변경된 코드에 대한 프로파일링 데이터를 수집하고 원본 데이터의 프로파일링 데이터와 변경된 데이터의 프로파일링 데이터를 비교합니다.

  6. 성능 향상 부분이 문서화된 보고서를 생성합니다.

    프로파일링을 통해 제공되는 정보를 사용하려면 프로파일링할 이진 파일과 Windows 운영 체제의 이진 파일에 사용할 기호 정보가 있어야 합니다.

성능 세션 구성

프로파일링 세션을 구성하려면 사용할 프로파일링 방법과 수집할 데이터를 선택합니다. 프로파일링 도구 성능 마법사에서는 기본 구성을 안내하며, 성능 세션 속성 페이지를 통해 옵션을 추가할 수 있습니다.

  • 프로파일링 방법에는 샘플링, 추적 및 메모리 할당이 있습니다.

  • 데이터 값에는 시간, 프로세서, 운영 체제 성능 카운터와 페이지 폴트 및 커널 전환 같은 응용 프로그램 이벤트가 있습니다.

    Visual Studio 프로젝트에서 성능 세션을 프로젝트 솔루션의 일부로 구성하거나, Visual Studio IDE를 통해 임의의 이진 파일을 프로파일링할 수 있습니다. 성능 세션 속성 페이지에서 세션 속성을 지정하거나, 프로파일링 마법사를 사용할 수도 있습니다.

프로파일링 데이터 수집

프로파일링 데이터의 수집은 성능 탐색기에서 시작합니다. 프로파일링을 일시 중지했다가 다시 시작하여 수집하는 데이터의 양을 제한할 수 있습니다. 또한 이미 실행 중인 프로세스에 연결할 수도 있습니다.

응용 프로그램이 시작되면 Visual Studio IDE에 데이터 수집 제어 창이 나타납니다. 데이터 수집 제어 창에서 수집 프로세스를 일시 중지했다가 다시 시작하는 방식으로 응용 프로그램의 특정 부분을 프로파일링할 수 있습니다. 또한 데이터 수집 제어 창을 통해 수집되는 데이터에 표시를 삽입할 수도 있습니다. 표시는 프로파일 뷰에 표시되며 프로파일링 데이터를 필터링하는 데 사용할 수 있는 사용자 정의 데이터 요소입니다.

대상 응용 프로그램이 종료되면 프로파일링 도구에서는 프로파일링 데이터 파일(*.vsp)을 생성하고 Visual Studio IDE에 요약 보고서 뷰를 표시합니다.

데이터 분석 및 성능 문제 식별

프로파일링 실행이 종료되면 데이터가 분석되어 프로파일링 도구 성능 보고서 뷰 창에 요약이 표시됩니다. 프로파일링 데이터는 대상 응용 프로그램의 호출 스택 및 개별 함수에 대해 수집됩니다. 보고서 뷰에는 프로세스, 스레드, 모듈, 함수 그리고 응용 프로그램 소스 코드 줄의 데이터 범위에 대한 성능 분석 결과가 표시됩니다. 함수의 프로파일링 데이터 값은 다음과 같습니다.

  • 함수 및 해당 함수에 의해 호출된 자식 함수에서 소요된 전체 시간(포괄 시간 값)

  • 함수의 코드만 실행하는 데 걸린 시간(전용 시간 값)

    12가지 이상의 다양한 뷰를 통해 가장 효과적인 방식으로 프로파일링 데이터를 분석할 수 있습니다. 뷰를 사용자 지정하면 데이터를 필터링 및 정렬하여 성능 문제를 일으킬 수 있는 함수를 찾을 수 있습니다. 실행 부하 과다 경로 필터링을 사용하면 호출 트리 뷰와 모듈 뷰에서 가장 많이 실행되는 경로가 즉시 강조 표시됩니다.

응용 프로그램 코드 수정

하나 이상의 관련된 성능 문제를 격리한 후에는 Visual Studio IDE를 사용하여 코드를 수정하고 변경 내용에 맞는 프로파일링 데이터를 수집할 수 있습니다.

프로파일링 데이터 다시 수집 및 프로파일링 실행 간에 데이터 비교

프로파일링 도구 비교 보고서 뷰에는 선택한 두 프로파일링 데이터 파일 간의 모듈, 함수 또는 명령줄 성능 차이가 표시됩니다. 비교할 프로파일링 데이터 값을 지정하고 비교 뷰와 개별 파일의 뷰 사이를 전환할 수 있습니다.

결과 보고서 생성

성능 보고서 뷰의 행을 전자 메일 및 스프레드시트에 붙여넣고 하나 이상의 뷰에 대한 데이터가 들어 있는 보고서를 생성할 수 있습니다.

참고 항목

개요
연습: 응용 프로그램 프로파일링