HiveBoard Get HiveBoard
  • For Slurm clusters
  • Twenty simulation codes
  • Read-only by default

See how far every calculation has got.

HiveBoard reads your cluster’s queue over SSH and shows, for each job, its progress, the time left, how it is converging and what the structure looks like. It runs on your own computer and installs nothing on the cluster.

HiveBoard Ember Updated just now

pt111-co-relax

VASP Relax Running

#419122 · Ember · 36 CPUs · started 2h 33m ago

Relaxing the structure: 23 of up to 120 ionic steps complete.

19% about 10h 47m left

How this was estimated: ~400s per ionic step × up to 97 steps left (often converges sooner)

Ionic steps
23 / 120
SCF iteration
8 / 60
Last energy
-84.2498 eV
Energy per ionic step
Structure · step 23
Pt(111)-2×2 + CO atop, at ionic step 23
Illustrative · demo data, sped up

That is HiveBoard in miniature. Open another job in the list, pause it, or turn the molecule with the pointer.

That is the whole idea. The rest of this page shows each part working.

How it reads a job

From a folder on the cluster to a sentence you can act on.

HiveBoard never copies your output home and never runs anything of its own on the cluster. It asks two short questions over SSH and reads the answers. Here is what it does with the job from the top of this page.

  1. It lists the folder
  2. It recognises the code
  3. It reads a few lines
  4. It tells you where the job is

Step 1 of 4 It lists the folder

One command over SSH: the file names, and the first lines of the few files that could be an input or an output.

~/runs/pt111-co-relax
CONTCARINCARKPOINTSOSZICAROUTCARPOSCARPOTCARXDATCARsub.sh

Step 2 of 4 It recognises the code

An INCAR beside a POSCAR is VASP. IBRION = 2 with NSW above zero makes it a relaxation.

INCAR VASP Relax
SYSTEM = Pt(111)-2x2 + CO atopENCUT  = 400IBRION = 2NSW    = 120EDIFFG = -0.02ISMEAR = 1

Step 3 of 4 It reads a few lines

Not the whole output — the lines that say how far the run has got, fetched by one more command.

OSZICAR
  21 F= -.84245700E+02 E0= -.84245700E+02  d E =-.250000E-02  22 F= -.84247800E+02 E0= -.84247800E+02  d E =-.210000E-02  23 F= -.84249800E+02 E0= -.84249800E+02  d E =-.200000E-02

Step 4 of 4 It tells you where the job is

Steps done against the most the run may take, the time left and how that was worked out.

Illustrative

Relaxing the structure: 23 of up to 120 ionic steps complete.

19% about 10h 47m left

How that was worked out: ~400s per ionic step × up to 97 steps left (often converges sooner)

Twenty codes

It knows what you are running — and what kind of run it is.

A job is recognised by what is in its folder: the file names, and the first lines of the files that could be an input or an output. Nothing to configure per job, and a folder nothing recognises still gets its run time, its output and its files.

  • 5 Solid-state & periodic DFT
  • 8 Molecular quantum chemistry
  • 4 Classical molecular dynamics
  • 3 Kinetic Monte Carlo

Solid-state & periodic DFT

VASP

Kinds of calculation it tells apart

  • Relax
  • MD
  • NEB
  • Single-point

Solid-state & periodic DFT

Quantum ESPRESSO

Kinds of calculation it tells apart

  • Relax
  • Cell relax
  • MD
  • Phonons
  • NEB
  • Bands

Solid-state & periodic DFT

CP2K

Kinds of calculation it tells apart

  • Geometry opt
  • Cell opt
  • MD
  • NEB
  • TS search

Solid-state & periodic DFT

CASTEP

Kinds of calculation it tells apart

  • Geometry opt
  • MD
  • Phonons
  • Bands

Solid-state & periodic DFT

FHI-aims

Kinds of calculation it tells apart

  • Relax
  • Cell relax
  • MD
  • DFPT

Molecular quantum chemistry

ORCA

Kinds of calculation it tells apart

  • Optimisation
  • Frequencies
  • Relaxed scan
  • TS search

Molecular quantum chemistry

Gaussian

Kinds of calculation it tells apart

  • Optimisation
  • Opt + Freq
  • Scan
  • IRC
  • TS search

Molecular quantum chemistry

Q-Chem

Kinds of calculation it tells apart

  • Optimisation
  • Opt + Freq
  • Scan
  • MD
  • IRC

Molecular quantum chemistry

Psi4

Kinds of calculation it tells apart

  • Optimisation
  • Opt + Freq
  • Frequencies
  • SAPT

