Evaluating AMPS on Windows or MacOS

This section describes how to evaluate AMPS on a system that runs Windows or MacOS.

The AMPS server runs on 64-bit Linux operating systems. If you do not have access to a Linux system or a recent version of Windows, 60East recommends creating a Linux virtual machine to host the instance of AMPS. This is a convenient option for development systems and allows you to easily experiment with different AMPS configurations on a dedicated system.

This section provides general information for creating a virtual machine image for use as a local development or evaluation environment.

This section assumes that you are familiar with Linux and the virtualization program you will be working with. It focuses on information specific to AMPS.

Using Windows Subsystem for Linux 2

If your development system is running a recent version of Windows, then Windows Subsystem for Linux 2 is a good option for developing with AMPS. Getting AMPS running is simply a matter of starting a Linux shell, downloading AMPS, and following the directions for Linux.

Notice that Windows Subsystem for Linux 2 does not provide access to some of the functionality that the AMPS server expects: in particular, the AMPS NUMA subsystem may not be able to determine the physical processor layout and may report warnings on startup. Nevertheless, this can be a very good option for doing AMPS evaluation and development on a Windows system.

Creating a Virtual Machine Image

When creating the virtual machine image, 60East recommends the following parameters:

  • x64 processor

  • At least 4GB of memory allocated to the virtual machine

  • Minimum of 120GB drive space (most will be consumed by the operating system image)

  • At least 2 virtual processors

AMPS itself can run with less memory, processor, and disk capacity than recommended here. However, these settings will typically provide reasonable performance and enough capacity to do basic development work.

Virtual Box Settings

When installing AMPS on Virtual Box, 60East strongly recommends setting the network hardware emulation to use the Paravirtualized network adapter (virtio-net). For recent versions of Linux, performance is dramatically improved (even over the loopback interface) when using this setting.

Choosing a Linux Distribution

AMPS runs well on any Linux distribution that meets the basic requirements. The Ubuntu Linux distribution is a good choice, and is frequently used by both customers and the 60East developers as a development workstation environment. Visit https://www.ubuntu.com/download to download the latest released version of Ubuntu.

Whichever distribution you choose, 60East recommends that you download the .iso file and use that file to install the operating system.

Installing the Linux Distribution

AMPS itself doesn't require anything beyond a basic operating system distribution. For the best experience while you are evaluating and getting to know AMPS, 60East recommends that you choose a profile optimized for software development or desktop use.

Select the following additional packages if your distribution does not already install them:

  • Python 2.6/2.7 or 3. The utility scripts in the AMPS distribution require Python.

  • Java runtime environment (1.7 or more recent). The spark command line AMPS client is written in Java, and requires a JRE. This guide assumes that you have a JRE available, and presents examples using spark.

  • g++, gdb, and your IDE of choice if you will be developing C++ applications with AMPS.

  • A web browser such as Firefox or Google Chrome

Filesystem Considerations

AMPS is designed and tested to use a Linux-based filesystem such as ext4 or filesystems that provide full native Linux filesystem semantics (for example, using nfs mounted filesystems for testing or archival purposes).

Mounting another type of filesystem (for example, an NTFS volume) in a VM, container, or WSL 2 may cause failures or unexpected results, since that approach may not provide all of the filesystem operations that AMPS uses.

When using a container, VM, or WSL2, make sure that AMPS and the files that AMPS creates are hosted on filesystems that support Linux file operations, in particular, that a process running under the Linux environment can memory map files hosted on that filesystem.

Next Steps

Once you have created the virtual machine image and installed your Linux distribution of choice, you can install and start AMPS as described in Installing AMPS.

Last updated

Copyright 2013-2024 60East Technologies, Inc.