성능 기능 참조

Sofia Emelianova
Sofia Emelianova

이 페이지는 성능 분석과 관련된 Chrome DevTools 기능을 종합적으로 다룹니다.

Chrome DevTools를 사용하여 페이지 성능을 분석하는 방법에 관한 가이드는 런타임 성능 분석 시작하기를 참고하세요.

실적 기록

런타임 또는 로드 성능을 기록할 수 있습니다.

런타임 성능 기록

로드가 아닌 실행 중인 페이지의 성능을 분석하려는 경우 런타임 성능을 기록합니다.

  1. 분석하려는 페이지로 이동합니다.
  2. DevTools에서 Performance 탭을 클릭합니다.
  3. Record 녹화를 탭합니다.를 클릭합니다.

    녹화를 탭합니다.

  4. 페이지와 상호작용합니다. DevTools가 상호작용의 결과로 발생하는 모든 페이지 활동을 기록합니다.

  5. Record를 다시 클릭하거나 Stop을 클릭하여 녹화를 중지합니다.

로드 성능 기록

페이지를 실행하는 것이 아니라 로드 중에 페이지 성능을 분석하려는 경우 로드 성능을 기록합니다.

  1. 분석하려는 페이지로 이동합니다.
  2. DevTools의 Performance 패널을 엽니다.
  3. Start profiling and refresh page 프로파일링을 시작하고 페이지를 새로고침하세요.를 클릭합니다. DevTools는 먼저 about:blank로 이동하여 남은 스크린샷과 트레이스를 삭제합니다. 그러면 DevTools가 페이지를 새로고침하는 동안 성능 측정항목을 기록하고, 로드가 끝나고 몇 초 후에 기록을 자동으로 중지합니다.

    페이지 새로고침

DevTools는 기록에서 가장 많은 활동이 발생한 부분을 자동으로 확대합니다.

페이지 로드 기록.

이 예에서 Performance 패널은 페이지 로드 중의 활동을 보여줍니다.

녹화 중 스크린샷 캡처

녹화하는 동안 모든 프레임의 스크린샷을 캡처하려면 Screenshots 체크박스를 사용 설정합니다.

스크린샷 체크박스

스크린샷으로 상호작용하는 방법은 스크린샷 보기를 참고하세요.

기록 시 가비지 컬렉션 강제 실행

페이지를 기록하는 동안 Collect garbage mop를 클릭하여 가비지 컬렉션을 강제 적용합니다.

가비지를 수집합니다.

녹화 설정 표시

Capture settings 캡처 설정를 클릭하여 DevTools가 성능 기록을 캡처하는 방식과 관련된 추가 설정을 표시합니다.

캡처 설정 섹션.

JavaScript 샘플 사용 중지

기본적으로 기록의 Main 트랙에는 기록 중에 호출된 JavaScript 함수의 자세한 호출 스택이 표시됩니다. 이러한 호출 스택을 사용 중지하는 방법은 다음과 같습니다.

  1. Capture settings 설정 페이지. 메뉴를 엽니다. 녹화 설정 표시를 참고하세요.
  2. JavaScript 샘플 사용 중지 체크박스를 선택합니다.
  3. 페이지를 녹화합니다.

다음 스크린샷은 자바스크립트 샘플 사용 중지와 사용 설정 간의 차이를 보여줍니다. 샘플링이 사용 중지된 경우 기록의 Main 트랙은 모든 JavaScript 호출 스택이 생략되므로 훨씬 더 짧습니다.

JS 샘플이 사용 중지된 경우 기록의 예

이 예는 사용 중지된 JS 샘플이 있는 기록을 보여줍니다.

JS 샘플 사용 설정 시 기록의 예

이 예는 사용 설정된 JS 샘플이 있는 기록을 보여줍니다.

녹화 중 네트워크 제한

녹화 중에 네트워크를 제한하는 방법:

  1. Capture settings 설정 페이지. 메뉴를 엽니다. 녹화 설정 표시를 참고하세요.
  2. 네트워크를 선택한 제한 수준으로 설정합니다.