Molecular quantum chemistry

MOLPRO

Kinds of calculation it tells apart

  • Optimisation
  • Opt + Freq
  • Scan
  • TS search

Molecular quantum chemistry

GAMESS

Kinds of calculation it tells apart

  • Optimisation
  • Scan
  • MD
  • IRC
  • TS search

Molecular quantum chemistry

PySCF

Kinds of calculation it tells apart

  • Optimisation
  • Frequencies
  • MD
  • Excited states

Molecular quantum chemistry

xtb

Kinds of calculation it tells apart

  • Opt + Hessian
  • MD
  • Metadynamics
  • Relaxed scan

Classical molecular dynamics

GROMACS

Kinds of calculation it tells apart

  • MD
  • Minimisation
  • Free energy
  • Pulling

Classical molecular dynamics

LAMMPS

Kinds of calculation it tells apart

  • MD
  • Minimisation
  • NEB
  • GCMC
  • Deposition

Classical molecular dynamics

OpenMM

Kinds of calculation it tells apart

  • MD
  • Minimisation

Classical molecular dynamics

NAMD

Kinds of calculation it tells apart

  • MD
  • Minimisation
  • Free energy

Kinetic Monte Carlo

Zacros

Kinds of calculation it tells apart

  • KMC
  • Temperature ramp

Kinetic Monte Carlo

kmos

Kinds of calculation it tells apart

  • kMC

Kinetic Monte Carlo

SPPARKS

Kinds of calculation it tells apart

  • Potts
  • Ising
  • Diffusion
  • Sintering

Your code is not on the list? It is one file.

Every code above is a single YAML file: which files a job folder holds, how to recognise it, what to read from the output and how that becomes progress, charts and warnings. Put one of your own in HiveBoard’s data folder and it is read at the next start — no change to HiveBoard itself.

engines/mycode.yaml An example, abridged
id: mycode
name: MyCode
family: molecular-qc
files:
  input:
    patterns: ['*.mc']
  output:
    beside: input
    suffixes: ['.out']
detect:
  listing:
    strong: ['*.mc']
reads:
  tail:
    file: output
    how: tail
    bytes: 6000
values:
  step:
    from: tail
    regex: 'STEP\s+(?P<v>\d+)'
    type: int
  limit:
    from: input
    regex: 'maxsteps\s*=\s*(?P<v>\d+)'
    type: int
progress:
  - done: step
    total: limit
    unit: step

One job, opened

Watch a relaxation settle, step by step.

Open a job and HiveBoard draws how it is converging and what the structure looks like at every step it has taken. This is the job from the top of the page, from its first ionic step to its last. Press play, or drag the slider.

pt111-co-relax

VASP Relax Completed Illustrative · demo data

#419122 · Ember · 36 CPUs · 1 node · ~/runs/pt111-co-relax

Relaxation converged after 29 ionic steps.

100%Converged
Pt(111)-2×2 + CO atop, relaxed: the structure at the last ionic step
Pt C O Pt(111)-2×2 + CO atop · 14 atoms
System
Pt(111)-2×2 + CO atop
Calculation
Structure relaxation
Ionic steps
29 / 120
SCF iteration
8 / 60
Last energy
-84.2555 eV
Energy per ionic step · E0 (eV)
SCF convergence (current cycle) · log₁₀|ΔE| (eV) · dashed: EDIFF
Step 29 of 29
  1. Steps taken The lines that end an ionic step in OSZICAR, counted. “Up to 120” is NSW in the INCAR.
  2. Time left The average time of the last five ionic steps, from the LOOP+ lines in OUTCAR, times the steps left to NSW. If the time limit comes first, it says so instead.
  3. Last energy E0 of the latest ionic step, from OSZICAR.
  4. Energy per ionic step E0 after every ionic step, from OSZICAR.
  5. SCF convergence The change in energy at each electronic step of the latest cycle, from OSZICAR, on a log scale. The dashed line is EDIFF, from the INCAR.
  6. The structure The geometry at each ionic step, from the job’s XDATCAR, CONTCAR or POSCAR.
  7. How it is read Over SSH, in the job’s folder, a few lines at a time. Nothing on the cluster is written or changed.
  • Files

    Browse the job’s folder, open a very large output a page at a time, and download a file, a selection or the whole folder as an archive.

  • Output

    The end of the job’s output, refreshed while you watch it.

  • Setup

    What the input asks for, in plain words. For a VASP job: functional, cutoff, smearing, tolerances, spin — read from the INCAR, not guessed.

