Error: Unable to find class "F90MHz" in packages: "firesim.firesim, firesim.configs, firesim.util, midas", did you misspell it?, when running example single node simulation #1524
Labels
bug
Something isn't working
Background Work
FireSim Version and Hash
1.16.0-0-gdf095fb4b
OS Setup
Linux ip-192-168-1-61.ec2.internal 3.10.0-1160.81.1.el7.x86_64 #1 SMP Fri Dec 16 17:29:43 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core
Other Setup
I followed the documentation to setup FireSim on AWS, however I came across multiple issues.
FPGA Developer AMI - 1.12.2-40257ab5-6688-4c95-97d1-e251a40fd1fc
now.assert len(response['Images']) == 1 on get_f1_ami_id
when I executed the commandfiresim launchrunfarm
. Thankfully, the workaround mentioned in assert len(response['Images']) == 1 on get_f1_ami_id #1313 worked for me.firesim infrasetup
command I get an issue I believe has to do with outdated scriptssample_config_build_recipes.yaml
file from FireSim versions 1.15.1 and 1.16.0, I see that instead of the PLATFORM_CONFIG variable holding the fpga frequency likeWithAutoILA_F90MHz_BaseF1Config
, it's a separate argument namedfpga_frequency
, which makes sense. However, the Config file in the midas folder which used to have the classclass F90MHz extends WithDesiredHostFrequency(90)
is now missing, which is why I think the error occurs. Seems like the Config file in the midas folder has been updated, however the script generating the make command to setup/build the infrastructure is broken.I would appreciate some help in debugging this issue, specifically to figure out the versions of compatible components.
Current Behavior
FireSim Manager. Docs: https://docs.fires.im
Running: infrasetup
vitis_firesim_rocket_singlecore_no_nic is overriding a deploy triplet in your config_hwdb.yaml file. Make sure you understand why!
vitis_firesim_gemmini_rocket_singlecore_no_nic is overriding a deploy triplet in your config_hwdb.yaml file. Make sure you understand why!
Building FPGA software driver for FireSim-WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig-F90MHz_BaseF1Config
[localhost] local: pwd
[localhost] run: make DESIGN=FireSim TARGET_CONFIG=WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig PLATFORM_CONFIG=F90MHz_BaseF1Config PLATFORM=f1 f1
[localhost] out: java -cp $(cat /home/centos/firesim/sim/generated-src/firesim-main.classpath) midas.stage.GoldenGateMain
[localhost] out: -i /home/centos/firesim/sim/generated-src/f1/FireSim-WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig-F90MHz_BaseF1Config/firesim.firesim.FireSim.WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig.fir
[localhost] out: -td /home/centos/firesim/sim/generated-src/f1/FireSim-WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig-F90MHz_BaseF1Config
[localhost] out: -faf /home/centos/firesim/sim/generated-src/f1/FireSim-WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig-F90MHz_BaseF1Config/firesim.firesim.FireSim.WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig.anno.json
[localhost] out: -ggcp firesim.firesim
[localhost] out: -ggcs F90MHz_BaseF1Config
[localhost] out: --output-filename-base FireSim-generated
[localhost] out: --no-dedup
[localhost] out:
[localhost] out: Picked up JAVA_TOOL_OPTIONS: -Xmx16G -Xss8M -Dsbt.supershell=false -Djava.io.tmpdir=/home/centos/firesim/sim/.java_tmp
[localhost] out: Exception in thread "main" java.lang.Exception: Unable to find class "F90MHz" in packages: "firesim.firesim, firesim.configs, firesim.util, midas", did you misspell it?
[localhost] out: at midas.stage.phases.CreateParametersFromConfigString$.getConfig$1(CreateParametersInstancePhase.scala:26)
[localhost] out: at midas.stage.phases.CreateParametersFromConfigString$.$anonfun$getConfigWithFallback$1(CreateParametersInstancePhase.scala:40)
[localhost] out: at scala.collection.immutable.ArraySeq.foldRight(ArraySeq.scala:237)
[localhost] out: at midas.stage.phases.CreateParametersFromConfigString$.getConfigWithFallback(CreateParametersInstancePhase.scala:39)
[localhost] out: at midas.stage.phases.CreateParametersFromConfigString$.apply(CreateParametersInstancePhase.scala:55)
[localhost] out: at midas.stage.phases.CreateParametersInstancePhase.transform(CreateParametersInstancePhase.scala:69)
[localhost] out: at midas.stage.phases.CreateParametersInstancePhase.transform(CreateParametersInstancePhase.scala:59)
[localhost] out: at firrtl.options.phases.DeletedWrapper.internalTransform(DeletedWrapper.scala:38)
[localhost] out: at firrtl.options.phases.DeletedWrapper.internalTransform(DeletedWrapper.scala:15)
[localhost] out: at firrtl.options.Translator.transform(Phase.scala:248)
[localhost] out: at firrtl.options.Translator.transform$(Phase.scala:248)
[localhost] out: at firrtl.options.phases.DeletedWrapper.transform(DeletedWrapper.scala:15)
[localhost] out: at midas.stage.GoldenGateStage.$anonfun$run$1(GoldenGateStage.scala:26)
[localhost] out: at scala.collection.LinearSeqOps.foldLeft(LinearSeq.scala:183)
[localhost] out: at scala.collection.LinearSeqOps.foldLeft$(LinearSeq.scala:179)
[localhost] out: at scala.collection.immutable.List.foldLeft(List.scala:79)
[localhost] out: at midas.stage.GoldenGateStage.run(GoldenGateStage.scala:26)
[localhost] out: at firrtl.options.Stage$$anon$1.transform(Stage.scala:43)
[localhost] out: at firrtl.options.Stage$$anon$1.transform(Stage.scala:43)
[localhost] out: at firrtl.options.phases.DeletedWrapper.internalTransform(DeletedWrapper.scala:38)
[localhost] out: at firrtl.options.phases.DeletedWrapper.internalTransform(DeletedWrapper.scala:15)
[localhost] out: at firrtl.options.Translator.transform(Phase.scala:248)
[localhost] out: at firrtl.options.Translator.transform$(Phase.scala:248)
[localhost] out: at firrtl.options.phases.DeletedWrapper.transform(DeletedWrapper.scala:15)
[localhost] out: at firrtl.options.Stage.$anonfun$transform$5(Stage.scala:47)
[localhost] out: at scala.collection.LinearSeqOps.foldLeft(LinearSeq.scala:183)
[localhost] out: at scala.collection.LinearSeqOps.foldLeft$(LinearSeq.scala:179)
[localhost] out: at scala.collection.immutable.List.foldLeft(List.scala:79)
[localhost] out: at firrtl.options.Stage.$anonfun$transform$3(Stage.scala:47)
[localhost] out: at logger.Logger$.$anonfun$makeScope$2(Logger.scala:137)
[localhost] out: at scala.util.DynamicVariable.withValue(DynamicVariable.scala:59)
[localhost] out: at logger.Logger$.makeScope(Logger.scala:135)
[localhost] out: at firrtl.options.Stage.transform(Stage.scala:47)
[localhost] out: at firrtl.options.Stage.execute(Stage.scala:58)
[localhost] out: at firrtl.options.StageMain.main(Stage.scala:71)
[localhost] out: at midas.stage.GoldenGateMain.main(GoldenGateStage.scala)
[localhost] out: make: *** [make/goldengate.mk:31: /home/centos/firesim/sim/generated-src/f1/FireSim-WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig-F90MHz_BaseF1Config/FireSim-generated.sv.intermediate] Error 1
[localhost] out:
Fatal error: run() received nonzero return code 2 while executing!
Requested: make DESIGN=FireSim TARGET_CONFIG=WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig PLATFORM_CONFIG=F90MHz_BaseF1Config PLATFORM=f1 f1
Executed: /bin/bash -l -c "cd /home/centos/firesim/deploy/../ && export RISCV=/home/centos/firesim/.conda-env/riscv-tools && export PATH=/home/centos/firesim/utils/fireperf:/home/centos/firesim/utils/fireperf/FlameGraph:/home/centos/firesim/sw/firesim-software:/home/centos/firesim/.conda-env/riscv-tools/bin:/home/centos/firesim/utils/fireperf:/home/centos/firesim/utils/fireperf/FlameGraph:/home/centos/firesim/sw/firesim-software:/home/centos/firesim/.conda-env/riscv-tools/bin:/opt/Xilinx/Vitis_HLS/2021.2/bin:/opt/Xilinx/Vitis/2021.2/bin:/opt/Xilinx/Vivado/2021.2/bin:/home/centos/firesim/.conda-env/bin:/opt/conda/condabin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/srv/git/centos-git-common:/home/centos/.local/bin:/home/centos/bin:/home/centos/firesim/deploy:/home/centos/firesim/deploy && export LD_LIBRARY_PATH=/home/centos/firesim/.conda-env/riscv-tools/lib && source sourceme-f1-manager.sh --skip-ssh-setup && cd sim/ && make DESIGN=FireSim TARGET_CONFIG=WithDefaultFireSimBridges_WithFireSimHighPerfConfigTweaks_chipyard.RocketConfig PLATFORM_CONFIG=F90MHz_BaseF1Config PLATFORM=f1 f1"
Aborting.
Fatal error.
Traceback (most recent call last):
File "/home/centos/firesim/deploy/firesim", line 510, in
main(args)
File "/home/centos/firesim/deploy/firesim", line 449, in main
t'task'
File "/home/centos/firesim/deploy/firesim", line 228, in infrasetup
runtime_conf.infrasetup()
File "/home/centos/firesim/deploy/runtools/runtime_config.py", line 671, in infrasetup
self.firesim_topology_with_passes.infrasetup_passes(use_mock_instances_for_testing)
File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 426, in infrasetup_passes
self.pass_build_required_drivers()
File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 412, in pass_build_required_drivers
execute(build_drivers_helper, servers, hosts=['localhost'])
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/tasks.py", line 356, in execute
results[host] = _execute(
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/tasks.py", line 247, in _execute
return task.run(*args, **kwargs)
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/tasks.py", line 147, in run
return self.wrapped(*args, **kwargs)
File "/home/centos/firesim/deploy/runtools/firesim_topology_with_passes.py", line 408, in build_drivers_helper
resolved_cfg.build_sim_driver()
File "/home/centos/firesim/deploy/runtools/runtime_config.py", line 291, in build_sim_driver
buildresult = run(driverbuildcommand)
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/network.py", line 688, in host_prompting_wrapper
return func(*args, **kwargs)
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/operations.py", line 1068, in run
return _run_command(
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/operations.py", line 944, in _run_command
error(message=msg, stdout=out, stderr=err)
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/utils.py", line 357, in error
return func(message)
File "/home/centos/firesim/.conda-env/lib/python3.10/site-packages/fabric/utils.py", line 65, in abort
raise e
SystemExit: 1
The full log of this run is:
/home/centos/firesim/deploy/logs/2023-05-21--19-32-01-infrasetup-P11L6UYLFJR01HND.log
Expected Behavior
I expect the command to be executed and simulation infrastructure to be setup.
Other Information
Full log file:
2023-05-21--19-32-01-infrasetup-P11L6UYLFJR01HND.log
The text was updated successfully, but these errors were encountered: