Run on a remote machine
verlet runs simulations on any Linux machine you can reach with ssh. It uses the OpenSSH on your
computer, so your ~/.ssh/config, keys, agent, jump hosts and Kerberos tickets work as they do in
a terminal.
What the machine needs
Section titled “What the machine needs”- Linux on x86_64, glibc 2.17 or newer.
- About 500 MB free in your home directory.
- An engine executable, or the ability to build one in your home.
Nothing needs root, and nothing goes outside ~/.verlet. Your computer needs OpenSSH 8.4 or
newer, which macOS and current Linux ship.
Add the machine
Section titled “Add the machine”- Open Environments and press Add environment.
- Choose Remote and enter the SSH host: an alias from
~/.ssh/configsuch asperlmutter, oruser@host. Add a port only if it is not 22. - Press Test connection. verlet reports the operating system, architecture, glibc, home directory and free space, and whether verletrc is already there.
- Save. verlet connects, installs verletrc and scans the machine.
A password, one-time code or new host key prompt appears in verlet and your answer goes straight
to ssh. verlet never stores passwords or codes.
What verlet installs
Section titled “What verlet installs”verletrc, a small self-contained service, in ~/.verlet/versions/<id>, started as
you. Older copies are removed after an update.
~/.verlet/ versions/<id>/ the verletrc service, one directory per version run/ verletrc's pid, port and token work/ one directory per run events/ logs/ verletrc's event log and its own logs spack/ opt/ builds/ bin/ only if you build the engine hereverletrc listens on loopback only. verlet reaches it through a port forwarded over your SSH connection, and every request carries a token only your verlet knows.
Connection health
Section titled “Connection health”verlet checks verletrc every 30 seconds. After three misses it reconnects, waiting 5 s, 15 s, 60 s and then 5 minutes between attempts. The environment shows connected, connecting, disconnected or failed. Runs start only when verletrc reports itself healthy.
Running
Section titled “Running”Pick the environment in the Run sheet. The input is uploaded to its own directory under
~/.verlet/work, and more than one rank starts with mpirun -np N.
Runs are detached from the connection. Close your laptop or lose the network and the run keeps going; on reconnect, verletrc replays what happened, so the charts and the final state catch up.
Disconnecting and removing
Section titled “Disconnecting and removing”Disconnect closes the SSH connection; verletrc and running simulations keep going. Removing an
environment removes it from verlet; delete ~/.verlet on the machine to remove verletrc too.