기록 중 CPU 스로틀링

녹화하는 동안 CPU를 제한하는 방법은 다음과 같습니다.

  1. Capture settings 설정 페이지. 메뉴를 엽니다. 녹화 설정 표시를 참고하세요.
  2. CPU를 선택한 제한 수준으로 설정합니다.

제한은 컴퓨터 성능에 따라 다릅니다. 예를 들어 2x 감속 옵션을 사용하면 CPU가 평상시 기능보다 2배 느리게 작동합니다. 휴대기기의 아키텍처가 데스크톱 및 노트북의 아키텍처와 매우 다르기 때문에 DevTools가 휴대기기의 CPU를 실제로 시뮬레이션할 수 없습니다.

고급 페인트 계측 사용 설정

자세한 페인트 계측을 보려면 다음 단계를 따르세요.

  1. Capture settings 설정 페이지. 메뉴를 엽니다. 녹화 설정 표시를 참고하세요.
  2. 고급 페인트 계측 사용 설정 체크박스를 선택합니다.

페인트 정보와 상호작용하는 방법을 알아보려면 뷰 레이어페인트 프로파일러 보기를 참고하세요.

하드웨어 동시 실행 에뮬레이션

다양한 프로세서 코어로 애플리케이션 성능을 테스트하려면 navigator.hardwareConcurrency 속성에서 보고된 값을 구성하면 됩니다. 일부 애플리케이션은 이 속성을 사용하여 애플리케이션의 동시 로드 수준을 제어합니다(예: Emscripten pthread 풀 크기 제어).

하드웨어 동시 실행을 에뮬레이션하려면 다음 안내를 따르세요.

  1. Capture settings 설정 페이지. 메뉴를 엽니다. 녹화 설정 표시를 참고하세요.
  2. 하드웨어 동시 실행을 선택하고 입력 상자에 코어 수를 설정합니다. 하드웨어 동시 실행.

DevTools에서 Performance 탭 옆에 경고 아이콘 경고.을 표시하여 하드웨어 동시 실행 에뮬레이션이 사용 설정되었음을 알려줍니다.

기본값 10으로 되돌리려면 되돌리기 되돌리기 버튼을 클릭합니다.

기록 저장하기

기록을 저장하려면 마우스 오른쪽 버튼으로 클릭하고 Save Profile을 선택합니다.

프로필 저장을 탭합니다.

녹음 파일 로드

기록을 로드하려면 마우스 오른쪽 버튼을 클릭하고 Load Profile(프로필 로드)을 선택합니다.

프로필 로드

이전 기록 삭제

녹화 후 Clear recording 녹음 파일 지우기를 탭합니다.을 눌러 Performance 패널에서 기록을 지웁니다.

녹음 파일 지우기를 탭합니다.

공연 기록 분석

런타임 성능을 기록하거나 로드 성능을 기록하면 성능 패널에서 방금 발생한 작업의 성능을 분석하는 데 필요한 다양한 데이터를 제공합니다.

실적 기록을 자세히 검사하려면 기록의 일부를 선택하고, 긴 Flame Chart를 스크롤하고, 확대/축소하고, 탐색경로를 사용하여 확대/축소 수준 간에 이동하면 됩니다.

녹음 파일의 일부를 선택합니다.

성능 패널의 작업 표시줄과 기록 상단에 CPUNET 차트가 포함된 타임라인 개요 섹션이 표시됩니다.

작업 모음 아래의 타임라인 개요

기록의 일부를 선택하려면 길게 클릭한 후 타임라인 개요를 왼쪽이나 오른쪽으로 드래그합니다.

키보드를 사용하여 일부를 선택하려면 다음 단계를 따르세요.

  1. Main 트랙 또는 인접 항목에 포커스를 둡니다.
  2. W, A, S, D 키를 각각 사용하여 확대, 왼쪽으로 이동, 축소, 오른쪽으로 이동합니다.

