Welcome to LXM3’s documentation!

LXM3 provides an implementation for DeepMind’s XManager launch API that aims to provide a similar experience for running experiments on traditional HPC (SGE, Slurm).

With LXM3, launching your job on a HPC cluster is as simple as creating a launch script, e.g. launcher.py:

with xm_cluster.create_experiment(experiment_title="Hello World") as experiment:
   executor = xm_cluster.Slurm()
   # or, if you want to use SGE:
   # executor = xm_cluster.GridEngine()
   # or, if you want to run locally:
   # executor = xm_cluster.Local()

   spec = xm_cluster.PythonPackage(
      path=".",
      entrypoint=xm_cluster.ModuleName("my_package.main"),
   )

   # package your code
   [executable] = experiment.package(
       [xm.Packageable(spec, executor_spec=executor.Spec())]
   )

   # add jobs to your experiment
   experiment.add(
       xm.Job(executable=executable, executor=executor)
   )

and run the command

lxm3 launch launcher.py

Indices and tables