"PowerTRACE 활용한 SW 성능 분석"의 두 판 사이의 차이
(새 문서: <p>본 페이지에서는 측정된 TRACE 데이터를 활용하여 SW 성능을 분석하는 방법에 대해 설명합니다.</p> <p> </p> <p>1. TRACE configuration</p> <p>&nbs...) |
|||
7번째 줄: | 7번째 줄: | ||
<ul> | <ul> | ||
<li> | <li> | ||
− | <div style="margin: 0cm 0cm 0pt;"><span style="font-size: | + | <div style="margin: 0cm 0cm 0pt;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">Method : Analyzer (PowerTRACE </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">장비 연결시 자동으로 설정됨<span lang="FI">)</span></span></span></div> |
</li> | </li> | ||
</ul> | </ul> | ||
13번째 줄: | 13번째 줄: | ||
<ul> | <ul> | ||
<li> | <li> | ||
− | <div style="margin: 0cm 0cm 0pt;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <div style="margin: 0cm 0cm 0pt;"><span lang="FI" style="font-family: "맑은 고딕"; font-size: small; mso-ansi-language: FI;">State </span></div> |
</li> | </li> | ||
</ul> | </ul> | ||
<p><span style="font-family: 굴림; font-size: small;"> </span></p> | <p><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">DISable : </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">비활성화 상태</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">OFF : NEXUS </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">데이터를 샘플링 하지 않음<span lang="FI">. Trace data </span>확인 가능</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">Arm : NEXUS </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">데이터 샘플링</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
<ul> | <ul> | ||
<li> | <li> | ||
− | <div style="margin: 0cm 0cm 0pt;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <div style="margin: 0cm 0cm 0pt;"><span lang="FI" style="font-family: "맑은 고딕"; font-size: small; mso-ansi-language: FI;">Commands</span></div> |
</li> | </li> | ||
</ul> | </ul> | ||
<p><span style="font-family: 굴림; font-size: small;"> </span></p> | <p><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">RESET : TRACE </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">설정 사항 초기화</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">Init : TRACE </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">메모리 초기화</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">List : Trace.list </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">창을 열어 측정된 <span lang="FI">TRACE </span>데이터 확인 가능</span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">AutoArm : </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">타겟 러닝시 자동으로 <span lang="FI">state</span>를 <span lang="FI">Arm </span>으로 변경 </span></span></p> |
<p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | <p style="padding-left: 60px;"><span style="font-family: 굴림; font-size: small;"> </span></p> | ||
− | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI | + | <p style="margin: 0cm 0cm 0pt; padding-left: 60px;"><span style="font-size: small;"><span lang="FI" style="font-family: "맑은 고딕"; mso-ansi-language: FI;">AutoInit : </span><span style="font-family: "맑은 고딕"; mso-ansi-language: FI;">타겟 재시작시 자동으로 <span lang="FI">Trace </span>메모리 초기화</span></span></p> |
<p> </p> | <p> </p> | ||
<p>2. SW 성능 분석</p> | <p>2. SW 성능 분석</p> | ||
<ul> | <ul> | ||
− | < | + | </ul> |
+ | <p>1) 함수 수행 시간에 대한 statistic 정보와 추가 메뉴를 사용하여 프로그램 성능 정보를 쉽게 확인할 수 있습니다.</p> | ||
+ | <ul> | ||
</ul> | </ul> | ||
<p style="padding-left: 30px;">전체 프로그램 성능에 대한 통계치를 한눈에 파악<br />특정 함수에서 추가 메뉴를 활용하여 성능 정보에 대한 추적이 용이</p> | <p style="padding-left: 30px;">전체 프로그램 성능에 대한 통계치를 한눈에 파악<br />특정 함수에서 추가 메뉴를 활용하여 성능 정보에 대한 추적이 용이</p> | ||
47번째 줄: | 49번째 줄: | ||
<p style="padding-left: 30px;"> </p> | <p style="padding-left: 30px;"> </p> | ||
<ul> | <ul> | ||
− | < | + | </ul> |
+ | <p>2) 최초, 마지막 SW 수행 정보 <br />함수 수행된 결과 중 제일 처음 / 마지막 수행 위치 확인</p> | ||
+ | <ul> | ||
</ul> | </ul> | ||
<p> <img src="/data/wiki/2016-06-29/1467188146.png" alt="" /></p> | <p> <img src="/data/wiki/2016-06-29/1467188146.png" alt="" /></p> | ||
53번째 줄: | 57번째 줄: | ||
<p> </p> | <p> </p> | ||
<ul> | <ul> | ||
− | < | + | </ul> |
+ | <p>3) 최대 수행 시간의 SW 정보<br />특정함수가 수행된 중 제일 오랜 시간이 소요된 경우의 코드정보 확인<br />해당 함수를 호출한 함수(caller), 호출된 회수에 대한 분석 정보 확인</p> | ||
+ | <ul> | ||
</ul> | </ul> | ||
<p> <img src="/data/wiki/2016-06-29/1467188167.png" alt="" /></p> | <p> <img src="/data/wiki/2016-06-29/1467188167.png" alt="" /></p> | ||
<p> </p> | <p> </p> | ||
<ul> | <ul> | ||
− | < | + | </ul> |
+ | <p>4) 특정 함수가 호출되는 interval 시간과 측정된 시간의 비율 확인</p> | ||
+ | <ul> | ||
</ul> | </ul> | ||
<p> <img src="/data/wiki/2016-06-29/1467188184.png" alt="" /></p> | <p> <img src="/data/wiki/2016-06-29/1467188184.png" alt="" /></p> | ||
64번째 줄: | 72번째 줄: | ||
<p> </p> | <p> </p> | ||
<ul> | <ul> | ||
− | < | + | </ul> |
+ | <p>5) 하나의 함수 또는 ISR 이 수행된 시간을 측정 & 측정된 시간의 비율 확인</p> | ||
+ | <ul> | ||
</ul> | </ul> | ||
<p> <img src="/data/wiki/2016-06-29/1467188230.png" alt="" /></p> | <p> <img src="/data/wiki/2016-06-29/1467188230.png" alt="" /></p> | ||
− | |||
<p> </p> | <p> </p> | ||
<p> </p> | <p> </p> |
2016년 6월 29일 (수) 17:22 기준 최신판
본 페이지에서는 측정된 TRACE 데이터를 활용하여 SW 성능을 분석하는 방법에 대해 설명합니다.
1. TRACE configuration
기본적인 TRACE 설정 창 입니다.
-
Method : Analyzer (PowerTRACE 장비 연결시 자동으로 설정됨)
-
State
DISable : 비활성화 상태
OFF : NEXUS 데이터를 샘플링 하지 않음. Trace data 확인 가능
Arm : NEXUS 데이터 샘플링
-
Commands
RESET : TRACE 설정 사항 초기화
Init : TRACE 메모리 초기화
List : Trace.list 창을 열어 측정된 TRACE 데이터 확인 가능
AutoArm : 타겟 러닝시 자동으로 state를 Arm 으로 변경
AutoInit : 타겟 재시작시 자동으로 Trace 메모리 초기화
2. SW 성능 분석
1) 함수 수행 시간에 대한 statistic 정보와 추가 메뉴를 사용하여 프로그램 성능 정보를 쉽게 확인할 수 있습니다.
전체 프로그램 성능에 대한 통계치를 한눈에 파악
특정 함수에서 추가 메뉴를 활용하여 성능 정보에 대한 추적이 용이
2) 최초, 마지막 SW 수행 정보
함수 수행된 결과 중 제일 처음 / 마지막 수행 위치 확인
3) 최대 수행 시간의 SW 정보
특정함수가 수행된 중 제일 오랜 시간이 소요된 경우의 코드정보 확인
해당 함수를 호출한 함수(caller), 호출된 회수에 대한 분석 정보 확인
4) 특정 함수가 호출되는 interval 시간과 측정된 시간의 비율 확인
5) 하나의 함수 또는 ISR 이 수행된 시간을 측정 & 측정된 시간의 비율 확인