트랙패드를 사용하여 부분을 선택하려면 다음 단계를 따르세요.

  1. 타임라인 개요 섹션 또는 트랙 (기본 및 인접한 트랙) 위로 마우스를 가져갑니다.
  2. 두 손가락을 사용하여 위로 스와이프하여 축소하고, 왼쪽으로 스와이프하여 왼쪽으로 이동하고, 아래로 스와이프하여 확대하고, 오른쪽으로 스와이프하여 오른쪽으로 이동합니다.

타임라인 개요에서는 여러 개의 중첩된 탐색경로를 연속으로 만들어 확대/축소 수준을 높인 다음 선택한 수준으로 이동할 수 있습니다.

탐색경로를 만들고 사용하려면 다음 단계를 따르세요.

  1. 타임라인 개요에서 기록의 일부를 선택합니다.
  2. 선택 항목 위로 마우스를 가져가서 N밀리초 zoom_in 버튼을 클릭합니다. 선택 항목이 펼쳐지면서 타임라인 개요가 채워집니다. 타임라인 개요에서 일련의 탐색경로가 빌드되기 시작합니다.
  3. 다른 중첩된 탐색경로를 만들려면 앞의 두 단계를 반복합니다. 선택 범위가 5밀리초를 초과하면 탐색경로를 계속 중첩할 수 있습니다.
  4. 선택한 확대/축소 수준으로 이동하려면 타임라인 개요 상단의 체인에서 해당하는 탐색경로를 클릭합니다.

긴 Flame Chart 스크롤

Main 트랙 또는 그 인접 항목의 긴 Flame Chart를 스크롤하려면 길게 클릭한 다음, 원하는 항목이 표시될 때까지 아무 방향으로나 드래그합니다.

Performance(성능) 패널 하단에서 검색창을 열려면 다음을 누릅니다.

  • macOS: Command+F
  • Windows, Linux: Control+F

검색창

이 예는 E로 시작하는 활동을 찾는 하단의 검색창에 정규 표현식을 보여줍니다.

쿼리와 일치하는 활동을 둘러보려면 다음 단계를 따르세요.

  • expand_less 이전 또는 expand_less 다음 버튼을 클릭합니다.
  • Shift+Enter를 눌러 이전 항목을 선택하거나 Enter 키를 눌러 다음 항목을 선택합니다.

Performance 패널에는 검색창에서 선택한 활동에 대한 도움말이 표시됩니다.

쿼리 설정을 수정하려면 다음 안내를 따르세요.

  • match_case 대소문자 일치를 클릭하여 검색어의 대소문자를 구분합니다.
  • 검색어에 정규 표현식을 사용하려면 regular_expression 정규 표현식을 클릭합니다.

검색창을 숨기려면 취소를 클릭합니다.

기본 스레드 활동 보기

기본 트랙을 사용하여 페이지의 기본 스레드에서 발생한 활동을 볼 수 있습니다.

기본 트랙

이벤트를 클릭하면 요약 탭에서 이벤트에 대한 자세한 정보를 볼 수 있습니다. 실적 패널에 선택한 이벤트가 파란색으로 표시됩니다.

요약 탭에 있는 기본 스레드 이벤트에 관한 추가 정보

이 예에서는 Summary 탭의 get 함수 호출 이벤트에 대한 자세한 정보를 보여줍니다.

Flame Chart 읽기

Performance 패널은 Flame Chart의 기본 스레드 활동을 나타냅니다. X축은 시간 경과에 따른 기록을 나타냅니다. y축은 호출 스택을 나타냅니다. 상단의 이벤트는 아래의 이벤트를 발생시킵니다.

Flame Chart

이 예에서는 Main 트랙의 Flame Chart를 보여줍니다. click 이벤트로 인해 익명 함수 호출이 발생했습니다. 이 함수는 결과적으로 onEndpointClick_이라 하고 handleClick_ 등을 호출했습니다.

