Kise Labolatory 本文へジャンプ
SimCell 使い方

Let's build SimCell.

SimCellはクリーンなC++で記述されています.Intel Linux, Intel Cygwin などの多くの環境で動作します.
SimCellの実行ファイルを作成するためにはコンパイルが必要です.まずはSimCellの配布パッケージをダウンロードしてください.次に,パッケージを展開します.ここではSimCellのパッケージとしてファイル名が SimCell-0.8.0.tgz であると想定しますが,ダウンロードする版によって,SimCell-1.0.0.tgz といった名前になります.適切に修正してコマンドを実行してください.

まず,次のコマンドでパッケージを展開します.

$ tar xvfz SimCell-0.8.0.tgz

SimCell-0.8.0 というディレクトリが作成され,その中にソースコードなどが展開されます.次に,展開されたディレクトリに移動してコンパイルします.

$ cd SimCell-0.8.0
$ make

次のようなメッセージが表示され,正しくコンパイルされると SimCell という名前の実行ファイルが生成されます.

make SimCell
g++ -Wall -O3 -c main.cc
g++ -Wall -O3 -c memory.cc
g++ -Wall -O3 -c loaderbe.cc
g++ -Wall -O3 -c spe.cc
g++ -Wall -O3 -c spuinst.cc
g++ -Wall -O3 -c eib.cc
g++ -Wall -O3 -c etc.cc
g++ -static -Wall -O3 -o SimCell main.o memory.o loaderbe.o spe.o spuinst.o eib.o etc.o


Let's run SimCell.

コンパイルが成功していれば,コンパイルしたディレクトリに実行ファイルが生成されます.まずは,引数(パラメータ)を指定しないで実行してみます.
$ ./SimCell

SimCell: Cell/B.E. Simulator Version 0.8.0 2008-03-31
Usage: SimCell [-option] object_file_name
-f: ignore errors due to DMA address violation
...(一部省略)

上の様に,簡単な使い方が表示されるはずです.これがうまく表示されない場合には,なんらかの問題が生じています.

ディレクトリに含まれる Makefile にはサンプルをシミュレーションする規則が記述されています.次のコマンドで,サンプルを実行します.

$ make run

./SimCell -n1 tst/hello
SimCell: Cell/B.E. Simulator Version 0.8.0 2008-03-31
## SPEs: 1
## Mem Latency R/W, BW: 500/ 300, 16 | C2C Latency, BW: 300, 8
Hello world!
## All SPEs are stopped.
## SPEs: 1 | Cycle: 362 | Inst: 361 |

上の様に,メッセージが表示されれば成功です.これらに加えて,実行時間なども表示されますが,それらの値は利用している計算機の性能によって変化します.ここではSPEをターゲットとしてコンパイルされた hello という名前の実行ファイルを指定してシミュレーションしています.コマンドラインから次の様に入力しても実行できます.

$ ./SimCell -n1 tst/hello

ここで,オプション -n は利用するSPEの数を指定します.これを変更して実行してみましょう.

$ ./SimCell -n4 tst/hello

SimCell: Cell/B.E. Simulator Version 0.8.0 2008-03-31
## SPEs: 4
## Mem Latency R/W, BW: 500/ 300, 16 | C2C Latency, BW: 300, 8
Hello world!
Hello world!
Hello world!
Hello world!
## All SPEs are stopped.
## SPEs: 4 | Cycle: 362 | Inst: 1444 |

4個のSPEによって4つのHello world!という出力が得られることがわかります.SPEの数を様々に変化させて実行してみると面白い結果が得られます.

展開したディレクトリには,比較的,読みやすい形式に加工したソースコードのPDF(code.pdf)ファイルがあります.ソースコードを眺める前に,こちらに目を通すとよいかもしれません.


コンパイルおよび使い方の詳細はパッケージに含まれる README.txt を参照してください.

SimCell に関する質問・要望などは次の電子メールアドレスまで.

simcell at arch.cs.titech.ac.jp

     Copyright(c) 2008 Kise Laboratory. All rights reserved.