Merge remote-tracking branch 'origin/main' into nitefury_ii
This commit is contained in:
commit
c17cbee41e
|
@ -7,7 +7,7 @@ from common import manager_fsim_dir, set_fabric_firesim_pem
|
|||
def build_default_workloads():
|
||||
""" Builds workloads that will be run on F1 instances as part of CI """
|
||||
|
||||
with prefix(f'cd {manager_fsim_dir} && source sourceme-f1-manager.sh'), \
|
||||
with prefix(f'cd {manager_fsim_dir} && source sourceme-manager.sh'), \
|
||||
prefix(f'cd {manager_fsim_dir}/deploy/workloads'):
|
||||
|
||||
# avoid logging excessive amounts to prevent GH-A masking secrets (which slows down log output)
|
||||
|
|
|
@ -12,7 +12,7 @@ def build_vitis_driver():
|
|||
# - machine-launch-script requirements are already installed
|
||||
|
||||
with prefix(f"cd {ci_env['REMOTE_WORK_DIR']}"):
|
||||
with prefix('source sourceme-f1-manager.sh --skip-ssh-setup'):
|
||||
with prefix('source sourceme-manager.sh --skip-ssh-setup'):
|
||||
with prefix("cd ./sim"):
|
||||
run("make PLATFORM=vitis vitis")
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ def run_docs_generated_components_check():
|
|||
""" Runs checks to make sure generated components of docs have been
|
||||
updated. """
|
||||
|
||||
with cd(manager_fsim_dir), prefix('source sourceme-f1-manager.sh'):
|
||||
with cd(manager_fsim_dir), prefix('source sourceme-manager.sh'):
|
||||
with prefix("cd deploy"):
|
||||
run("cat config_runtime.yaml")
|
||||
path = 'docs/Getting-Started-Guides/AWS-EC2-F1-Tutorial/Running-Simulations-Tutorial/DOCS_EXAMPLE_config_runtime.yaml'
|
||||
|
|
|
@ -16,7 +16,7 @@ def run_docs_generated_components_check():
|
|||
# repo should already be checked out
|
||||
|
||||
with prefix(f"cd {ci_env['REMOTE_WORK_DIR']}"):
|
||||
with prefix('source sourceme-f1-manager.sh --skip-ssh-setup'):
|
||||
with prefix('source sourceme-manager.sh --skip-ssh-setup'):
|
||||
with prefix("cd deploy"):
|
||||
run("cat config_runtime.yaml")
|
||||
path = "docs/Getting-Started-Guides/On-Premises-FPGA-Tutorial/Running-Simulations/DOCS_EXAMPLE_config_runtime.yaml"
|
||||
|
|
|
@ -15,7 +15,7 @@ def run_agfi_buildbitstream():
|
|||
relative_hwdb_path = f"deploy/sample-backup-configs/sample_config_hwdb.yaml"
|
||||
relative_build_path = f"deploy/sample-backup-configs/sample_config_build.yaml"
|
||||
|
||||
with prefix(f'cd {manager_fsim_dir} && source sourceme-f1-manager.sh'):
|
||||
with prefix(f'cd {manager_fsim_dir} && source sourceme-manager.sh'):
|
||||
rc = 0
|
||||
|
||||
# unique tag based on the ci workflow and filename is needed to ensure
|
||||
|
|
|
@ -9,7 +9,7 @@ from ci_variables import ci_env
|
|||
def run_aws_configure() -> None:
|
||||
""" Runs AWS configure on the CI manager """
|
||||
|
||||
with cd(manager_fsim_dir), prefix("source ./sourceme-f1-manager.sh"):
|
||||
with cd(manager_fsim_dir), prefix("source ./sourceme-manager.sh"):
|
||||
run(".github/scripts/firesim-managerinit.expect {} {} {}".format(
|
||||
ci_env['AWS_ACCESS_KEY_ID'],
|
||||
ci_env['AWS_SECRET_ACCESS_KEY'],
|
||||
|
|
|
@ -16,7 +16,7 @@ from util.filelineswap import file_line_swap
|
|||
def run_linux_poweroff_externally_provisioned():
|
||||
""" Runs Linux poweroff workloads using externally provisioned AWS run farm """
|
||||
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-f1-manager.sh"):
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-manager.sh"):
|
||||
|
||||
def run_w_timeout(workload_path, workload, timeout, num_passes):
|
||||
""" Run workload with a specific timeout
|
||||
|
|
|
@ -17,7 +17,7 @@ def run_linux_poweroff_vitis():
|
|||
|
||||
with prefix(f"cd {ci_env['REMOTE_WORK_DIR']}"):
|
||||
run("./build-setup.sh --skip-validate")
|
||||
with prefix('source sourceme-f1-manager.sh --skip-ssh-setup'):
|
||||
with prefix('source sourceme-manager.sh --skip-ssh-setup'):
|
||||
with prefix('cd sw/firesim-software'):
|
||||
# build outputs.yaml (use this workload since firemarshal can guestmount)
|
||||
run("./marshal -v build test/outputs.yaml")
|
||||
|
|
|
@ -12,7 +12,7 @@ from ci_variables import ci_env
|
|||
def run_linux_poweroff():
|
||||
""" Runs Linux poweroff workloads """
|
||||
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-f1-manager.sh"):
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-manager.sh"):
|
||||
def run_w_timeout(workload, timeout, num_passes):
|
||||
""" Run workload with a specific timeout
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ import os
|
|||
from github import Github
|
||||
import base64
|
||||
import time
|
||||
import argparse
|
||||
|
||||
from ci_variables import ci_env
|
||||
|
||||
|
@ -83,7 +84,7 @@ def run_local_buildbitstreams():
|
|||
manager_fsim_dir = ci_env['REMOTE_WORK_DIR']
|
||||
with prefix(f"cd {manager_fsim_dir}"):
|
||||
|
||||
with prefix('source sourceme-f1-manager.sh --skip-ssh-setup'):
|
||||
with prefix('source sourceme-manager.sh --skip-ssh-setup'):
|
||||
|
||||
# return a copy of config_build.yaml w/ hwdb entry(s) uncommented + new build dir
|
||||
def modify_config_build(hwdb_entries_to_gen: List[str]) -> str:
|
||||
|
@ -202,42 +203,55 @@ def run_local_buildbitstreams():
|
|||
("firesim1", "vivado:2019.1"),
|
||||
}
|
||||
|
||||
def do_builds(batch_hwdbs):
|
||||
assert len(hosts) >= len(batch_hwdbs), f"Need at least {len(batch_hwdbs)} hosts to run builds"
|
||||
|
||||
# map hwdb tuple to hosts
|
||||
hwdb_2_host = {}
|
||||
for hwdb in batch_hwdbs:
|
||||
buildtool_version = hwdb[2]
|
||||
for host in hosts:
|
||||
if host[1] == buildtool_version:
|
||||
if not host[0] in hwdb_2_host.values():
|
||||
hwdb_2_host[hwdb[0]] = host[0]
|
||||
|
||||
assert len(hwdb_2_host) == len(batch_hwdbs), "Unable to map hosts to hwdb build"
|
||||
|
||||
hwdbs_ordered = [hwdb[0] for hwdb in batch_hwdbs]
|
||||
platforms_ordered = [hwdb[1] for hwdb in batch_hwdbs]
|
||||
hosts_ordered = hwdb_2_host.values()
|
||||
|
||||
print("Mappings")
|
||||
print(f"HWDBS: {hwdbs_ordered}")
|
||||
print(f"Platforms: {platforms_ordered}")
|
||||
print(f"Hosts: {hosts_ordered}")
|
||||
|
||||
copy_build_yaml = modify_config_build(hwdbs_ordered)
|
||||
copy_build_yaml_2 = add_host_list(copy_build_yaml, hosts_ordered)
|
||||
links = build_upload(copy_build_yaml_2, hwdbs_ordered, platforms_ordered)
|
||||
for hwdb, link in zip(hwdbs_ordered, links):
|
||||
replace_in_hwdb(hwdb, link)
|
||||
|
||||
# wipe old data
|
||||
for host in hosts_ordered:
|
||||
run(f"ssh {host} rm -rf {build_location}")
|
||||
|
||||
# same order as in config_build.yaml
|
||||
# hwdb_entry_name, platform_name, buildtool:version
|
||||
batch_hwdbs = [
|
||||
batch_hwdbs_in = [
|
||||
("vitis_firesim_rocket_singlecore_no_nic", "vitis", "vitis:2022.1"),
|
||||
("vitis_firesim_gemmini_rocket_singlecore_no_nic", "vitis", "vitis:2022.1"),
|
||||
("alveo_u250_firesim_rocket_singlecore_no_nic", "xilinx_alveo_u250", "vivado:2021.1"),
|
||||
("xilinx_vcu118_firesim_rocket_singlecore_4GB_no_nic", "xilinx_vcu118", "vivado:2019.1"),
|
||||
]
|
||||
|
||||
assert len(hosts) >= len(batch_hwdbs), f"Need at least {len(batch_hwdbs)} hosts to run builds"
|
||||
do_builds(batch_hwdbs_in)
|
||||
|
||||
# map hwdb tuple to hosts
|
||||
hwdb_2_host = {}
|
||||
for hwdb in batch_hwdbs:
|
||||
buildtool_version = hwdb[2]
|
||||
for host in hosts:
|
||||
if host[1] == buildtool_version:
|
||||
if not host[0] in hwdb_2_host.values():
|
||||
hwdb_2_host[hwdb[0]] = host[0]
|
||||
batch_hwdbs_in = [
|
||||
("alveo_u280_firesim_rocket_singlecore_no_nic", "xilinx_alveo_u280", "vivado:2021.1"),
|
||||
]
|
||||
|
||||
assert len(hwdb_2_host) == len(batch_hwdbs), "Unable to map hosts to hwdb build"
|
||||
|
||||
hwdbs_ordered = [hwdb[0] for hwdb in batch_hwdbs]
|
||||
platforms_ordered = [hwdb[1] for hwdb in batch_hwdbs]
|
||||
hosts_ordered = hwdb_2_host.values()
|
||||
|
||||
print("Mappings")
|
||||
print(f"HWDBS: {hwdbs_ordered}")
|
||||
print(f"Platforms: {platforms_ordered}")
|
||||
print(f"Hosts: {hosts_ordered}")
|
||||
|
||||
copy_build_yaml = modify_config_build(hwdbs_ordered)
|
||||
copy_build_yaml_2 = add_host_list(copy_build_yaml, hosts_ordered)
|
||||
links = build_upload(copy_build_yaml_2, hwdbs_ordered, platforms_ordered)
|
||||
for hwdb, link in zip(hwdbs_ordered, links):
|
||||
replace_in_hwdb(hwdb, link)
|
||||
do_builds(batch_hwdbs_in)
|
||||
|
||||
print(f"Printing {sample_hwdb_filename}...")
|
||||
run(f"cat {sample_hwdb_filename}")
|
||||
|
@ -245,9 +259,5 @@ def run_local_buildbitstreams():
|
|||
# copy back to workspace area so you can PR it
|
||||
run(f"cp -f {sample_hwdb_filename} {ci_env['GITHUB_WORKSPACE']}/{relative_hwdb_path}")
|
||||
|
||||
# wipe old data
|
||||
for host in hosts_ordered:
|
||||
run(f"ssh {host} rm -rf {build_location}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
execute(run_local_buildbitstreams, hosts=["localhost"])
|
||||
|
|
|
@ -9,7 +9,7 @@ from common import manager_fsim_dir, set_fabric_firesim_pem
|
|||
def run_managerinit() -> None:
|
||||
""" Runs AWS configure on the CI manager """
|
||||
|
||||
with cd(manager_fsim_dir), prefix("source ./sourceme-f1-manager.sh"):
|
||||
with cd(manager_fsim_dir), prefix("source ./sourceme-manager.sh"):
|
||||
run(".github/scripts/firesim-managerinit.expect {} {} {}".format(
|
||||
ci_env['AWS_ACCESS_KEY_ID'],
|
||||
ci_env['AWS_SECRET_ACCESS_KEY'],
|
||||
|
|
|
@ -17,7 +17,7 @@ def run_parallel_metasim():
|
|||
# repo should already be checked out
|
||||
|
||||
with prefix(f"cd {ci_env['REMOTE_WORK_DIR']}"):
|
||||
with prefix('source sourceme-f1-manager.sh --skip-ssh-setup'):
|
||||
with prefix('source sourceme-manager.sh --skip-ssh-setup'):
|
||||
with prefix('cd sw/firesim-software'):
|
||||
# build hello world baremetal test
|
||||
run("./marshal -v build test/bare.yaml")
|
||||
|
|
|
@ -11,7 +11,7 @@ from ci_variables import ci_env
|
|||
def run_parallel_metasim():
|
||||
""" Runs parallel baremetal metasimulations """
|
||||
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-f1-manager.sh"):
|
||||
with prefix(f"cd {manager_fsim_dir} && source sourceme-manager.sh"):
|
||||
|
||||
# build hello world baremetal test
|
||||
with prefix('cd sw/firesim-software'):
|
||||
|
|
|
@ -423,7 +423,7 @@ jobs:
|
|||
run: |
|
||||
cd ${{ env.REMOTE_WORK_DIR }}
|
||||
./build-setup.sh --skip-validate
|
||||
source sourceme-f1-manager.sh --skip-ssh-setup
|
||||
source sourceme-manager.sh --skip-ssh-setup
|
||||
firesim managerinit --platform vitis
|
||||
cd sw/firesim-software && ./init-submodules.sh
|
||||
|
||||
|
|
|
@ -279,7 +279,5 @@ env_append "$NDEBUG_CHECK"
|
|||
echo "$env_string" > env.sh
|
||||
|
||||
echo "Setup complete!"
|
||||
echo "To generate simulator RTL and run metasimulation simulation, source env.sh"
|
||||
echo "To use the manager to deploy builds/simulations on EC2, source sourceme-f1-manager.sh to setup your environment."
|
||||
echo "To run builds/simulations manually on this machine, source sourceme-f1-full.sh to setup your environment."
|
||||
echo "To get started, source sourceme-manager.sh to setup your environment."
|
||||
echo "For more information, see docs at https://docs.fires.im/."
|
||||
|
|
|
@ -65,7 +65,7 @@ class BitBuilder(metaclass=abc.ABCMeta):
|
|||
prefix(f'export RISCV={os.getenv("RISCV", "")}'), \
|
||||
prefix(f'export PATH={os.getenv("PATH", "")}'), \
|
||||
prefix(f'export LD_LIBRARY_PATH={os.getenv("LD_LIBRARY_PATH", "")}'), \
|
||||
prefix('source sourceme-f1-manager.sh --skip-ssh-setup'), \
|
||||
prefix('source sourceme-manager.sh --skip-ssh-setup'), \
|
||||
InfoStreamLogger('stdout'), \
|
||||
prefix('cd sim/'):
|
||||
run(self.build_config.make_recipe("replace-rtl"))
|
||||
|
@ -79,7 +79,7 @@ class BitBuilder(metaclass=abc.ABCMeta):
|
|||
prefix(f'export RISCV={os.getenv("RISCV", "")}'), \
|
||||
prefix(f'export PATH={os.getenv("PATH", "")}'), \
|
||||
prefix(f'export LD_LIBRARY_PATH={os.getenv("LD_LIBRARY_PATH", "")}'), \
|
||||
prefix('source sourceme-f1-manager.sh --skip-ssh-setup'), \
|
||||
prefix('source sourceme-manager.sh --skip-ssh-setup'), \
|
||||
prefix('cd sim/'):
|
||||
run(self.build_config.make_recipe("driver"))
|
||||
|
||||
|
|
|
@ -431,7 +431,7 @@ def check_env() -> None:
|
|||
"""
|
||||
# make sure that sourceme-f1 was sourced
|
||||
if os.environ.get('FIRESIM_SOURCED') is None:
|
||||
rootLogger.critical("ERROR: You must source firesim/sourceme-f1-manager.sh!")
|
||||
rootLogger.critical("ERROR: You must source firesim/sourceme-manager.sh!")
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
|
|
|
@ -490,7 +490,7 @@ class RuntimeHWConfig:
|
|||
prefix(f'export RISCV={os.getenv("RISCV", "")}'), \
|
||||
prefix(f'export PATH={os.getenv("PATH", "")}'), \
|
||||
prefix(f'export LD_LIBRARY_PATH={os.getenv("LD_LIBRARY_PATH", "")}'), \
|
||||
prefix('source sourceme-f1-manager.sh --skip-ssh-setup'), \
|
||||
prefix('source sourceme-manager.sh --skip-ssh-setup'), \
|
||||
prefix('cd sim/'):
|
||||
driverbuildcommand = f"make PLATFORM={self.get_platform()} TARGET_PROJECT={target_project} DESIGN={design} TARGET_CONFIG={target_config} PLATFORM_CONFIG={platform_config} {self.get_driver_build_target()}"
|
||||
buildresult = run(driverbuildcommand)
|
||||
|
|
|
@ -250,7 +250,7 @@ As part of target-generation, Rocket Chip emits a make fragment with recipes
|
|||
for running suites of assembly tests. MIDAS puts this in
|
||||
``firesim/sim/generated-src/f1/<DESIGN>-<TARGET_CONFIG>-<PLATFORM_CONFIG>/firesim.d``.
|
||||
Make sure your ``$RISCV`` environment variable is set by sourcing
|
||||
``firesim/sourceme-f1-manager.sh`` or ``firesim/env.sh``, and type:
|
||||
``firesim/sourceme-manager.sh`` or ``firesim/env.sh``, and type:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ To get the new default AGFI's you must run the manager initialization again by d
|
|||
.. code-block:: bash
|
||||
|
||||
cd firesim
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
firesim managerinit
|
||||
|
||||
Is there a good way to keep track of what AGFI corresponds to what FireSim commit?
|
||||
|
@ -22,7 +22,7 @@ To view a list of AGFI's that you have built and what you have access to, you ca
|
|||
.. code-block:: bash
|
||||
|
||||
cd firesim
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
aws ec2 describe-fpga-images --fpga-image-ids # List all AGFI images
|
||||
|
||||
You can also view a specific AGFI image by giving the AGFI ID (found in ``deploy/config_hwdb.yaml``) through the following command:
|
||||
|
@ -30,7 +30,7 @@ You can also view a specific AGFI image by giving the AGFI ID (found in ``deploy
|
|||
.. code-block:: bash
|
||||
|
||||
cd firesim
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
aws ec2 describe-fpga-images --filter Name=fpga-image-global-id,Values=agfi-<Your ID Here> # List particular AGFI image
|
||||
|
||||
After querying an AGFI, you can find the commit hash of the FireSim repository used to build the AGFI within the "Description"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
Overview
|
||||
========================
|
||||
|
||||
When you source ``sourceme-f1-manager.sh`` in your copy of the FireSim repo,
|
||||
When you source ``sourceme-manager.sh`` in your copy of the FireSim repo,
|
||||
you get access to a new command, ``firesim``, which is the FireSim simulation
|
||||
manager. If you've used tools like Vagrant or Docker, the ``firesim`` program
|
||||
is to FireSim what ``vagrant`` and ``docker`` are to Vagrant and Docker
|
||||
|
|
|
@ -44,7 +44,7 @@ Please follow along with the following steps to get setup if you already have an
|
|||
|
||||
./scripts/firesim-setup.sh --fast
|
||||
cd sims/firesim
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
|
||||
cd ~/chipyard-morning/sims/verilator/
|
||||
make
|
||||
|
@ -69,7 +69,7 @@ Please follow along with the following steps to get setup if you already have an
|
|||
|
||||
./scripts/firesim-setup.sh --fast
|
||||
cd sims/firesim
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
cd sim
|
||||
unset MAKEFLAGS
|
||||
make f1
|
||||
|
@ -119,7 +119,7 @@ Please follow along with the following steps to get setup if you already have an
|
|||
# Uncomment the following line if you don't like systemctl's auto-paging feature:
|
||||
# export SYSTEMD_PAGER=
|
||||
# User specific aliases and functions
|
||||
cd /home/centos/chipyard-afternoon && source env.sh && cd sims/firesim && source sourceme-f1-manager.sh && cd /home/centos/
|
||||
cd /home/centos/chipyard-afternoon && source env.sh && cd sims/firesim && source sourceme-manager.sh && cd /home/centos/
|
||||
export FDIR=/home/centos/chipyard-afternoon/sims/firesim/
|
||||
export CDIR=/home/centos/chipyard-afternoon/
|
||||
|
||||
|
|
|
@ -128,7 +128,7 @@ Next, run:
|
|||
|
||||
.. code-block:: bash
|
||||
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
|
||||
This will have initialized the AWS shell, added the RISC-V tools to your
|
||||
path, and started an ``ssh-agent`` that supplies ``~/firesim.pem``
|
||||
|
|
|
@ -8,7 +8,7 @@ by a network with one 8-port Top-of-Rack (ToR) switch and 200 Gbps, 2μs links.
|
|||
This will require one ``f1.16xlarge`` (8 FPGA) instance.
|
||||
|
||||
Make sure you are ``ssh`` or ``mosh``'d into your manager instance and have sourced
|
||||
``sourceme-f1-manager.sh`` before running any of these commands.
|
||||
``sourceme-manager.sh`` before running any of these commands.
|
||||
|
||||
Returning to a clean configuration
|
||||
-------------------------------------
|
||||
|
@ -330,7 +330,7 @@ a live status page once simulations are kicked-off:
|
|||
In cycle-accurate networked mode, this will only exit when any ONE of the
|
||||
simulated nodes shuts down. So, let's let it run and open another ssh
|
||||
connection to the manager instance. From there, ``cd`` into your firesim
|
||||
directory again and ``source sourceme-f1-manager.sh`` again to get our ssh key
|
||||
directory again and ``source sourceme-manager.sh`` again to get our ssh key
|
||||
setup. To access our simulated system, ssh into the IP address being printed by
|
||||
the status page, **from your manager instance**. In our case, from the above
|
||||
output, we see that our simulated system is running on the instance with IP
|
||||
|
|
|
@ -8,7 +8,7 @@ a simulation! In this section, we will simulate **1 target node**, for which we
|
|||
will need a single ``f1.2xlarge`` (1 FPGA) instance.
|
||||
|
||||
Make sure you are ``ssh`` or ``mosh``'d into your manager instance and have sourced
|
||||
``sourceme-f1-manager.sh`` before running any of these commands.
|
||||
``sourceme-manager.sh`` before running any of these commands.
|
||||
|
||||
|
||||
Building target software
|
||||
|
@ -311,7 +311,7 @@ live status page:
|
|||
|
||||
This will only exit once all of the simulated nodes have shut down. So, let's let it
|
||||
run and open another ssh connection to the manager instance. From there, ``cd`` into
|
||||
your firesim directory again and ``source sourceme-f1-manager.sh`` again to get
|
||||
your firesim directory again and ``source sourceme-manager.sh`` again to get
|
||||
our ssh key setup. To access our simulated system, ssh into the IP address being
|
||||
printed by the status page, **from your manager instance**. In our case, from
|
||||
the above output, we see that our simulated system is running on the instance with
|
||||
|
|
|
@ -77,7 +77,7 @@ Re-enter the FireSim repository and run the following commands to re-setup the r
|
|||
cd firesim
|
||||
|
||||
# rerunning this since the machine rebooted
|
||||
source sourceme-f1-manager.sh --skip-ssh-setup
|
||||
source sourceme-manager.sh --skip-ssh-setup
|
||||
|
||||
Next, open up the ``deploy/config_runtime.yaml`` file and replace the following keys to be the following:
|
||||
|
||||
|
|
|
@ -131,7 +131,7 @@ Next, run:
|
|||
|
||||
.. code-block:: bash
|
||||
|
||||
source sourceme-f1-manager.sh --skip-ssh-setup
|
||||
source sourceme-manager.sh --skip-ssh-setup
|
||||
|
||||
This will perform various environment setup steps, such as adding the RISC-V tools to your
|
||||
path. Sourcing this the first time will take some time -- however each time after that should be instantaneous.
|
||||
|
|
|
@ -5,7 +5,7 @@ Now that we've completed the setup of our manager machine, it's time to run
|
|||
a simulation! In this section, we will simulate **1 target node**, for which we
|
||||
will need a single |fpga_type|.
|
||||
|
||||
**Make sure you have sourced** ``sourceme-f1-manager.sh --skip-ssh-setup`` **before running any of these commands.**
|
||||
**Make sure you have sourced** ``sourceme-manager.sh --skip-ssh-setup`` **before running any of these commands.**
|
||||
|
||||
Building target software
|
||||
------------------------
|
||||
|
@ -246,7 +246,7 @@ live status page:
|
|||
|
||||
This will only exit once all of the simulated nodes have completed simulations. So, let's let it
|
||||
run and open another terminal to the manager machine. From there, ``cd`` into
|
||||
your FireSim directory again and ``source sourceme-f1-manager.sh --skip-ssh-setup``.
|
||||
your FireSim directory again and ``source sourceme-manager.sh --skip-ssh-setup``.
|
||||
Next, let's ``ssh`` into the simulation machine.
|
||||
In this case, since we are running the simulation on the same machine (i.e. ``localhost``)
|
||||
we can run the following:
|
||||
|
|
|
@ -6,6 +6,6 @@ set -o pipefail
|
|||
SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
||||
source $SCRIPT_DIR/defaults.sh
|
||||
|
||||
run "cd firesim/ && source sourceme-f1-manager.sh && firesim buildbitstream"
|
||||
run "cd firesim/ && source sourceme-manager.sh && firesim buildbitstream"
|
||||
|
||||
echo "Success"
|
||||
|
|
|
@ -39,6 +39,6 @@ run "cd firesim/sw/firesim-software && ./init-submodules.sh"
|
|||
copy ~/.aws/ $IP_ADDR:~/.aws
|
||||
copy ~/firesim.pem $IP_ADDR:~/firesim.pem
|
||||
copy firesim-managerinit.expect $IP_ADDR:~/firesim-managerinit.expect
|
||||
run "cd firesim && source sourceme-f1-manager.sh && cd ../ && ./firesim-managerinit.expect"
|
||||
run "cd firesim && source sourceme-manager.sh && cd ../ && ./firesim-managerinit.expect"
|
||||
|
||||
echo "Success"
|
||||
|
|
|
@ -8,8 +8,8 @@ source $SCRIPT_DIR/defaults.sh
|
|||
|
||||
cd .. # firesim
|
||||
|
||||
run "cd firesim/ && source sourceme-f1-manager.sh && sw/firesim-software && ./marshal -v build br-base.json && ./marshal -v install br-base.json"
|
||||
run "cd firesim/ && source sourceme-f1-manager.sh && cd deploy/workloads/ && make allpaper"
|
||||
run "cd firesim/ && source sourceme-f1-manager.sh && cd deploy/workloads/ && ./run-all.sh"
|
||||
run "cd firesim/ && source sourceme-manager.sh && sw/firesim-software && ./marshal -v build br-base.json && ./marshal -v install br-base.json"
|
||||
run "cd firesim/ && source sourceme-manager.sh && cd deploy/workloads/ && make allpaper"
|
||||
run "cd firesim/ && source sourceme-manager.sh && cd deploy/workloads/ && ./run-all.sh"
|
||||
|
||||
echo "Success"
|
||||
|
|
|
@ -5,7 +5,7 @@ set -o pipefail
|
|||
|
||||
# build setup
|
||||
./build-setup.sh fast
|
||||
source sourceme-f1-manager.sh
|
||||
source sourceme-manager.sh
|
||||
|
||||
# run through elaboration flow to get chisel/sbt all setup
|
||||
cd sim
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
default: compile
|
||||
|
||||
ifndef FIRESIM_ENV_SOURCED
|
||||
$(error You must source sourceme-f1-manager.sh or env.sh to use this Makefile)
|
||||
$(error You must source sourceme-manager.sh or env.sh to use this Makefile)
|
||||
endif
|
||||
|
||||
firesim_base_dir := $(abspath .)
|
||||
|
|
|
@ -1,58 +0,0 @@
|
|||
# you should source this only if you plan to run build/simulations locally,
|
||||
# without using the manager at all.
|
||||
|
||||
DO_SSH_SETUP=true
|
||||
|
||||
function usage
|
||||
{
|
||||
echo "usage: source sourceme-f1-full.sh [OPTIONS]"
|
||||
echo "options:"
|
||||
echo " --skip-ssh-setup: if set, skips ssh setup checks."
|
||||
}
|
||||
|
||||
while test $# -gt 0
|
||||
do
|
||||
case "$1" in
|
||||
--skip-ssh-setup)
|
||||
DO_SSH_SETUP=false;
|
||||
;;
|
||||
-h | -H | --help)
|
||||
usage
|
||||
exit
|
||||
;;
|
||||
--*) echo "ERROR: bad option $1"
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
*) echo "ERROR: bad argument $1"
|
||||
usage
|
||||
exit 2
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
unamestr=$(uname)
|
||||
RDIR=$(pwd)
|
||||
AWSFPGA=$RDIR/platforms/f1/aws-fpga
|
||||
|
||||
# setup risc-v tools
|
||||
source ./env.sh
|
||||
|
||||
# setup AWS tools
|
||||
cd $AWSFPGA
|
||||
source ./hdk_setup.sh
|
||||
source ./sdk_setup.sh
|
||||
export CL_DIR=$AWSFPGA/hdk/cl/developer_designs/cl_firesim
|
||||
cd $RDIR
|
||||
|
||||
# put the manager on the user path
|
||||
export PATH=$PATH:$(pwd)/deploy
|
||||
|
||||
if [ "$DO_SSH_SETUP" = true ]; then
|
||||
# setup ssh-agent
|
||||
source deploy/ssh-setup.sh
|
||||
fi
|
||||
|
||||
# flag for scripts to check that this has been sourced
|
||||
export FIRESIM_SOURCED=1
|
|
@ -6,7 +6,7 @@ DO_SSH_SETUP=true
|
|||
|
||||
function usage
|
||||
{
|
||||
echo "usage: source sourceme-f1-manager.sh [OPTIONS]"
|
||||
echo "usage: source sourceme-manager.sh [OPTIONS]"
|
||||
echo "options:"
|
||||
echo " --skip-ssh-setup: if set, skips ssh setup checks."
|
||||
}
|
Loading…
Reference in New Issue