Demo: Install Jobbergate CLI and execute Slurm Job Submission

Resources

  • Visual Diagram of CLI and API interaction for each CLI command implemented
    here:
  • Jobbergate Hello World example here:
    • fill in desc of files

Steps for Demo

  1. Deploy Slurm-core with Mellanox

    outlined here:

  2. Install jobbergate-cli

    outlined here:

  3. create-application

   jobbergate-cli create-application --name cli_demo --application-path <path to location of /cli_demo>

Output:

            
--------------------------------  ------------------------------------------------------------------------------
id                                28
application_name                  cli_demo
application_description           TEST_DESC
application_location              jobbergate-resources/2/5b11e96b-8778-4299-be69-7908cd80dda9/application.tar.gz
application_dir_listing           TEST_DIR_LISTING
application_dir_listing_acquired  True
application_owner                 2
created_at                        2020-07-29T20:04:31.886937Z
updated_at                        2020-07-29T20:04:31.886964Z
--------------------------------  ------------------------------------------------------------------------------
  1. Populate Parameter file

Application specific templates can be found here:

StarCCM example:
{
  "cluster": "Nash",
  "default_template": "starccm-generic-template.j2",
  "supporting_files": [
    "java-generic-template.j2"],
  "supporting_files_output_name": {
  "java-generic-template.j2": "starccmMesh.java"
  },
  "module_dir": "/share/apps/cd-adapco/RHEL",
  "workflow": "Mesh",
  "cores_per_node": 40,
  "module": "",
  "filename": "/../*.sim",
  "timelimit": 1,
  "cores": 20,
  "jobname": "Star-CCM+",
  "simsteps":  "",
  "stageup": "true",
  "submitnow": "true",
  "output_directory": "."
}

Note: supporting_files_output_name key is the name of the template file (“java-generic-template.j2”) and the value (“starccmMesh.java”) is the name of the file expected by the job script.

  1. create-job-script

Execute:

jobbergate-cli create-job-script --name cli_demo --param-file <path to location of *config.json> --id 26 
  • note application ID is collected from output of create-application
    Output:

-------------------------  --------------------------------------------------------------------------------------------------------------------------------------------------------------
id                         62
job_script_name            cli_demo
job_script_description     TEST_DESC
job_script_data_as_string  ... 
job_script_owner           2
application                28
created_at                 2020-07-31T15:31:17.773317Z
updated_at                 2020-07-31T15:31:17.773343Z
-------------------------  ---------------------------------------------------------------------------------------
 
  1. create-job-submission

Execute:

jobbergate-cli create-job-submission --name cli_demo --id 62

Note job script ID is collected from output of create-job-script

Slurm sbatch is used to submit the job:

sbatch -p partition1 application.sh

Output:


--------------------------  ---------------------------
id                          25
job_submission_name         cli_demo
job_submission_description  TEST_DESC
job_submission_owner        2
job_script                  67
created_at                  2020-07-31T17:48:08.132138Z
updated_at                  2020-07-31T17:48:08.132165Z
--------------------------  ---------------------------
1 Like