Let’s define our very first job, a simple job that runs nvidia-smi.

1. Define the job config

Copy the following YAML into a show-gpus.yaml file:
resources:
  # 1x A10 GPU
  accelerators: A10:1

envs:
  # set the environment variable MY_ENV_VAR to my-value
  MY_ENV_VAR: my-value

# Copy the contents of the current directory onto the remote machine
workdir: .

# Typical use: pip install -r requirements.txt
# Invoked under the workdir (ie. can use its files)
setup: |
  echo "Running setup operations"

file_mounts:
  # Copy the contents of an S3 bucket to /dataset
  /dataset:
    source: s3://my-dataset
    mode: COPY

  # Mount an S3 bucket to /output
  # Any files written here (eg. model checkpoints) will be uploaded back
  # to the S3 bucket
  /output:
    source: s3://my-output-bucket
    mode: MOUNT

# Typical use: python train.py
# Invoked under the workdir (ie. can use its files)
# This will save a file called nvidia-smi-output.txt in /output,
# which will then get written back to the s3 bucket
run: |
  nvidia-smi > /output/nvidia-smi-output.txt

2. Launch the job

To launch this job, simply run:
komo job launch show-gpus.yaml
You can also choose to give the job an optional name (if not set, Komodo will automatically generate a name):
Names are not required to be unique across jobs. This requirement only exists for machines/services.
komo job launch show-gpus.yaml --name show-gpus
The logs will automatically be live streamed as the job runs. You can safely Ctrl-C after the job is submitted without the job being terminated. You can also launch the job and detach from the logs:
komo job launch show-gpus.yaml -d

3. Get the job logs

You can see the logs for the job in the dashboard, or get them using the CLI:
When interacting with jobs using the CLI, you reference them using their unique ID
komo job logs <job-id>
For jobs that are currently running, you can live stream the logs:
komo job logs --follow <job-id>

4. SSH into the job instance

You can also SSH into the instance that the job is running on:
komo job ssh <job-id>

5. List all jobs

You can list all the jobs you have launched by running:
komo job logs