How to Run SVL Simulator on AWS#

Table of Contents

Setup an AWS RoboMaker Development Environment top#

  1. Go to AWS RoboMaker in the AWS Console. Click on the “3-lines” in the upper left to make the navigation pane visible.

  2. Navigate to Development > Development environments.

  3. Create a Foxy development environment. Use the default instance type; it will be changed once the development environment has been created.

  4. Wait until the creation of the development environment has finished and the initial screen appears, then close the browser tab.

  5. Navigate to the EC2 service in the console.

  6. Select the instance created by RoboMaker and then select Stop instance from the Instance state dropdown menu.

  7. Once it has stopped, navigate to Actions > Instance Settings and select Change instance type.

  8. Choose g4dn.2xlarge for the new instance type.

  9. Navigate to Development > Development environments, select the development environment you created and press Open environment.

  10. Once the development environment has started, launch a Virtual Desktop.

  11. Open an XTerm window.

  12. Update the OS packages and install Terminal:

    $ sudo apt update
    $ sudo apt full-upgrade
    $ sudo apt install gnome-terminal
    
  13. Reboot, launch a Virtual Desktop, and open a Terminal window.

Install the NVIDIA Drivers top#

  1. Launch Additional Drivers:

    $ sudo software-properties-gtk --open-tab=4
    
  2. Select Using NVIDIA driver metapackage from nvidia-driver-470 and press Apply Changes.

  3. Reboot, launch a Virtual Desktop, and open a Terminal window.

  4. Confirm that the NVIDIA drivers have been installed correctly by running nvidia-smi. Its output should be similar to:

    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 470.86       Driver Version: 470.86       CUDA Version: 11.4     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla T4            Off  | 00000000:00:1E.0 Off |                    0 |
    | N/A   62C    P0    30W /  70W |    146MiB / 15109MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A      3656      C   ...64-linux-gnu/dcv/dcvagent      143MiB |
    +-----------------------------------------------------------------------------+
    

Install and Setup SVL Simulator top#

  1. Download and install the latest version of SVL Simulator (2021.3):

    $ base=svlsimulator-linux64-2021.3
    $ wget https://github.com/lgsvl/simulator/releases/download/2021.3/$base.zip
    $ unzip $base.zip
    $ cd $base
    
  2. Launch it:

    $ ./simulator &
    
  3. To finish the setup, follow the SVL Simulator installation procedure starting from Link to Cloud. Because Docker is already installed on the Foxy development environment, you can ignore the Installing Docker under Linux section.

Install an Autopilot top#

The AWS instance that the development environment is running on has enough CPU, GPU, and memory resources to support running an autopilot in addition to SVL Simulator. However, it does not have enough disk space in its root filesystem to install and build one. To add another volume to the instance:

  1. Create an empty volume. Select gp3 for the type and size 100 GiB.

  2. Attach it to the instance

  3. Format and automatically mount the volume .

The advantage of keeping the autopilot build on a separate volume from the root volume of the instance is that it can be retained when the instance is terminated.

Now you are ready to install, build, and run an autopilot. Browse to the list of autopilot tutorials to get started.