Performance 패널은 스크립트에 임의의 색상을 할당하여 Flame Chart를 분할하고 가독성을 높입니다. 이전 예에서 한 스크립트의 함수 호출은 연한 파란색으로 지정됩니다. 다른 스크립트에서 걸려온 전화는 연한 분홍색으로 표시됩니다. 더 진한 노란색은 스크립팅 활동을 나타내고 보라색 이벤트는 렌더링 활동을 나타냅니다. 이러한 진한 노란색 및 보라색 이벤트는 모든 기록에서 일관됩니다.

장기 작업도 강조표시되며 50밀리초가 넘는 부분은 빨간색으로 음영 처리됩니다.

긴 작업입니다.

이 예에서 작업은 400밀리초 이상 걸렸으므로 마지막 350밀리초를 나타내는 부분은 빨간색으로 음영 처리되지만, 처음 50밀리초는 그렇지 않습니다.

또한 Main 트랙에는 profile()profileEnd() 콘솔 함수로 시작 및 중지된 CPU 프로필에 대한 정보가 표시됩니다.

자바스크립트 호출의 상세 Flame Chart를 숨기려면 자바스크립트 샘플 사용 중지를 참고하세요. JS 샘플이 사용 중지되면 Event (click)Function Call와 같은 상위 수준 이벤트만 표시됩니다.

이벤트 시작자 추적

기본 트랙에는 다음과 같은 시작자와 이로 인해 발생한 이벤트를 연결하는 화살표가 표시될 수 있습니다.

  • 스타일 또는 레이아웃 무효화 -> 스타일 다시 계산 또는 레이아웃
  • 애니메이션 프레임 요청 -> 애니메이션 프레임 실행됨
  • 유휴 상태 콜백 요청 -> 유휴 상태 콜백 실행
  • 타이머 설치 -> 타이머 실행됨
  • WebSocket 생성 -> Send...WebSocket Handshake 또는 Destroy WebSocket

화살표를 보려면 Flame Chart에서 시작자를 찾아 클릭합니다.

요청에서 유휴 콜백 실행까지의 화살표

표에서 활동 보기

페이지를 기록한 후에는 Main 트랙에만 의존하여 활동을 분석할 필요가 없습니다. DevTools는 활동 분석을 위한 세 개의 테이블 형식 뷰도 제공합니다. 각 뷰는 활동에 대해 서로 다른 관점을 제공합니다.

  • 가장 많은 작업을 유발하는 루트 활동을 보려면 Call Tree을 사용합니다.
  • 가장 많은 시간이 직접 소요된 활동을 보려면 Bottom-Up을 사용하세요.
  • 활동을 녹화 중에 발생한 순서대로 보려면 이벤트 로그을 사용하세요.

원하는 내용을 보다 빠르게 찾을 수 있도록 3개의 탭 모두 필터 표시줄 옆에 고급 필터링 버튼이 있습니다.

  • match_case 대소문자를 일치시킵니다.
  • regular_expression: 정규 표현식.
  • match_word 전체 단어를 매칭합니다.

고급 필터링을 위한 세 개의 버튼입니다.

성능 패널의 각 표 형식 뷰에는 함수 호출과 같은 활동의 링크가 표시됩니다. 디버깅을 돕기 위해 DevTools는 소스 파일에서 상응하는 함수 선언을 찾습니다. 또한 적절한 소스 맵이 있고 사용 설정된 경우 DevTools가 자동으로 원본 파일을 찾습니다.

링크를 클릭하여 Sources 패널에서 소스 파일을 엽니다.

이벤트 로그 탭에 있는 소스 파일 링크.

루트 활동

다음은 호출 트리 탭, 상향식 탭, 이벤트 로그 섹션에 언급된 루트 활동 개념에 관한 설명입니다.

루트 활동은 브라우저가 일부 작업을 실행하도록 만드는 활동입니다. 예를 들어 페이지를 클릭하면 브라우저에서 Event 활동을 루트 활동으로 실행합니다. 그러면 이 Event로 인해 핸들러가 실행될 수 있습니다.

