GEMS Ruby Build

The Wisconsin Multifacet Project is pleased to present the open-source release of our General Execution-driven Multiprocessor Simulator (GEMS). GEMS is a set of modules for Virtutech Simics that enables detailed simulation of multiprocessor systems, including Chip-Multiprocessors (CMPs).

GEMS의 ./ruby/system/CacheMemory.h를 쓰려고 하는데, 빌드하지 않고서는 제대로 쓸 수 없었다. 빌드하는 과정에서 생성되는 코드들이 있는데, 이를 위해 GEMS의 ruby를 빌드했다.

혹시 에러가 빌드 환경에 의한 것인가 싶어서 이것저것 맞춰보았으나, GEMS에서 요구하는 빌드 환경을 맞추는 것이 더 힘들었다. 나는 아래와 같은 빌드 환경에서 빌드했으며, 그럼에도 빌드가 잘 되었다.

Build Environment
– gcc version : 4.1.2
– flex version : 2.5.4
– bison version : 2.3
– Simics version : 3.0.31

Simics는 연구실에서 제공되는 것을 사용했으므로, 아래의 모든 것은 Simics가 이미 설치되어 있는 상황을 가정한다. 본인의 경우 Simics는 /opt/virtutech/simics-3.0.31 에 설치되어 있었다.

1. GEMS 다운로드 및 압축 해제

$tar -xzvf ./gems-release2.1.1.tar.gz

2. 환경 변수 설정

$export GEMS=/home/gumdaeng/gems-2.1.1
$export SIMICS_INSTALL=/opt/virtutech/simics-3.0.31

3. Simics workspace 생성

$cd $GEMS/
$mkdir simic_3_workspace
$cd $SIMICS_INSTALL/bin
$./workspace-setup $GEMS/simics_3_workspace

4. makesymlinks.sh 수정
25번째 줄을 수정한다.

//Before modification
ln -s /p/multifacet/projects/simics/simics-3.0.11/import import
//After modification
ln -s =/opt/virtutech/simics-3.0.31/import import

5. makesymlinks.sh 실행

$cd $GEMS/simics_3_workspace
$./../scripts/makesymlinks.sh

6. Simics src에 대한 심볼릭 링크 생성

$pwd
/home/gumdaeng/gems-2.1.1/simics_3_workspace
$ln -s /opt/virtutech/simics-3.0.31/src src

7. Simics workspace에 대한 심볼릭 링크 생성

$cd $GEMS
$ln -s simics_3_workspace simics

8. GEMS Makefile 수정
./common/Makefile.common : 98

CC_VERSION=3.4.4 //Before modification
CC_VERSION=4.1.2 //After modification

./common/Makefile.common : 101

CC = /s/gcc-3.4.4/bin/g++ //Before modification
CC = /usr/bin/g++ //After modification

9. Simics 실행 (실행하지 않으면 약관에 동의하지 않았다는 에러 메시지 발생함)

$GEMS/simics_3_workspace/simics

10. Make Ruby

$cd $GEMS/ruby
$make PROTOCOL=MOSI_SMP_bcast DESTINATION=MOSI_SMP_bcast
Advertisements
Tagged with: , , , , ,
Posted in 2) Computer Engineering
One comment on “GEMS Ruby Build
  1. […] 2. GEMS Ruby Build […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

누적 방문자 수
  • 88,328 hits
%d bloggers like this: