empty FpgaImages while running launchrunfarm

76 views
Skip to first unread message

Atish Patra

unread,
Jan 21, 2021, 7:40:17 PM1/21/21
to FireSim

Hi,
I am trying to run a single node simulation. I followed the steps described in https://docs.fires.im/en/latest/Running-Simulations-Tutorial/Running-a-Single-Node-Simulation.html.

After running launchfarm, I got the following error. Any suggestions ?

------------------------------------------------------------------


Running: launchrunfarm

2021-01-22 00:38:40,192 [__init__    ] [DEBUG]  {'hwconf_dict': {'firesim-boom-singlecore-nic-l2-llc4mb-ddr3': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e518>,

                 'firesim-boom-singlecore-no-nic-l2-llc4mb-ddr3': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e4d0>,

                 'firesim-rocket-quadcore-nic-l2-llc4mb-ddr3': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e5f0>,

                 'firesim-rocket-quadcore-no-nic-l2-llc4mb-ddr3': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e638>,

                 'firesim-rocket-singlecore-no-nic-l2-llc4mb-ddr3-half-freq-uncore': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e5a8>,

                 'firesim-supernode-rocket-singlecore-nic-l2-lbp': <runtools.runtime_config.RuntimeHWConfig instance at 0x7f8b3a18e560>}}

2021-01-22 00:38:40,199 [aws_resource] [DEBUG]  i-0a3b59e70ee43366b

2021-01-22 00:38:40,401 [aws_resource] [DEBUG]  {'Name': 'awo-od-firesim01', 'Environment': 'PoC', 'Application': 'firesim', 'User': 'atish...@wdc.com', 'Department': 'CTO Group', 'Owner': 'atish...@wdc.com'}

2021-01-22 00:38:40,402 [__init__    ] [DEBUG]  {'autocounter_readrate': 0,

 'defaulthwconfig': 'firesim-rocket-quadcore-no-nic-l2-llc4mb-ddr3',

 'disable_asserts': False,

 'f1_16xlarges_requested': 0,

 'f1_2xlarges_requested': 1,

 'f1_4xlarges_requested': 0,

 'linklatency': 6405,

 'm4_16xlarges_requested': 0,

 'netbandwidth': 200,

 'no_net_num_nodes': 1,

 'print_cycle_prefix': True,

 'print_end': '-1',

 'print_start': '0',

 'profileinterval': -1,

 'run_instance_market': 'ondemand',

 'runfarmtag': 'mainrunfarm',

 'spot_interruption_behavior': 'terminate',

 'spot_max_price': 'ondemand',

 'suffixtag': '',

 'switchinglatency': 10,

 'terminateoncompletion': False,

 'topology': 'no_net_config',

 'trace_enable': False,

 'trace_end': '-1',

 'trace_output_format': '0',

 'trace_select': '1',

 'trace_start': '0',

 'workload_name': 'bao.json',

 'zerooutdram': False}

2021-01-22 00:38:40,407 [get_deploytr] [DEBUG]  Setting deploytriplet by querying the AGFI's description.

2021-01-22 00:38:40,407 [get_afi_for_] [DEBUG]  agfi-026b8446b58e41566

2021-01-22 00:38:40,407 [get_afi_for_] [DEBUG]  None

2021-01-22 00:38:42,733 [get_afi_for_] [DEBUG]  {u'FpgaImages': [], 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': '4363ba01-5bcf-4597-beb5-268866075609', 'HTTPHeaders': {'x-amzn-requestid': '4363ba01-5bcf-4597-beb5-268866075609', 'transfer-encoding': 'chunked', 'strict-transport-security': 'max-age=31536000; includeSubDomains', 'vary': 'accept-encoding', 'server': 'AmazonEC2', 'cache-control': 'no-cache, no-store', 'date': 'Fri, 22 Jan 2021 00:38:41 GMT', 'content-type': 'text/xml;charset=UTF-8'}}}

2021-01-22 00:38:42,733 [<module>    ] [ERROR]  Fatal error.

Traceback (most recent call last):

  File "/home/centos/firesim/deploy/firesim", line 334, in <module>

    main(args)

  File "/home/centos/firesim/deploy/firesim", line 280, in main

    simconf = RuntimeConfig(args)

  File "/home/centos/firesim/deploy/runtools/runtime_config.py", line 363, in __init__

    self.innerconf.print_cycle_prefix)

  File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 67, in __init__

    self.phase_one_passes()

  File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 360, in phase_one_passes

    self.pass_apply_default_hwconfig()

  File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 291, in pass_apply_default_hwconfig

    server.get_server_hardware_config().get_deploytriplet_for_config()

  File "/home/centos/firesim/deploy/runtools/runtime_config.py", line 48, in get_deploytriplet_for_config

    'firesim-deploytriplet')


Executing this shows all the AFIs available.

aws ec2 describe-fpga-images --filters Name=name,Values=firesim-rocket-quadcore-no-nic-l2-llc4mb-ddr3

       {

            "UpdateTime": "2020-07-20T05:11:58.000Z", 

            "Name": "firesim-rocket-quadcore-no-nic-l2-llc4mb-ddr3", 

            "Tags": [], 

            "PciId": {

                "SubsystemVendorId": "0xfedd", 

                "VendorId": "0x1d0f", 

                "DeviceId": "0xf000", 

                "SubsystemId": "0x1d51"

            }, 

            "FpgaImageGlobalId": "agfi-0e6e54cd1923411cf", 

            "Public": true, 

            "State": {

                "Code": "available"

            }, 

            "ShellVersion": "0x04261818", 

            "OwnerId": "552479941143", 

            "FpgaImageId": "afi-087e256d21f2ba106", 

            "CreateTime": "2020-07-20T05:11:51.000Z", 

            "Description": "firesim-buildtriplet:FireSim-DDR3FRFCFSLLC4MB_FireSimQuadRocketConfig-F90MHz_BaseF1Config,firesim-deploytriplet:FireSim-DDR3FRFCFSLLC4MB_FireSimQuadRocketConfig-F90MHz_BaseF1Config,firesim-commit:c65159afb19cb9c51e936df05854e17ac61b5686-dirty"

        }

    ]

}


Regards,
Atish

Atish Patra

unread,
Jan 21, 2021, 8:27:40 PM1/21/21
to FireSim
Modifying the config_hwdb.ini fixes the issue.

[firesim-rocket-quadcore-no-nic-l2-llc4mb-ddr3]
agfi=agfi-0e6e54cd1923411cf
#agfi=agfi-026b8446b58e41566
deploytripletoverride=None
customruntimeconfig=None

What is the recommended agfi that should be used ? I see so many with describe fpga-images.

David Biancolin

unread,
Jan 22, 2021, 2:30:02 AM1/22/21
to FireSim
Hey Atish,

What version were you using? Did you rebuild a new AGFI or glean it from somewhere else?

- David 

David Biancolin

unread,
Jan 22, 2021, 5:48:19 PM1/22/21
to FireSim
Hey Atish,

Could you try again with the old AGFIs. I should've fixed your problem

- David

Atish Patra

unread,
Jan 22, 2021, 6:25:46 PM1/22/21
to FireSim
Thanks. That works now. However, I am trying to build an afi that has H-extension enabled in rocket core.
Here are the instructions

I am getting a bunch of compilation errors. Did I miss anything while configuring ?

[localhost] out: [error] /home/centos/firesim/target-design/chipyard/tools/dsptools/rocket/src/main/scala/amba/apb/Node.scala:47:47: type mismatch;
[localhost] out: [error]  found   : None.type
[localhost] out: [error]  required: () => ?
[localhost] out: [error]     uFn = { slaveParams => BundleBridgeParams(None) }
[localhost] out: [error]                                               ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:82:11: not found: type CanAttachTile
[localhost] out: [error] ) extends CanAttachTile {
[localhost] out: [error]           ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:93:11: not found: type InstantiableTileParams
[localhost] out: [error] ) extends InstantiableTileParams[CVA6Tile]
[localhost] out: [error]           ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:84:45: type mismatch;
[localhost] out: [error]  found   : cva6.CVA6TileParams
[localhost] out: [error]  required: freechips.rocketchip.tile.TileParams
[localhost] out: [error]   val lookup = PriorityMuxHartIdFromSeq(Seq(tileParams))
[localhost] out: [error]                                             ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:102:29: not found: type TileCrossingParamsLike
[localhost] out: [error]   def instantiate(crossing: TileCrossingParamsLike, lookup: LookupByHartIdImpl)(implicit p: Parameters): CVA6Tile = {
[localhost] out: [error]                             ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:120:46: not found: type TileCrossingParamsLike
[localhost] out: [error]   def this(params: CVA6TileParams, crossing: TileCrossingParamsLike, lookup: LookupByHartIdImpl)(implicit p: Parameters) =
[localhost] out: [error]                                              ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:112:20: type mismatch;
[localhost] out: [error]  found   : cva6.CVA6TileParams
[localhost] out: [error]  required: freechips.rocketchip.tile.TileParams
[localhost] out: [error]   extends BaseTile(cva6Params, crossing, lookup, q)
[localhost] out: [error]                    ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:143:53: not found: value staticIdForMetadataUseOnly
[localhost] out: [error]     Resource(cpuDevice, "reg").bind(ResourceAddress(staticIdForMetadataUseOnly))
[localhost] out: [error]                                                     ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/CVA6Tile.scala:207:25: not found: value BootROMLocated
[localhost] out: [error]   val bootromParams = p(BootROMLocated(InSubsystem)).get
[localhost] out: [error]                         ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/riscv-sodor/src/main/scala/common/sodor_tile.scala:69:11: not found: type CanAttachTile
[localhost] out: [error] ) extends CanAttachTile {
[localhost] out: [error]           ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/ConfigMixins.scala:24:8: not found: value TilesLocated
[localhost] out: [error]   case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
[localhost] out: [error]        ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/cva6/src/main/scala/ConfigMixins.scala:24:40: not found: value TilesLocated
[localhost] out: [error]   case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
[localhost] out: [error]                                        ^
[localhost] out: [error] /home/centos/firesim/target-design/chipyard/generators/riscv-sodor/src/main/scala/common/sodor_tile.scala:81:11: not found: type InstantiableTileParams
[localhost] out: [error] ) extends InstantiableTileParams[SodorTile]
[localhost] out: [error]           ^

