HEVC test Model Profiling

HEVC test Model (HM) 16.20 버전을 Visual Studio에서 프로파일링 해봤습니다.

프로파일링은 소스를 돌렸을때 어떤 함수 및 모듈 등에서 CPU 등의 점유율 분포를 쉽게 알 수 있는 기능입니다.

OS: Windows 10 TOOL: Tortoise SVN, Visual Studio 2013

HM은 SVN 저장소에 소스가 저장되어 있기 때문에 오픈 소스 툴인 Tortoise SVN를 사용해서 다운로드 받습니다.

그림 1에서 저장소 URL(URL of repository)을 적어준 후 다운받을 곳 경로(Checkout directory)를 지정해 줍니다.

https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/ 가 root URL이고 각 버전별 관리되고 있는 소스가 tags 폴더 안에 있습니다. OK 버튼을 누르면 그림 2와 같이 다운로드됩니다.

그림 1 Tortoise SVN

그림 2 HM 구성물

Visual Studio를 실행해서 솔루션 파일을 열어줍니다. 솔루션 파일의 위치는 build에 있고 버전은 2010, 2012, 2013, 2015가 있습니다.

빌드 후 exe 파일을 통해 프로파일링을 진행할 계획입니다.

본 블로그에서 사용한 테스트 데이터는 PeopleOnStreet_1280x720_30.yuv입니다.

Release, x64로 바꾼 후 빌드를 해줍니다.

빌드를 하게되면 bin/vc2013/x64/Release/ 에 exe 파일이 생성되어 있을 것입니다.

alt + f2를 눌러 Performance and Diagnostics모드로 들어갑니다.

Change Target을 눌러 Executable을 선택해준뒤 Performance Wizard를 실행해줍니다.

CPU 점유율을 프로파일링 할 것이기 때문에 CPU sampling을 선택 후 Next 해줍니다

이후 An executable을 선택해 그림 3과 같이 exe 파일, arguments를 설정해줍니다.

간단히 파라미터들을 설명하겠습니다.

-i : 입력 데이터
-c : cfg 파일 경로
-b : bitstream 저장 경로
-o : Reconstruction 저장 경로 

그림 3 경로 지정 창

잠시 뒤 그림 4와 같이 프로파일링된 탭이 나옵니다.


그림 4 완성



댓글

이 블로그의 인기 게시물

Versatile video coding Test Model(VTM) Build

이미지 캡셔닝 Show and Tell 리뷰

Image Super-Resolution Using Deep Convolutional Networks 논문리뷰