Main 트랙의 Flame Chart에서 루트 활동은 차트 상단에 있습니다. Call TreeEvent Log 탭에서 루트 활동이 최상위 항목입니다.

루트 활동의 예는 Call Tree 탭을 참고하세요.

호출 트리 탭

Call Tree 탭을 사용하여 가장 많은 작업을 유발하는 루트 활동을 확인합니다.

Call Tree 탭에는 선택한 녹음 부분 동안의 활동만 표시됩니다. 부분을 선택하는 방법을 알아보려면 기록의 일부분 선택을 참고하세요.

Call Tree 탭

이 예에서 Event, Paint, Composite Layers와 같이 Activity 열에 있는 최상위 항목은 루트 활동입니다. 중첩은 호출 스택을 나타냅니다. 이 예에서 Event로 인해 Function Call이 발생했고, 이로 인해 button.addEventListener이 발생했고, 이로 인해 b이 발생하는 등의 원인이었습니다.

자체 시간은 해당 활동에 직접 소요된 시간을 나타냅니다. Total Time은 해당 활동 또는 하위 활동에 소요된 시간을 나타냅니다.

자체 시간, 총 시간 또는 활동을 클릭하여 해당 열을 기준으로 표를 정렬합니다.

활동 이름으로 이벤트를 필터링하려면 필터 상자를 사용합니다.

기본적으로 그룹화 메뉴는 그룹화 없음으로 설정됩니다. 그룹화 메뉴를 사용하여 다양한 기준에 따라 활동 테이블을 정렬합니다.

Show Heaviest Stack 가장 무거운 스택 표시을 클릭하면 Activity 테이블의 오른쪽에 다른 테이블이 표시됩니다. 활동을 클릭하여 무거운 스택 테이블을 채웁니다. 무거운 스택 테이블은 선택한 활동의 하위 요소 중 실행에 가장 오랜 시간이 걸린 하위 요소를 보여줍니다.

상향식 탭

Bottom-Up 탭을 사용하면 집계 시간이 가장 많이 소요되는 활동을 직접 확인할 수 있습니다.

Bottom-Up 탭에는 선택한 녹화 부분 동안의 활동만 표시됩니다. 부분을 선택하는 방법을 알아보려면 기록의 일부분 선택을 참고하세요.

상향식 탭입니다.

이 예의 Main 트랙 Flame Chart에서는 wait()에 대한 세 번의 호출을 실행하는 데 거의 모든 시간이 소요된 것을 확인할 수 있습니다. 따라서 Bottom-Up 탭의 상위 활동은 wait입니다. Flame Chart에서 wait 호출 아래의 노란색은 실제로 수천 개의 Minor GC 호출입니다. 따라서 Bottom-Up 탭에서 두 번째로 비용이 많이 드는 활동이 Minor GC임을 알 수 있습니다.

자체 시간 열은 모든 일치하는 활동에서 해당 활동에 직접 소비된 집계된 시간을 나타냅니다.

총 시간 열은 해당 활동이나 하위 활동에서 소비한 시간을 나타냅니다.

이벤트 로그 탭

이벤트 로그 탭을 사용하면 녹화 중에 발생한 순서대로 활동을 볼 수 있습니다.

Event Log 탭에는 선택한 녹화 부분 동안의 활동만 표시됩니다. 부분을 선택하는 방법을 알아보려면 기록의 일부분 선택을 참고하세요.

이벤트 로그 탭

Start Time(시작 시간) 열은 기록 시작을 기준으로 활동이 시작된 시점을 나타냅니다. 이 예시에서 선택된 항목의 시작 시간 1573.0 ms는 기록이 시작된 후 1,573밀리초 후에 활동이 시작되었음을 의미합니다.

Self Time(자체 시간) 열은 해당 활동에 직접 소비한 시간을 나타냅니다.

Total Time(총 시간) 열은 해당 활동이나 하위 활동에서 직접 소비한 시간을 나타냅니다.