Connecting

Type an address. It works out the rest.

Adding a server is its address and your user name. HiveBoard checks who answers, which ways of signing in it accepts, and tests the whole path before it saves anything.

  • Nothing is installed on the cluster

    HiveBoard asks with the scheduler’s own commands and the ordinary tools every login node has. There is no agent to deploy and nothing left running there.

  • It can make the key for you

    No SSH key yet? HiveBoard creates one and installs it on the server. Your password is used for that once and is never stored.

  • Passwords and one-time codes work

    A server that wants a password and a code is signed in to once; the connection is then kept, so you are not asked again every refresh.

  • Behind a gateway is fine

    A cluster you can only reach from another machine connects through it — the same idea as ssh -J.

Add a server Illustrative
Server address
ember.example.edu
User name
zoe
  1. Reach the server ember.example.edu answers on port 22
  2. Verify its identity host key matches the one on record
  3. Sign in as zoe, with the key HiveBoard created
  4. Read your account logged in as zoe
  5. Find the job scheduler Slurm

Connected — 5 of 5 steps passed.

Safety

It watches. Changing anything is your decision, per server.

These are research files and somebody’s allocation. HiveBoard is built so that looking can never cost you either.

Ember · General Illustrative

Flip the switch to see what it changes.

  • pt111-co-relax Running · yours read-only Cancel job…
  • ruo2-110-relax Ended at its time limit, not converged · yours read-only Continue…
  • cu-zno-md Running · another person’s never yours to change
  • Read-only until you say otherwise

    Cancel, continue and delete do not exist for a server until you turn job control on for that server.

  • Your own jobs, and nobody else’s

    Whose job it is comes from who you are on the cluster — not from a setting in HiveBoard that could be wrong.

  • It asks, and it backs up first

    Every action is confirmed in the app. Before a run is continued, the old POSCAR is saved beside the new one.

  • A password is used, never kept

    Passwords and one-time codes go to the server you typed them for and nowhere else. None is written to disk.

  • It does not knock twice

    A server that needs a password is never dialled by itself, and a sign-in the server refused is not tried again until you act.

  • It stays on your computer

    HiveBoard answers only to the computer it runs on. There is no HiveBoard account and no HiveBoard server.

Guardian

It tells you when a job goes quiet. It never cancels one.

Guardian is switched off until you turn it on. While HiveBoard is open it watches your own jobs and writes down everything it notices — and, if you let it, picks up a relaxation that ran out of time.

A slow calculation and a hung one look the same from outside, and a cancel cannot be undone. So a job that has stopped writing output is reported to you, not stopped for you.

Guardian Illustrative
What Guardian does
  1. #419122 pt111-co-relax has written no output for 45 min — check it.
  2. #419122 is writing again.
  3. #419131 ruo2-110-relax ended at its time limit before converging.
  4. It could be continued. Guardian is only watching, so that is up to you.
  5. #419131 continued as #419260 — POSCAR backed up first (1 of 3).

Two builds

The same pages, two ways to run them.

Both show the same interface and read the same settings, keys and engine files, so you can move between them. Their tests replay the same 116 job folders, and the two must give the same answer for every one.

The Python build

Runs anywhere Python 3.10 or newer does.

  • A double-click launcher sets up its own environment on the first run — or install it with pipx.
  • Opens the dashboard in your browser.
  • The reference: what a job folder means is decided here first.

The Go build

One self-contained file. No Python, nothing to install.

  • Speaks SSH by itself, in its own app window with a tray icon on Windows.
  • Keeps finished jobs on your computer, so they open after the cluster has cleaned them up.
  • Portable: keeps its settings and keys in a folder beside it, to carry on a USB stick.

Both work with clusters that use Slurm. Other schedulers are not supported yet.

Who makes it

HiveBoard is made by Zeinab H. Fard.

PhD student in Chemical Engineering at Tulane University.

HiveBoard is her own personal project, and nobody funds it.

Know where every job stands before you open a terminal.

HiveBoard 0.1.5 is one file for Windows, macOS or Linux, with nothing to install. Fill in the form and the download link appears straight away; a copy goes to your inbox.

HiveBoard is free for academic and non-commercial use. It is provided as is, without warranty. © 2026 Zeinab H. Fard. What we keep, and how to delete it.

  • An account on a cluster that uses Slurm
  • The way you already sign in to it — a key, or a password and code
  • Windows, macOS or Linux

HiveBoard is Zeinab H. Fard's own personal project, not funded by anyone.