Share via


함수 정보 뷰

함수 정보 뷰 창에는 다음과 같은 정보가 표시됩니다.

  • 비용 분산 가로 막대형 차트 - 선택한 함수와 선택한 함수를 실행한 호출 함수의 관계 및 선택한 함수와 해당 함수에 의해 호출된 함수의 관계를 나타냅니다.

  • 함수 성능 정보 표 - 지정한 함수에 대한 요약 프로파일링 데이터를 보여 줍니다.

  • 함수 코드 뷰 창 - 함수 코드를 사용할 수 있는 경우 해당 코드를 보여 줍니다.

함수 코드 뷰 창은 별도의 창으로 나타납니다. 기본적으로 두 개의 창이 가로로 분할되며 함수 코드 뷰 창은 프레임의 아래쪽에 놓입니다.

  • 두 창을 세로로 분할하려면 도구 모음에서 세로로 화면 분할을 클릭합니다.

  • 창의 상대 크기를 변경하려면 프레임 사이의 회색 테두리를 클릭한 다음 다른 위치로 끕니다.

비용 분산 가로 막대형 차트

성능 메트릭

성능 메트릭 드롭다운 목록에서 뷰에 표시할 값을 지정할 수 있습니다. 사용할 수 있는 값은 프로파일링 데이터 파일에 사용된 프로파일링 방법에 따라 달라집니다. 괄호 안의 이름은 함수 성능 정보 표의 행 이름입니다.

가로 막대형 차트

함수 호출

호출 함수 막대에는 선택한 함수를 호출한 함수가 표시됩니다. 호출 함수가 포함된 블록의 크기는 선택한 함수에 대한 성능 메트릭의 총 값에서 호출 함수가 차지하는 비중에 비례하여 결정됩니다.

호출 함수의 이름을 클릭하면 뷰에서 해당 함수가 선택한 함수가 됩니다.

  • 나열할 호출 함수가 너무 많을 경우 비중이 가장 낮은 함수는 기타 블록에 수집됩니다. 기타를 클릭하면 선택한 함수의 모든 호출 함수와 호출된 함수가 호출자/호출 수신자 뷰 창에 표시됩니다. 자세한 내용은 호출자/호출 수신자 뷰를 참조하십시오.

  • 호출 함수가 없거나 해당 함수가 스레드 또는 프로세스의 진입 함수이면 스택 맨 위 블록이 나타납니다.

선택한 함수

선택한 함수 막대에는 선택한 함수의 총 성능 메트릭에서 선택한 함수의 코드와 호출된 함수가 차지하는 비중이 표시됩니다. 호출된 함수 또는 해당 함수 본문이 포함된 블록의 크기는 선택한 함수에 대한 성능 메트릭의 총 값에서 해당 함수 또는 함수 본문이 차지하는 비중에 비례하여 결정됩니다.

호출된 함수의 이름을 클릭하면 뷰에서 해당 함수가 선택한 함수가 됩니다.

  • 합계 값은 선택한 함수에 대한 성능 메트릭입니다.

  • 함수 본문 블록은 함수 본문에 있는 코드를 직접 실행함으로써 발생한 성능 메트릭의 총 값을 나타냅니다.

  • 선택한 함수에 의해 호출된 함수는 블록에 나열됩니다. 선택한 함수 블록의 크기는 선택한 함수에 대한 총 성능 메트릭 중 호출된 함수에서 발생한 양을 나타냅니다.

  • 나열할 호출 함수가 너무 많을 경우 비중이 가장 낮은 함수는 기타 블록에 수집됩니다. 기타를 클릭하면 선택한 함수의 모든 호출 함수와 호출된 함수가 호출자/호출 수신자 뷰 창에 표시됩니다. 자세한 내용은 호출자/호출 수신자 뷰를 참조하십시오.

  • 호출된 함수가 없으면 스택 맨 아래 블록이 나타납니다.

함수 성능 정보

함수 성능 정보 표에는 선택한 함수의 성능 메트릭에 대한 요약 데이터가 표시됩니다. 값과 백분율이 모두 표시됩니다. 성능 메트릭 목록에서 차트 및 정보 표에 표시되는 프로파일링 데이터를 지정합니다.

설명

Exclusive

  • 함수 본문을 실행할 때 발생한 성능 메트릭의 양입니다.

호출 내

  • 선택한 함수가 호출한 함수에서 발생한 성능 메트릭의 양입니다.

포괄 합계

  • 전용호출 내 값의 합입니다.

함수 코드 뷰

함수 코드 뷰 창에는 소스 코드를 사용할 수 있는 경우 해당 소스 코드의 목록이 표시됩니다. 다른 함수를 호출하는 소스 코드 줄 옆의 회색 열에는 호출된 함수에 대한 성능 메트릭 값이 포함됩니다. 소스 코드를 편집하려면 소스 코드 파일에 대한 링크를 클릭합니다.

비용 분산 가로 막대형 차트 값

샘플링

다음 표에서는 샘플링 방법을 사용하여 수집된 프로파일링 데이터에 대한 성능 메트릭 목록의 값을 설명합니다.

