[컴퓨터 구조]컴퓨터 구조 시뮬레이션 및 분석 by Simplescalar
*광*
다운로드
장바구니
소개글
안녕하세요?이 보고서는 지난 2005년 1학기 기말 텀프로젝트로 제출하였던 보고서입니다. 당시에 많은 어려움을 가지고 작업을 했던 애착이 많이 가는 보고서인데.. 같은 프로젝트로 고생하시는 분들.. 틀림없이 계실 것같아 이렇게 올립니다.
먼저, 저희들에게 주어진 텀프로젝트 과제 내용은 다음과 같습니다.
-------------------------------------------------
-Linux : 리눅스 설치후 심플스칼라라는 시뮬레이터를 설치합니다. 리눅스를 처음접하시는분들은 많은 애로가 있는 부분입니다.
-SpecInt 2000 Benchmark : 컴퓨터 구조론에서 한번쯤은 나오는 SpecInt 2000 Benchmark 프로그램들중 한 가지를 선정하여 컴파일하고 분석해야합니다. 또한 선정프로그램에 관한 순서도와 설명을 수록합니다. 본 보고서는 197.PARSER.zip를 선택하였습니다.
=>자료제출1 : 여기까지의 과정과 관련내용을 자료1로 작성하였습니다.
-Video(MPEG-1/2/4, H263, H264(+가산점), …)
-보안 (IDS, Firewall, …)
-암호 (DES, AES, RSA, …)
-인터넷(Browser, webserver, ftp, …)
-데이터 베이스
-게임
:한분야에서 2개이상의 코드를 선정하여 시뮬레이션 대상으로 사용합니다. 본보고서는 보안 분야의 RSA코드와 DES코드를 사용하였습니다.
=>자료제출2 : 1 분야에서 2개 이상의 code를 찾아서
SpecInt2000프로그램과 같은 과정으로 분석할 것
-Compiler : 선정한 소스코드의 컴파일
-Dlite debugger 실행 : Dlite debugger실행으로 debugging 과정 증명
-Application 분석 : 선정 어플리케이션 분석
=>자료제출3: Binary file with in optimization & with out optimization - optimization 에 따른 소스 변화를 분석합니다.(명령어수, branch 수 등등)
=>자료제출4; Dlite debugging 자료
=>자료제출5; application 분석 SPECINT 비교, Optimization 비교명령어 분포(ALU, Branch, Memory), 코드 크기)
-Target Machine Model Settings
-Xscale, Pentium3/4, Itanium2 ,Alpha, MIPS
=>자료제출6; machine 1개 선택, setting 관련자료
-Cache,Size/association,branch-predictionIn-order/out-order
< sim-outorder 성능분석>
-IPC
-Cache hit rate
-Branch prediction rate
-Pipeline Stall/Flue Cycle distribution
< Machine Setting factor 변경>
-Issue width(1->2->4->8way)
-in-order/out-order
-BP(Branch prediction)
-Cache Size
=>자료제출7; Optimized code 이용하여 sim-outorder 성능분석과 machine Setting factor 변경시 성능 변화(+가산점)를 논문으로 제출(그래프, 20 page 이내)
-------------------------------------------------
이와 같은 과제에 기초하여 그대로 작성하였습니다. simplescalar는 컴퓨터 구조론을 수..
목차
-Introduction
-제출 자료 구성
-Simplescalar installation
-Application introduction
-Compile,Debug,Application Analysis
-Machine Setting
-코드에 따른 기본 분석
-Machine Setting Factor 변경
Issue Width(1,2,4,8ways)
in-order, out-order
Branch Prediction
(L1)Cache Size
Cache organization
Cache line(block) size
-Conclusion
본문내용
Introduction이번 프로젝트는 심플스칼라 시뮬레이터를 이용하여 여러 코드들을 심플스클라 환경에서 여러 조건에 맞추어 시뮬레이션 하고 기존 프로그램들에 대한 각각의 결과 데이터 비교로 머신의 기능별 성능 향상 및 효율성 증대를 확인하는 프로젝트였다.
수업시간에 이론적인 내용들을 실제 시뮬레이션 과정에서 함으로써 실제 머신성능에 미치는 여러 가지 요소들을 확인하는 것이었다.
제출 자료 구성
제출파일은 폴더 네 개와 보고서 한 개 파일로 이루어져 있다. 보고서 파일에는 총괄적인 진행상황및 결과분석, 차트가 수록되어있다. 각 폴더는 DES, RSA, PARSER코드 시뮬레이션 수행에 대한 결과파일이 들어있다. 파일명은 조정한 factor로써 작성되어 있다.
Simplescalar installation
설치환경: Intel Pentium III 800MHz, 128RAM
OS: Redhat Linux 9 shrike
simplescarlar 3.0 used
- 심플스칼라 시뮬레이터 선정
학교내에서 팀원들의 효율적인 프로젝트 진행을 위해 노트북에 설치하기로 결정했으며 , 나중에 시뮬레이션을 수월하게 진행하기 위해서는 고성능 pc가 유리하다고 판단 상대적으로 가장 고성능 pc인 팀장의 노트북을 설치pc로 결정하였다.
- 리눅스 설치 과정
처음 설치할려고 했던 리눅스는 한컴리눅스4.0 이었다. 하지만 설치과정에서 예상치못한 에러가 다수 발생하여 프로젝트 진행이 더디어져서 , 다시 수세리눅스 9.3 을 설치하고 다시 시도하였으나 마찬가지로 에러가 다수 발생하였다. 다른 팀원들과의 협의를 통해 최종적으로 레드헷 9.0 을 설치하기로 결정했고 , 세 번의 시도 끝에 레드헷 9.0에서 심플스칼라 설치에 성공했다.
- 심플스칼라 설치시 문제점
리눅스 디렉토리 체계/명렁어 체계에 익숙하지 못해 파일에 접근하는 것조차도 익숙해지는데 너무나 많은 시간이 소요되었다. 또한 cd mount 작업 조차도 생각만큼 수월하지 않았다. 심플스칼라 설치 매뉴얼이 대부분 공개되어있지만 각 운영체제및 머신환경에 따라 변수가 많아 시행착오를 겪어야 했다.
참고 자료
Computer Organization and Design 3rd Edition-David Patterson-