슈퍼스칼라 프로세서를 이용한 gcc 벤치마크에 대한 성능평가 분석
본 자료는 4페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
해당 자료는 4페이지 까지만 미리보기를 제공합니다.
4페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1. 서 론

2. 이론적 배경
2.1. 시뮬레이터
2.2. 벤치마크 프로그램
2.3. sim-profile 수행
2.4. sim-outorder 수행

3. SimpleScalar

4. gcc 벤치마크의 sim-profile

5. gcc 벤치마크의 sim-outorder
5.1 pipetrace를 수행 비교 결과
5.2 gcc 벤치마크에 pipetrace를 수행 비교 결과

6. gcc벤치마크에 1이슈, 4이슈, 8이슈 비순차 이슈 성능 비교 및 4이슈머신에 대한 성능과 분기예측정확도 비교
6.1 1이슈, 4이슈, 8이슈 비순차 이슈 성능비교 분석
6.2 비순차 4이슈에서의 분기예측기 성능 비교

7. 결 론

본문내용

n, sim_cycle, sim_IPC를 비교한 결과이다.
class
gcc95.outorderO0.gcc.100M.ss
gcc95.outorderO0.gcc.100M.ss
gcc95.outorderO0.gcc.100M.ss
sim_num_insn
300,000,000
266,129,655
263,267,781
sim_total_insn
412,784,268
319,208,984
31,288,261
sim_cycle
413,674,740
291,621,326
300,619,523
sim_IPC
0.8492
0.9126
0.8758
<표 3> 최적화에 따른 sim_num_insn, sim_total_insn, sim_cycle, sim_IPC 비교결과
그림 3. 최적화에 따른 sim_num_insn, sim_total_insn, sim_cycle 비교결과 그래프
그림 4. 최적화에 따른 sim_IPC 비교결과 그래프
최적화 gcc95.outorderO0.gcc.100M.ss를 기준으로 대비했을 때 나머지 O1최적화와 O2최적화는 sim_num_insn, sim_total_insn, sim_cycle은 전체적으로 감소한걸 볼 수 있었고, sim_IPC는 최적화 gcc95.outorderO1.gcc.100M.ss이 가장 성능이 좋은 것을 확인할 수 있다.
6. gcc벤치마크에 1이슈, 4이슈, 8이슈 비순차 이슈 성능 비교 및 4이슈머신에 대한 성능과 분기예측정확도 비교
본 장에서는 지정된 벤치 마크 gcc에 대해 1이슈, 4이슈, 8이슈 비순차 이슈에 대해 성능(IPC)을 비교하고, 4이슈 머신에 대해 분기 예측기 옵션을 주어서 성능(IPC) 및 분기 예측 정확도를 비교하여 성능 향상에 방법에 대해 제시한다.
6.1 1이슈, 4이슈, 8이슈 비순차 이슈 성능비교 분석
여기서는 각 벤치마크 프로그램에 1이슈, 4이슈, 8이슈 비순차 이슈를 각각 적용하여 그 상태에 따른 IPC(Instruction per cycle) 값의 변화를 측정하였다. 단 최대 300M까지 명령만 수행하고 기본적으로 다음과 같은 옵션을 주었다.
<표 5>bpred의 종류
bpred의 종류
역 할
nottaken
분기예측시 무조건 nottaken이라 생각하고 다음 단계로 분기하는것
gshare
과거의 분기된 결과의 히스토리를 통해 현재 분기할 방향을 예측하는것
bimod
자기 자신의 과거 수행값을 2비트 counter를 사용하여 연속 두 번 분기 예측이 맞지 않았을 경우 다른 값으로 예측하는 것
perfect
분기 수행이 완벽하다고 가정하고 수행하는것
<표 6>는 비순차 n이슈 성능을 비교한 표이다.
그림 5. 비순차 n이슈 IPC 비교
<표 6> 비순차 n이슈 성능 비교
비순차 n이슈 성능을 비교한 결과 위 표와 그림을 보면 알수 있듯이 가장 좋은 성능을 나타낸 것은 IPC가 1.0589인 최적화 gcc95.outorderO1.gcc.100M.ss에 대한 8이슈였고, 1이슈나 4이슈에 비해 8이슈는 100% 이상의 성능 향상을 보였다.
비순차 n이슈는 1이슈, 4이슈, 8이슈 순으로 성능이 좋은 것을 확인해 볼 수 있다.
6.2 비순차 4이슈에서의 분기예측기 성능 비교
정적 분기 예측과 동적 분기예측방식을 이용하여 시뮬레이션을 하게 된다. nottaken은 정적 분기 예측방식이며 bimod와 gshare는 동적 분기 예측방식이며 perfect 예측기는 100%의 방향 예측 정확도를 갖는 예측기를 의미한다. 여기서는 4이슈 머신에 대해 분기예측 정확도와 성능(IPC)를 비교한다. <표 7>과 그림 6.은 비순차 4이슈에서 분기예측 성능 비교한 결과이다.
<표 7>비순차 4이슈에서 분기예측기 성능 비교
그림 6. 비순차 4이슈에서 분기 예측기 성능비교
비순차 4이슈에서의 분기 예측기 성능을 각각의 시뮬레이션 결과를 보면 perfect를 기준으로 했을 때, IPC가 nottaken은 평균 50.94%, bimod는 평균 85.91%, 2lev는 평균 85.69%로 bimod가 가장 성능이 좋은 것을 볼 수 있었다. 특히 bimod중에서도 최적화 gcc95.outorderO2.gcc.100M.ss 최적화가 perfect대비했을 경우 제일 성능이 좋은 것을 확인 할수 있다.
7. 결 론
본 연구는 대표적인 슈퍼스칼라 시뮬레이터인 Wisconsin-Madison 대학 D.Burger, Todd Austin 등에 의해 개발된 심플 스칼라 툴셋(SimpleScalar Tool Set)을 linux에 인스톨하여 분기예측 정확도를 측정하기 위한 실험 환경을 구축하였다.
현재 가장 많이 사용되어 지고 있는 ILP 프로세서인 SimpleScalar 아키텍쳐 시뮬레이터인 SimpleScalar Tool Set 3.0을 이용하여 SPEC 2000의 gcc 벤치마크를 시뮬레이션 하였다. 성능 평가 방법으로는 이슈에 따른 IPC, 분기 예측방식에 따른 분기 예측 정확도에 분기예측기인 nottaken, bimod, gshare, perfect에 대해서 알아보았다. 또한 이러한 것들에 대한 관계를 표와 그림으로써 제공하였다.
gcc벤치마크 프로그램은 프로그래밍 언어의 번역기로써 데이터의 값이 어떻게 변하는지 예측하기 쉬운 벤치마크 프로그램이다. 본 벤치마크 프로그램을 통한 성능 평가 비교분석을 통해 데이터를 얻은 결과 슈퍼스칼라 프로세서는 한번에 처리할수 있는 단위(Issue)가 커질수록 성능 향상에 도움이 되며 1이슈, 4이슈, 8이슈 중 8이슈가 가장 성능이 좋으면 그중 gcc95.outorderO1.gcc.100M.ss에 대해 더 성능이 좋았다. 또한 분기예측기로서는 물론 perfect를 사용할 수 있다면 좋겠지만 그렇지 못한 상황에서는 비순차 4이슈에서의 분기예측기 성능을 비교한 결과 bimod가 가장 좋은 성능을 보여 주고 있다는 것을 알 수 있었다.
이러한 벤치마크 프로그램을 시뮬레이션을 통한 성능 평가 비교 분석 및 연구를 통하여 컴퓨터의 새로운 분야를 접했으며, 또한 성능 향상에 대해 분석표를 통하여 IPC 및 분기 예측 정확도를 성능 비교해 성능을 최대한 향상 시킬수 있는 시스템을 구현 할 수 있을 것이다.
  • 가격2,700
  • 페이지수12페이지
  • 등록일2008.08.11
  • 저작시기2008.8
  • 파일형식한글(hwp)
  • 자료번호#475777
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니