1 / 14

HUBbub 2013: Developing hub tools that submit HPC jobs

HUBbub 2013: Developing hub tools that submit HPC jobs. Rob Campbell Purdue University Thursday, September 5, 2013. Example  “SubmitR” tool running on the DiaGrid hub. DiaGrid : distributed research computing network SubmitR : hub tool for running R scripts on DiaGrid.

elana
Download Presentation

HUBbub 2013: Developing hub tools that submit HPC jobs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. HUBbub 2013:Developing hub tools that submit HPC jobs Rob Campbell Purdue University Thursday, September 5, 2013

  2. Example  “SubmitR” tool running on the DiaGrid hub • DiaGrid: distributed research computing network • SubmitR: hub tool for running R scripts on DiaGrid

  3. SubmitR Move files, run job on remote system, view results Hub

  4. Building a job: Files, options/arguments, job parameters Job Types One process Multiple processes, communicating (parameter sweep) independent processes

  5. The “submit” command: Runs user command on a remote system submit Connect to remote system Transfer input files and program Create script for user’s command Talk to batch or workflow system Output periodic status updates Transfer files back to hub

  6. submit options: • VENUES - remote systems • MANAGERS - commands that can be run on remote systems • For SubmitR, submit uses: • PBS job scheduling on Purdue’s Hansen cluster (single or parallel jobs) • Pegasus workflow management with HTCondor (parameter sweeps)

  7. Building the submit command: Job should use 2 processors, 60 minutes walltime, run on Hansen cluster, and collect metrics. File “inp.dat” should be included (transported to remote system). submit -n 2 -w 60 -v hansen -M -i inp.dat R-2.15.1 CMD BATCH -q “--args inp.dat” myscipt.R Use manager “R-2.15.1”. Causes “R” interpreter to run on remote system. Options for the R interpreter. Note: submit detects that “myscript.R” is used and transports it to remote system.

  8. Executing the submit command, getting status updates:

  9. Tips for using submit:  Use submit’s email notification feature to alert user when job finishes: $> submit mail2self –s ‘Hey’ –t ‘Your job is done.’  Test submit from the hub’s command line (workspace): $> submit -n 1 -w 5 -v hansen -M R-2.15.1 CMD BATCH -q "--args 1 2" testargs.R" =SUBMIT-METRICS=> job=1214144 (5073894) Job Submitted at hansen-a Mon Sep 2 17:38:54 2013 (5073894) Simulation Queued at hansen-a Mon Sep 2 17:39:04 2013 (5073894) Simulation Complete at hansen-a Mon Sep 2 17:39:20 2013 (5073894) Simulation Done at hansen-a Mon Sep 2 17:39:30 2013 =SUBMIT-METRICS=> job=1214144 venue=1:sshPBS:5073894:diagrid-a@hansen.rcac.purdue.edu status=0 cpu=3.290000 real=3.000000 wait=14.000000 (end of output)

  10. Additional submit feature:  Automatic breakout of parameter combinations (for sweeps) • User wants six runs. • Parameters: • 1 7 • 1 9 • 2 7 • 2 9 • 3 7 • 3 9  “ submit … -p @@p1=1-3;@@p2=7,9 … ”

  11. Directories: •  “Run” directory: • A tool-specific directory under hub’s session directory. • Current working directory for executing submit . • Isolates job-related files. • Ex. “~/data/sessions/6716/submitr” •  Parameter sweep output: • Job directory created under run directory. • Pegasus puts each run’s (sub-job’s) output in separate directory under job directory. • Pegasus bookkeeping files in job directory.

  12. Exiting the tool, canceling the job:

  13. Moving files: • Concept: File “import / export” • Bringing files into and out of tool. • Two flavors: • Browse - moving files between directories on hub (“os.rename(pathname,newpath”) • Upload / download - moving files between workstation and hub • Hub commands: importfile and exportfile . • Execute importfile from separate thread to handle user-canceled uploads

  14. Information

More Related