Skip to main content

Software and System Setup

When you set up Cells2Stats on a system, you must install a static binary executable or use a Docker container that meets system requirements. Additionally, you must configure the compute environment to transfer files.

System Requirements

Operating System

Cells2Stats is compatible with various operating systems (OS). To determine the appropriate Cells2Stats distribution for your OS, review the following compatibility matrix:

Operating SystemDocker CompatibilityStatic Binary CompatibilityOS Notes
Linux OSYes, Green CheckmarkYes, Green CheckmarkThe static binary executable is compatible with any Linux OS on an x86 architecture that uses glibc v2.19 or later.

To verify the glibc version for static binary, run the following command: ldd --version
Windows OSYes, Green CheckmarkNo, Red XWindows OS is not directly compatible with the static binary executable. Install Docker and run using Docker. Make sure that you review the system requirements. Element recommends that you enable the WSL 2 backend feature.
Windows OS with Windows Subsystem for Linux (WSL)Yes, Green CheckmarkYes, Green CheckmarkIf you install WSL on Windows OS, you can use the static binary executable in the WSL environment.
Mac OSYes, Green CheckmarkNo, Red XMacOS is not compatible with the static binary executable. Install Docker and run using Docker.
Note:  

Cells2Stats is not supported on ARM processors.

Memory and Performance

Software performance is based on the resources that are dedicated to the processing environment and whether CellProfiler is enabled or not. For optimal performance, make sure that you have at least 16 CPU cores available and enable threading Cells2Stats with the -j argument. The following memory requirements apply to both Docker and static binary distributions:

  • If CellProfiler is enabled, Cells2Stats requires 2 GB RAM per concurrent thread.
  • If CellProfiler is not enabled, Cells2Stats requires 200 MB RAM per concurrent thread.

The following table provides processing time estimates for Cells2Stats to generate output files with different optional arguments. These estimates are based on an Amazon m5dn.12xlarge EC2 instance with an onboard SSD.

Threads--skip-cellprofilerNo optional arguments--skip-cellprofiler --visualization--visualization
88m3h 3m34m3h 29m
167m1h 44m33m2h 10m
326m1h 15m33m1h 43m

Temporary Directory

When you use cloud storage, Cells2Stats downloads input files and stages output files in a temporary directory. Intermediate files that are generated during analysis are also stored in the temporary directory. After an execution completes, the temporary directory is cleared. The temporary directory uses approximately 50 GB for a typical cytoprofiling run.

By default, Cells2Stats uses the temporary directory of the OS. To change the temporary directory location, set the environment variable TMPDIR. Use the following example command and replace /path/to/scratch with the desired directory:

Set TMPDIR in Linux env
export TMPDIR="/path/to/scratch"

File Transfer and Storage Setup

To transfer files, Cells2Stats requires paths to input and output locations. You can store input and output files in a local location or the cloud. For cloud storage, the following providers are compatible:

  • Amazon Simple Storage Service (Amazon S3)
  • Google Cloud Storage (GCS)
  • Any Rclone-compatible provider

Amazon S3 and GCS storage connections require a credential configuration for Cells2Stats executions. For more information, see Execute with Amazon S3 and Execute with GCS.

Rclone Requirements

Rclone is a command-line program to manage files on cloud storage. Rclone provides the ability to mount any local, cloud, or virtual file system. Rclone allows Cells2Stats to access many cloud storage providers. However, Element has not tested every available Rclone provider.

To download and install Rclone, follow the instructions at rclone.org/install. To communicate with your cloud storage, configure an Rclone remote setup. For more information, see the provider-specific instructions at rclone.org/#providers.

Cells2Stats Installation

Set up Cells2Stats using Docker or static binary.

NOTE 

The static binary executable for Cells2Stats is only compatible with specific OS configurations. Review the OS requirements before attempting installation.

  1. Follow the OS-specific instructions at docs.docker.com/get-docker/.

  2. To pull the latest version of the Cells2Stats image from the Element public registry at DockerHub, run the following command:

docker pull elembio/cells2stats
  1. To confirm that Cells2Stats is operational, run the following commands to display the software version and help content:
docker run elembio/cells2stats cells2stats --version
docker run elembio/cells2stats cells2stats --help