License options#

ACEMD is dual-licensed. The right license depends on whether you’re doing commercial work and how your hardware is organised.

Non-commercial license#

Free for academic and non-profit use under the Acellera Software Not-for-Profit License Agreement. No license file is required to run ACEMD non-commercially; the package prints the license terms on first run and registration is optional (and silences the message).

If your work is funded by, conducted at, or otherwise tied to a for-profit organisation, you need a commercial license — see below.

Commercial license#

Required for any commercial use, including fee-based services. Contact info@acellera.com for terms.

Commercial licenses come in three deployment shapes. Pick the one that matches how your users access compute:

Node-locked#

A license.dat file bound to the MAC address of a specific machine.

  • Best for individual workstations or small HPC clusters where ACEMD only runs on a handful of fixed hosts.

  • You provide the MAC address(es) at purchase. The license is issued for those hosts and won’t validate on other hardware.

  • See Install a node-locked license.

Floating#

A license file deployed on a single license server machine; clients check out a license at runtime from a fixed pool.

  • Best for larger HPC clusters where any of many nodes might run ACEMD, and you don’t want to bind to specific node MACs.

  • You provide the MAC of the license-server host plus the maximum concurrent-license count.

  • Clients need network access (default TCP 27000) to the license server.

  • See Deploy a floating license server.

Cloud#

Same protocol as floating, but the license server is hosted by Acellera.

  • Best for cloud/virtualised environments where MAC addresses are unstable and you don’t want to run your own license server.

  • You receive a public IP and port; set ACELLERA_LICENSE_SERVER=<port>@<ip> on each client.

  • Clients need network access to Acellera’s server.

Which one for which situation#

Situation

Pick

Solo workstation

Non-commercial or node-locked

Small lab, a few fixed GPU hosts

Node-locked

HPC cluster, many shared nodes

Floating

Cloud / Kubernetes / spot instances

Cloud

How ACEMD finds the license at runtime#

ACEMD looks for a license in the following places (both the American and British spellings are accepted for each environment variable):

  • Environment variables ACELLERA_LICENSE_SERVER / ACELLERA_LICENCE_SERVER — for floating and cloud.

  • Environment variables ACELLERA_LICENSE_FILE / ACELLERA_LICENCE_FILE — explicit path to a node-locked file.

  • /opt/acellera/license.dat (or licence.dat) — system-wide node-locked location.

  • ~/.acellera/license.dat (or licence.dat) — per-user node-locked location.

If any of these variables is set or any of these files exists, ACEMD hands off to the bundled license-checker binary, which performs the actual validation and decides which license to use. The Python layer does not itself rank the candidates or enforce a precedence between them — that logic lives in the external checker.

acemd --license runs the checker and prints its report so you can verify a license install. Note that acemd --license always exits with status 0; it is informational and does not return a pass/fail exit code, so don’t rely on its exit status in scripts — read its output instead.

See also#