Prerequisites

Hardware

RACE is a highly concurrent and potentially distributed system. Depending on your application it can make use of multi-core CPUs if actors can work in parallel (such as translators or stats collectors). CPU clock rate is usually less important - leave alone graphics, RACE rarely exceeds CPU loads of 10% on >= 2GHz Intel CPUs.

Memory requirements for RACE also depend mostly on applications, or more specifically on data sets such as large number of active flights. A full SWIM import (SFDPS, TAIS, ASDE-X with >=4500 live flights and 1-15 sec update intervals) can execute in <1.5 GB.

The most demanding component is graphics. If you plan to use the RaceViewerActor (WorldWind) for geospatial display, machines should have >8GB of memory and a contemporary external GPU with at least 2GB of memory.

As a reference, most RACE applications (including full SWIM import) run fine on a 2017 MacBook Pro (3.1GHz i7, 16GB, Radeon Pro 555).

OS

As a JVM application RACE can run on OS X, Linux and Windows. Most development is done on OS X machines.

Software

Java JDK

RACE needs to have a working Java JDK >=11 installed on developent machines, preferably obtained from the OpenJDK website. You can check the current java version by running

> java -version

from the command line.

On OS X, you can check for installed JDKs by running

> /usr/libexec/java_home -V

and setting JAVA_HOME in your ~/.profile accordingly.

SBT

The Scala Build Tool >=1.0 is used to build and run RACE. Please refer to the SBT documentation for details of how to install SBT on various platforms. The RACE build itself uses Scala >=2.13.0, which is installed by SBT

Git

To obtain and update RACE sources, we use Git as the distributed version control system.