시작 시간, 자체 시간 또는 총 시간을 클릭하여 해당 열을 기준으로 표를 정렬합니다.

이름별로 활동을 필터링하려면 필터 상자를 사용합니다.

기간 메뉴를 사용하여 1밀리초 또는 15밀리초 미만 소요된 활동을 필터링합니다. 기본적으로 기간 메뉴는 모두로 설정되어 있어 모든 활동이 표시됩니다.

Loading, Scripting, Rendering 또는 Painting 체크박스를 사용 중지하여 이러한 카테고리의 모든 활동을 필터링합니다.

타이밍 보기

시간 트랙에서 다음과 같은 중요한 마커를 확인합니다.

시간 트랙의 마커

요약 탭에서 자세한 내용을 보려면 마커를 선택합니다. 마커의 타임스탬프를 보려면 시간 트랙 위로 마우스를 가져갑니다.

상호작용 보기

상호작용 트랙에서 사용자 상호작용을 확인하여 잠재적인 응답 문제를 추적합니다.

상호작용을 보려면 다음 단계를 따르세요.

  1. 예를 들어 이 데모 페이지에서 DevTools를 엽니다.
  2. Performance 패널을 열고 기록을 시작합니다.
  3. 요소 (커피)를 클릭하고 기록을 중지합니다.
  4. 타임라인에서 상호작용 트랙을 찾습니다.

상호작용 트랙

이 예에서 Interactions 트랙은 포인터 상호작용을 보여줍니다. 상호작용에는 처리 시간 경계에서 입력 및 프레젠테이션 지연을 나타내는 수염이 있습니다. 상호작용 위로 마우스를 가져가면 입력 지연, 처리 시간, 프레젠테이션 지연이 포함된 도움말이 표시됩니다.

Interactions 트랙은 또한 Summary 탭과 마우스 오버 시 도움말에 200밀리초 이상 표시된 상호작용에 대한 Interaction to Next Paint(INP)(다음 페인트에 대한 상호작용) 경고를 표시합니다.

INP 경고

Interactions 트랙은 200밀리초 이상의 상호작용을 오른쪽 상단에 있는 빨간색 삼각형으로 표시합니다.

GPU 활동 보기

GPU 섹션에서 GPU 활동을 확인합니다.

GPU 섹션

래스터 활동 보기

래스터 섹션에서 래스터 활동을 확인합니다.

래스터 섹션

초당 프레임 수 (FPS) 분석

DevTools는 초당 프레임을 분석하는 다양한 방법을 제공합니다.

프레임 섹션

프레임 섹션은 특정 프레임에 걸린 시간을 정확하게 알려줍니다.

프레임 위로 마우스를 가져가면 자세한 정보가 포함된 도움말을 볼 수 있습니다.

프레임 위로 마우스를 가져갑니다.

이 예에서는 프레임 위로 마우스를 가져가면 도움말을 표시합니다.

Frames 섹션에는 네 가지 유형의 프레임이 표시될 수 있습니다.

  1. 유휴 프레임 (흰색). 변경사항이 없습니다.
  2. 프레임 (녹색). 예상대로 제때 렌더링됩니다.
  3. 부분적으로 표시된 프레임 (넓고 넓은 파선 패턴이 희박한 노란색). Chrome에서는 적어도 일부 시각적 업데이트를 제때 렌더링하기 위해 최선을 다했습니다. 예를 들어 렌더러 프로세스의 기본 스레드 작업 (캔버스 애니메이션)이 늦었지만 컴포지터 스레드 (스크롤)는 시간 내에 있는 경우입니다.
  4. 낙하된 프레임 (좁은 실선 패턴이 있는 빨간색). Chrome이 적절한 시간 내에 프레임을 렌더링할 수 없습니다.

부분적으로 표시된 프레임 위로 마우스를 가져갑니다.

이 예에서는 부분적으로 표시된 프레임에 마우스를 가져가면 도움말을 표시합니다.