포괄 샘플(수집한 샘플)

  • 호출 함수의 경우, 선택한 함수가 이 호출 함수에 의해 호출되었을 때 수집된 샘플 수입니다.

  • 함수 본문의 경우, 선택한 함수가 해당 코드를 실행하고 있을 때 수집된 샘플 수입니다.

  • 호출된 함수의 경우, 선택한 함수에서의 호출로 인해 호출된 함수가 실행되고 있을 때 수집된 샘플 수입니다.

계측

다음 표에서는 계측 방법을 사용하여 수집된 프로파일링 데이터에 대한 성능 메트릭 목록의 값을 설명합니다.

경과된 포괄 시간(경과된 시간)

경과 시간에는 컨텍스트 전환 및 입/출력 작업 등의 운영 체제 호출에서 소요된 시간이 포함됩니다.

  • 호출 함수의 경우, 선택한 함수에 의해 호출된 해당 함수 인스턴스를 실행하는 데 소요된 경과 시간입니다. 선택한 함수에 의해 호출된 함수에서 소요된 시간도 포함됩니다.

  • 함수 본문의 경우, 선택한 함수의 코드를 실행하는 데 소요된 총 경과 시간입니다. 호출된 함수에서 소요된 시간은 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수에 의해 호출된 함수 인스턴스를 실행하는 데 소요된 시간입니다. 총 시간에는 해당 함수가 호출한 함수에서 소요된 시간이 포함됩니다. 선택한 함수에 의해 호출된 함수에서 소요된 시간도 포함됩니다.

응용 프로그램 포괄 시간(응용 프로그램 시간)

응용 프로그램 시간에는 컨텍스트 전환 및 입/출력 작업 등의 운영 체제 호출에서 소요된 시간이 포함되지 않습니다.

  • 호출 함수의 경우, 선택한 함수에 의해 호출된 해당 함수 인스턴스를 실행하는 데 소요된 응용 프로그램 시간입니다. 선택한 함수에 의해 호출된 함수에서 소요된 시간도 포함됩니다.

  • 함수 본문의 경우, 선택한 함수의 코드를 실행하는 데 소요된 총 응용 프로그램 시간입니다. 호출된 함수에서 소요된 시간은 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수에 의해 호출된 해당 함수 인스턴스를 실행하는 데 응용 프로그램 시간입니다. 총 시간에는 해당 함수가 호출한 함수에서 소요된 시간이 포함됩니다.

.NET 메모리

다음 표에서는 .NET 메모리 프로파일링 방법을 사용하여 수집된 프로파일링 데이터에 대한 성능 메트릭 목록의 값을 설명합니다.

포함 할당(할당)

  • 호출 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 의해 할당된 개체 수입니다. 여기에는 선택한 함수가 호출한 함수에 의해 할당된 개체가 포함됩니다.

  • 함수 본문의 경우, 선택한 함수가 해당 코드를 실행하고 있을 때 해당 함수에 의해 할당된 개체 수입니다. 선택한 함수에 의해 호출된 함수에서 할당된 개체는 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 의해 할당된 개체 수입니다. 여기에는 해당 함수가 호출한 함수에 의해 할당된 개체가 포함됩니다.

포함 바이트(바이트)

  • 호출 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 의해 할당된 바이트 수입니다. 여기에는 선택한 함수가 호출한 함수에 의해 할당된 바이트가 포함됩니다.

  • 함수 본문의 경우, 선택한 함수가 해당 코드를 실행하고 있을 때 해당 함수에 의해 할당된 총 바이트 수입니다. 선택한 함수에 의해 호출된 함수에서 할당된 바이트는 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 의해 할당된 바이트 수입니다. 여기에는 해당 함수가 호출한 함수에 의해 할당된 바이트가 포함됩니다.

동시성

다음 표에서는 동시성 방법을 사용하여 수집된 프로파일링 데이터에 대한 성능 메트릭 목록의 값을 설명합니다.

포괄 경합(경합)

  • 호출 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에서 발생한 리소스 경합 이벤트 수입니다. 여기에는 선택한 함수가 호출한 함수에서의 경합 이벤트가 포함됩니다.

  • 함수 본문의 경우, 선택한 함수가 해당 코드를 실행하고 있을 때 발생한 총 경합 이벤트 수입니다. 선택한 함수에 의해 호출된 함수에서 발생한 경합은 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에서 발생한 경합 이벤트 수입니다. 여기에는 해당 함수가 호출한 함수에서 발생한 경합 이벤트가 포함됩니다.

차단된 포괄 시간(차단된 시간)

  • 호출 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 대한 리소스 경합 이벤트에 소요된 시간입니다. 여기에는 선택한 함수가 호출한 함수에서 차단된 시간이 포함됩니다.

  • 함수 본문의 경우, 해당 함수가 코드를 실행하고 있을 때 발생한 경합 이벤트에 소요된 총 시간입니다. 선택한 함수가 호출한 함수에서 발생한 경합은 포함되지 않습니다.

  • 호출된 함수의 경우, 선택한 함수가 호출한 해당 함수 인스턴스에 대한 리소스 경합 이벤트에 소요된 시간입니다. 여기에는 해당 함수가 호출한 함수에서 발생한 차단 시간도 포함됩니다.