다음을 통해 공유


성능 및 진단 허브의 프로필 기반 최적화

성능 및 진단 허브에서 Visual C++ 플러그 인에 대한 프로필 기반 최적화는 개발자를 위한 프로필 기반 최적화 환경을 간소화 합니다.플러그 인을 Visual Studio 웹 사이트에서 다운로드 할 수 있습니다.

프로필 기반 최적화 (PGO)는 사용자가 상호작용하는 최적화 된 방법으로 x86 및 x 64 네이티브 앱 빌드를 만듭니다.PGO는 여러 단계의 프로세스입니다: 프로 파일링에 대한 계측된 응용 프로그램 빌드를 만든 다음 "교육"을 수행 합니다-즉, 일반적인 사용자 상호 작용 시나리오를 통해 계측된 응용 프로그램을 실행합니다.캡처된 프로 파일링 데이터를 저장한 다음, 결과 전체 프로그램 최적화를 사용하여 응용 프로그램을 다시 빌드 합니다.Visual Studio 또는 명령줄에서 다음 이 단계를 개별적으로 수행할 수 있습니다, 하지만 PGO 플러그인은 중앙 집중화 하고 프로세스를 간단하게 합니다.PGO 플러그인은 필요한 옵션을 모두 설정하고 각 단계를 안내 하고, 분석을 보여 준 다음 결과를 사용하여 각 함수의 크기 또는 속도에 최적화하여 빌드를 구성 합니다.또한 PGO 플러그인은 교육 응용 프로그램을 다시 실행하고 코드를 변경할 때 빌드 최적화 데이터를 업데이트 하기가 쉽게 만듭니다.

필수 구성 요소

PGO 플러그인을 에서 다운로드 하고 성능 및 진단 허브에 사용 하기 전에 Visual Studio에 그것을 설치 합니다.

연습: PGO 플러그인을 사용하여 응용 프로그램 최적화하기

첫째, Visual Studio에서 기본 Win32 데스크톱 응용 프로그램을 만들어 봅니다.만약 최적화하고 싶은 원시 앱이 이미 있는 경우, 그것을 사용해도 되고 이 단계를 건너뜁니다.

앱을 만들려면

  1. 메뉴 모음에서 파일, 새로 만들기, 프로젝트를 차례로 선택합니다.

  2. 새 프로젝트 대화 상자 왼쪽 창에서, 설치됨, 템플릿, **Visual C++**를 확장한 다음 MFC를 선택합니다.

  3. 가운데 창에서, MFC 응용 프로그램을 선택합니다.

  4. 프로젝트 이름(예: 이름 상자의 SamplePGOProject)을 지정합니다.확인 단추를 선택합니다.

  5. MFC 응용 프로그램 마법사 대화 상자의 개요 페이지에서 마침 단추를 선택합니다.

다음, PGO 빌드 및 교육 단계를 준비 하기 위해 당신의 앱의 빌드 구성을 릴리스로 설정합니다.

빌드 구성을 설정하려면

  1. 메뉴 모음에서 빌드, 구성 관리자를 선택합니다.

  2. 구성 관리자 대화 상자에서, 활성 솔루션 구성 드롭다운 버튼을 선택하고 릴리스를 선택합니다.닫기 버튼을 선택합니다.

성능 및 진단 허브-선택 메뉴 모음을 열고 분석, 성능 및 진단을 선택합니다.이 프로젝트 형식에 사용할 수 있는 분석 도구를 진단 세션 페이지를 엽니다.

성능 및 진단 허브의 PGO

사용할 수 있는 도구에서, 프로필 기반 최적화 확인란을 선택합니다.시작 버튼을 선택하여 PGO 플러그인을 시작합니다.

PGO 소개 페이지

프로필 기반 최적화 페이지에서는 응용 프로그램의 성능을 향상 시키기 위해 사용하는 플러그 인 단계를 설명 합니다.시작 버튼을 선택합니다.

PGO 계측 페이지

계측 섹션에서, 교육을 처음에 사용하게 합니다. 옵션을 사용하여 응용 프로그램의 시작 단계에서 교육의 일부로 포함할지 여부를 선택할 수 있습니다.이 옵션이 선택되지 않으면, 교육을 명시적으로 설정할 때까지 성향 습득 데이터는 실행 중인 계측 된 응용 프로그램에 기록 되지 않습니다.

계기 버튼을 선택하여 특수 컴파일러 옵션 집합이 있는 응용 프로그램을 빌드합니다.컴파일러는 생성된 코드 검사 지침을 삽입합니다.이 지침은 교육 단계에서 프로 파일링 데이터를 기록합니다.

PGO 계측된 빌드 페이지

응용 프로그램의 계측 된 빌드가 완료 되면, 응용 프로그램이 자동으로 시작 됩니다.

빌드하는 동안 오류 또는 경고가 발생하면, 수정하고 다시 빌드 를 선택하여 계측 된 빌드를 다시 시작 합니다.

응용 프로그램이 시작 될 때, 교육 시작교육 정지 링크를 교육 섹션에 사용하여 프로파일링 정보가 기록될 때 컨트롤 할 수 있습니다.응용 프로그램 중지응용 프로그램 시작 링크를 사용하여 응용 프로그램을 중지하고 다시 시작할 수 있습니다.

PGO 학습 페이지

교육을 하는 동안, 코드를 최적화 하는 데 필요한 PGO 플러그인 프로파일링 정보를 수집하기 위해 사용자 시나리오를 검사합니다.교육을 완료하면, 응용 프로그램을 닫거나 응용 프로그램 중지 링크를 선택합니다.분석 버튼을 선택하여 분석 단계를 시작합니다.

분석이 완료 되면, 분석 단원에서는 사용자 시나리오 교육 단계 동안에 수집된 프로파일링 정보의 보고서를 보여줍니다.이 보고서를 당신의 앱이 가장 많이 호출되고 소비된 시간을 확인하는 데 사용할 수 있습니다.PGO 플러그인은 어떤 응용 프로그램의 기능이 속도와 크기를 최적화하는지 결정하는 데 이 정보를 사용 합니다.PGO 플러그인은 빌드 최적화 훈련 하는 동안 기록된 사용자 시나리오에 대한 가장 작고, 가장 빠른 응용 프로그램을 만들기 위해 빌드 최적화를 구성합니다.

PGO 분석 페이지

교육이 예상된 프로 파일링 정보를 수집했다면, 변경 내용 저장 을 선택하여 향후 빌드를 최적화하기 위해 프로젝트에서 분석된 프로필 데이터를 저장합니다.프로필 데이터를 삭제하고 처음부터 다시 교육을 시작 하려면, 교육 다시하기을 선택합니다.

프로 파일 데이터 파일은 PGO 성향 습득 데이터 폴더에서 프로젝트에 저장됩니다.이 데이터는 응용 프로그램에 컴파일러 빌드 최적화 설정을 제어 하는 데 사용 됩니다.

솔루션 탐색기의 PGO 데이터 파일

분석 후, PGO 플러그인 집합은 선택적으로 컴파일하는 동안 응용 프로그램을 최적화 하기 위해 프로파일 데이터를 사용하여 프로젝트의 빌드 옵션을 설정 합니다.동일한 프로필 데이터를 사용하여 응용 프로그램을 수정하고 계속 빌드할 수 있습니다.응용 프로그램을 빌드할 때, 빌드 출력은 프로파일 데이터를 사용하여 얼마나 많은 함수와 명령이 최적화 되었는지 보고합니다.

PGO 출력 진단

개발 하는 동안 상당한 코드가 변경되었다면, 최상의 최적화를 얻기 위해 응용 프로그램을 재연습 해야 합니다.빌드 출력이 기능 또는 명령의 80% 미만이 프로파일 데이터를 사용하여 최적화되었을 때 앱을 재연습하는 것을 권장합니다.