프레임을 클릭하면 요약 탭에서 프레임에 대한 자세한 정보를 볼 수 있습니다. 그러면 DevTools에서 선택된 프레임 윤곽선을 파란색으로 표시합니다.

Summary(요약) 탭에서 프레임 보기

네트워크 요청 보기

네트워크 섹션을 펼쳐 녹화 중에 발생한 네트워크 요청의 워터폴을 확인합니다.

요약 탭이 열려 있는 네트워크 섹션에서 선택된 요청

요청은 다음과 같이 색상으로 구분됩니다.

  • HTML: 파란색
  • CSS: 보라색
  • JS: 노란색
  • 이미지: 녹색

요청을 클릭하여 요약 탭에서 자세한 정보를 확인합니다. 이전 예에서 요약 탭에는 선택된 녹색 요청에 대한 정보가 표시되어 있습니다.

요청의 왼쪽 상단에 있는 더 진한 파란색 정사각형은 우선순위가 더 높은 요청임을 의미합니다. 더 밝은 파란색 정사각형은 우선순위가 낮음을 의미합니다. 이전 예에서 선택된 요청의 우선순위가 높고 그 위에 있는 파란색 요청의 우선순위가 가장 높습니다.

요약 섹션에는 초기 우선순위 및 (최종) 우선순위 필드가 포함되어 있습니다. 값이 다르면 기록 중에 요청의 가져오기 우선순위가 변경된 것입니다. 자세한 내용은 Fetch Priority API로 리소스 로드 최적화를 참조하세요.

앞의 예에서 www.google.com 요청은 왼쪽의 선, 어두운 부분과 밝은 부분이 있는 가운데의 막대, 오른쪽의 선으로 표시됩니다. 다음 스크린샷은 Network 패널의 Timing 탭에 있는 동일한 요청의 해당 표현을 보여줍니다. 다음은 이 두 가지 표현이 서로 매핑되는 방식입니다.

  • 왼쪽 줄은 Connection Start 이벤트 그룹(이벤트 그룹 포함)까지입니다. 즉, Request Sent 앞의 모든 문자(제외)입니다.
  • 막대의 밝은 부분은 Request SentWaiting (TTFB)입니다.
  • 막대의 어두운 부분은 Content Download입니다.
  • 올바른 줄은 기본적으로 기본 스레드를 기다리는 데 걸리는 시간입니다. 타이밍 탭에는 표시되지 않습니다.

www.google.com 요청의 줄 바 표현

이 예에서는 www.google.com 요청의 선 막대 표현을 보여줍니다.

네트워크 섹션

이 예에서는 www.google.com 요청의 Timing 탭 표현을 보여줍니다.

메모리 측정항목 보기

마지막 기록의 메모리 측정항목을 보려면 메모리 체크박스를 사용 설정합니다.

메모리 체크박스

DevTools에서 Summary 탭 위에 새로운 Memory 차트를 표시합니다. NET 차트 아래에 HEAP라는 새 차트도 있습니다. HEAP 차트는 메모리 차트의 JS 힙 선과 동일한 정보를 제공합니다.

메모리 측정항목

이 예에서는 Summary 탭 위의 메모리 측정항목을 보여줍니다.

차트의 색상 선은 차트 위의 색상 체크박스에 매핑됩니다. 차트에서 해당 카테고리를 숨기려면 체크박스를 사용 중지하세요.

차트에는 선택한 녹음 영역만 표시됩니다. 앞의 예에서 메모리 차트에는 기록 시작 시의 메모리 사용량(최대 1,000ms 표시)만 표시됩니다.

일부 녹음 파일의 길이 보기

네트워크 또는 기본과 같은 섹션을 분석할 때 특정 이벤트의 소요 시간을 더 정확하게 예측해야 하는 경우가 있습니다. Shift 키를 누른 상태에서 길게 클릭한 다음 왼쪽 또는 오른쪽으로 드래그하여 기록의 일부를 선택합니다. 선택 항목 하단에 이 시간이 얼마나 걸렸는지 DevTools에 표시됩니다.

녹음된 부분의 길이 보기

이 예에서 선택된 부분 하단의 488.53ms 타임스탬프는 해당 부분이 소요된 시간을 나타냅니다.

스크린샷 보기

스크린샷을 사용 설정하는 방법은 녹화 중에 스크린샷 캡처를 참고하세요.

타임라인 개요 위로 마우스를 가져가면 녹화 시점에 페이지가 어떻게 표시되었는지에 대한 스크린샷을 볼 수 있습니다. 타임라인 개요에는 CPU, FPS, NET 차트가 포함된 섹션입니다.

스크린샷을 보는 중입니다.

프레임 섹션에서 프레임을 클릭하여 스크린샷을 볼 수도 있습니다. DevTools는 Summary 탭에 작은 버전의 스크린샷을 표시합니다.

요약 탭에서 스크린샷을 봅니다.

이 예에서는 Frames 섹션에서 195.5ms 프레임을 클릭했을 때 Summary 탭에 표시되는 스크린샷을 보여줍니다.

요약 탭에서 썸네일을 클릭하여 스크린샷을 확대합니다.

요약 탭에서 스크린샷을 확대합니다.

이 예는 요약 탭에서 썸네일을 클릭한 후 확대된 스크린샷을 보여줍니다.

레이어 정보 보기

프레임에 대한 고급 레이어 정보를 보려면 다음을 수행합니다.

  1. 고급 페인트 계측 사용 설정
  2. Frames(프레임) 섹션에서 프레임을 선택합니다. DevTools는 이벤트 로그 탭 옆의 새로운 레이어 탭에 레이어 관련 정보를 표시합니다.

레이어 탭입니다.

레이어 위로 마우스를 가져가면 다이어그램에서 해당 레이어가 강조 표시됩니다.

레이어 강조표시

이 예에서는 레이어 #39에 마우스를 가져가면 이 레이어가 강조 표시됩니다.

다이어그램을 이동하려면 다음 단계를 따르세요.

  • Pan Mode 화면 이동 모드를 클릭하여 X축과 Y축을 따라 이동합니다.
  • Z축을 따라 회전하려면 Rotation Mode 회전 모드를 클릭합니다.
  • Reset Transform 재설정 변환.을 클릭하여 다이어그램을 원래 위치로 재설정합니다.

실제 레이어 분석 보기:

페인트 프로파일러 보기

페인트 이벤트에 대한 고급 정보를 보려면 다음 단계를 따르세요.

  1. 고급 페인트 계측 사용 설정
  2. Main 트랙에서 Paint 이벤트를 선택합니다.

Paint Profiler 탭

렌더링 탭으로 렌더링 성능 분석

렌더링 탭의 기능을 사용하면 페이지의 렌더링 성능을 시각화할 수 있습니다.

렌더링 탭을 엽니다.

FPS 측정기로 초당 프레임 수를 실시간으로 확인하세요

프레임 렌더링 통계는 표시 영역의 오른쪽 상단에 표시되는 오버레이입니다. 페이지가 실행될 때 FPS의 실시간 추정치를 제공합니다.

프레임 렌더링 통계를 참고하세요.

페인트 플래싱으로 페인팅 이벤트를 실시간으로 확인하세요

페인트 플래싱을 사용하면 페이지의 모든 페인트 이벤트를 실시간으로 볼 수 있습니다.

페인트 플래싱을 참고하세요.

레이어 테두리가 있는 레이어 오버레이 보기

레이어 테두리를 사용하여 페이지 상단에 레이어 테두리와 타일의 오버레이를 표시합니다.

레이어 테두리를 참조하세요.

스크롤 성능 문제 실시간 찾기

스크롤 성능 문제를 사용하면 페이지 성능을 저하시킬 수 있는 스크롤과 관련된 이벤트 리스너가 있는 페이지 요소를 식별할 수 있습니다. DevTools는 잠재적으로 문제가 될 수 있는 요소를 청록색으로 간략히 설명합니다.

스크롤 성능 문제를 참고하세요.