AWSで動作するRISC-Vシミュレーション環境FireSimのチュートリアルその3.
F1インスタンスにアクセスするために、生成したキーペアのfiresim.pemをホームディレクトリに配置しておく。
また、sshのキーと同様に、chmod 600
しておく。
$ chmod 600 ~/firesim.pem # firesim.pemを配置してから実行
リポジトリのダウンロードとビルド
まずはFireSimのリポジトリのダウンロードとビルドを行う。これには少し時間がかかるが、c4インスタンスなので速い。
git clone https://github.com/firesim/firesim
cd firesim
./build-setup.sh fast
次に設定ファイルをsourceする。これはログインするたびに実行しなければならない。
$ source sourceme-f1-manager.sh
次に、FireSimのマネージャを起動する。
$ firesim managerinit
ソフトウェアのビルド
次はソフトウェアのビルドだ。これには約10~15分かかる。
$ cd firesim/sw/firesim-software
$ ./build.sh
次に、FireSimのコンフィグレーションを行う。ここでは、シングルノードで、Rocket-Chip間のネットワークは使用しないため、以下のように設定を書き換える。
firesim/deploy/config_runtime.ini
# RUNTIME configuration for the FireSim Simulation Manager # See docs/Configuration-Details.rst for documentation of all of these params. [runfarm] runfarmtag=mainrunfarm f1_16xlarges=0 m4_16xlarges=0 f1_2xlarges=1 runinstancemarket=ondemand spotinterruptionbehavior=terminate spotmaxprice=ondemand [targetconfig] topology=no_net_config no_net_num_nodes=1 linklatency=6405 switchinglatency=10 netbandwidth=200 # This references a section from config_hwconfigs.ini # In homogeneous configurations, use this to set the hardware config deployed # for all simulators defaulthwconfig=firesim-quadcore-no-nic-ddr3-llc4mb [workload] workloadname=linux-uniform.json terminateoncompletion=no
最後に以下を実行してFireSimを立ち上げるのだが、エラーを吐いてしまった。
$ firesim launchrunfarm Running: launchrunfarm An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. An error occurred (InvalidKeyPair.NotFound) when calling the RunInstances operation: The key pair 'firesim' does not exist This probably means there was no more capacity in this availability zone. Try the next one. we tried all subnets, but there was insufficient capacity to launch your instances only the following 0 instances were launched [] Waiting for instance boots: f1.16xlarges Waiting for instance boots: m4.16xlarges Waiting for instance boots: f1.2xlarges Fatal error. Traceback (most recent call last): File "/home/centos/firesim/deploy/firesim", line 300, in <module> main(args) File "/home/centos/firesim/deploy/firesim", line 249, in main globals()[args.task](simconf) File "/home/centos/firesim/deploy/firesim", line 137, in launchrunfarm runtime_conf.runfarm.launch_run_farm() File "/home/centos/firesim/deploy/runtools/run_farm.py", line 198, in launch_run_farm wait_on_instance_launches(f1_2s, 'f1.2xlarges') File "/home/centos/firesim/deploy/awstools/awstools.py", line 230, in wait_on_instance_launches for instance in instances: TypeError: 'NoneType' object is not iterable The full log of this run is: /home/centos/firesim/deploy/logs/2018-06-21--13-18-24-launchrunfarm-WWZ1V5VC1UMFXIY9.log