Let me know if I should create a separate issue for this.

David Biancolin

unread,
Jan 22, 2021, 6:32:50 PM1/22/21
to fir...@googlegroups.com
What is your tuple (DESIGN, TARGET_CONFIG, PLATFORM_CONFIG make variables) and have you bumped or changed any submodules? 

- David 

--
You received this message because you are subscribed to a topic in the Google Groups "FireSim" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/firesim/E2_DWmNsv04/unsubscribe.
To unsubscribe from this group and all its topics, send an email to firesim+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/firesim/34f30cd8-3071-40d8-b821-7061eae07388n%40googlegroups.com.

Atish Patra

unread,
Jan 22, 2021, 6:37:08 PM1/22/21
to fir...@googlegroups.com
On Fri, Jan 22, 2021 at 3:32 PM David Biancolin
<bian...@eecs.berkeley.edu> wrote:
>
> What is your tuple (DESIGN, TARGET_CONFIG, PLATFORM_CONFIG make variables) and have you bumped or changed any submodules?
>

run: make DESIGN=FireSim
TARGET_CONFIG=DDR3FRFCFSLLC4MB_FireSimQuadRocketHypConfig
PLATFORM_CONFIG=F90MHz_BaseF1Config replace-rtl

As per the instructions[1], I have changed the rocket-chip submodule
as per these instructions.

cd firesim/target-design/chipyard/generators/rocket-chip/
git remote add josecm https://github.com/josecm/rocket-chip.git
git fetch josecm
git checkout hyp

[1] https://github.com/sandro2pinto/bao-rocket-h-firesim
> To view this discussion on the web visit https://groups.google.com/d/msgid/firesim/CAKUMM8PQMvQH7D_KFBBMo9DSbMQS%3D6xxk0DF-_JDpKf4bWC9wg%40mail.gmail.com.



--
Regards,
Atish

David Biancolin

unread,
Jan 22, 2021, 6:54:06 PM1/22/21
to FireSim
I suspect that fork of RC is out-of-date of the one checked in in Chipyard. If the author of that repo can point you at an older version (possibly 1.10) or commit of firesim that works with his repo, it will save you a ton of pain. 

- David

Atish Patra

unread,
Jan 22, 2021, 7:14:35 PM1/22/21
to fir...@googlegroups.com, Jose Martins, SandroPinto@DEI
Thanks David. I have added Sandro & Jose for their input.

@sandro: Can you please point out which version of firesim worked with
your repo ? There may be some changes in the firesim repo
that is compatible with your repo.
> To view this discussion on the web visit https://groups.google.com/d/msgid/firesim/acaa4df5-3176-415b-947f-8e44e60da415n%40googlegroups.com.



--
Regards,
Atish

SandroPinto@DEI

unread,
Jan 22, 2021, 7:41:37 PM1/22/21
to Atish Patra, fir...@googlegroups.com, Jose Martins
Atish,

For your reference:

firesim - eb7d1af4964814270b176d4e682fc999e8db561a

chipyard - 0e0c89cb1fa64eda74fa8e7dac438eae54a9df56

I believe if you checkout for 0e0c89cb1fa64eda74fa8e7dac438eae54a9df56 in chipyard you will be able to build the AFI

Sandro

Atish Patra

unread,
Jan 24, 2021, 2:21:03 AM1/24/21
to SandroPinto@DEI, fir...@googlegroups.com, Jose Martins
On Fri, Jan 22, 2021 at 4:41 PM SandroPinto@DEI <d5...@dei.uminho.pt> wrote:
>
> Atish,
>
> For your reference:
>
> firesim - eb7d1af4964814270b176d4e682fc999e8db561a
>
> chipyard - 0e0c89cb1fa64eda74fa8e7dac438eae54a9df56
>

Thanks. That helped. I just need to do steps 2.1 and 2.3 again.
Finally, I am able to see OpenSBI booting Bao :)
--
Regards,
Atish

SandroPinto@DEI

unread,
Jan 24, 2021, 1:39:39 PM1/24/21
to Atish Patra, fir...@googlegroups.com, Jose Martins
Happy to hear that :)

Sandro
Reply all
Reply to author
Forward
0 new messages