HPS-MC
batch.py File Reference

Go to the source code of this file.

Classes

class  Batch
 Generic batch processing interface. More...
 
class  BatchSystem
 Represents a batch processing system that requires submission like Slurm or Auger. More...
 
class  LSF
 Submit LSF batch jobs. More...
 
class  Slurm
 Submit Slurm batch jobs. More...
 
class  Auger
 Submit Auger batch jobs. More...
 
class  Swif
 Submit using the 'swif2' command at JLAB using an Auger file. More...
 
class  Local
 Run local batch jobs sequentially. More...
 
class  KillProcessQueue
 Kill processes in the multiprocessing queue if the jobs are canceled. More...
 
class  Pool
 Run a set of jobs in a local multiprocessing pool using Python's multiprocessing module. More...
 

Namespaces

 hpsmc.batch
 
 batch
 Defines a set of classes and a command-line interface for submitting batch jobs.
 

Functions

def run_job_pool (cmd)
 Run the command in a new process whose PID is added to a global MP queue. More...
 
def is_running (proc)
 Check if a system process looks like it is still running. More...
 

Variables

 logger = logging.getLogger("hpsmc.batch")
 
 RUN_SCRIPT = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'job.py')
 
 mp_queue = multiprocessing.Queue()
 
dictionary system_dict
 
 system = sys.argv[1].lower()
 
dictionary batch = system_dict[system]()
 
 args = sys.argv[2:]