Skip to main content

Manage many jobs inside one allocation

Project description

QCG-PilotJob

QCG-PilotJob is a lightweight service for execution of many computing tasks inside one allocation

Author: Piotr Kopta pkopta@man.poznan.pl, Tomasz Piontek piontek@man.poznan.pl, Bartosz Bosak bbosak@man.poznan.pl

Copyright (C) 2017-2021 Poznan Supercomputing and Networking Center

Overview

The QCG-PilotJob system is designed to schedule and execute many small jobs inside one scheduling system allocation. Direct submission of a large group of jobs to a scheduling system can result in long aggregated time to finish as each single job is scheduled independently and waits in a queue. On the other hand the submission of a group of jobs can be restricted or even forbidden by administrative policies defined on clusters. One can argue that there are available job array mechanisms in many systems, however the traditional job array mechanism allows to run only bunch of jobs having the same resource requirements while jobs being parts of a multiscale simulation by nature vary in requirements and therefore need more flexible solutions.

The core component of QCG-PilotJob system is QCG-PilotJob Manager. From the scheduling system perspective, QCG-PilotJob Manager, is seen as a single job inside a single user allocation. It means that QCG-PilotJob Manager controls an execution of a complex experiment consisting of many jobs on resources reserved for the single job allocation. The manager listens to user's requests and executes commands like submit job, cancel job and report resources usage. In order to manage the resources and jobs the system takes into account both resources availability and mutual dependencies between jobs. Two interfaces are defined to communicate with the system: file-based (batch mode) and API based. The former one is dedicated and more convenient for a static scenarios when a number of jobs is known in advance to the QCG-PilotJob Manager start. The API based interface is more general and flexible as it allows to dynamically send new requests and track execution of previously submitted jobs during the run-time.

To allow user's to test their scenarios, QCG-PilotJob Manager supports local execution mode, in which all job's are executed on local machine and doesn't require any scheduling system allocation.

Documentation

The documentation of the QCG-PilotJob system is available at https://qcg-pilotjob.readthedocs.org

Installation

The latest stable version of QCG-PilotJob can be installed with pip

$ pip install qcg-pilotjob

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qcg-pilotjob-0.12.2rc1.tar.gz (126.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qcg_pilotjob-0.12.2rc1-py3-none-any.whl (128.0 kB view details)

Uploaded Python 3

File details

Details for the file qcg-pilotjob-0.12.2rc1.tar.gz.

File metadata

  • Download URL: qcg-pilotjob-0.12.2rc1.tar.gz
  • Upload date:
  • Size: 126.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for qcg-pilotjob-0.12.2rc1.tar.gz
Algorithm Hash digest
SHA256 4c6c7978f9b4194086bf2694ea551dee87c181167e6e405a846b93251d9aec40
MD5 ffffbbe46ff8ae97f936eeec6567bc15
BLAKE2b-256 613e877e2c01f709f71f16fb8dca4fe34a936225bb464e90aa37cdfa1053be08

See more details on using hashes here.

File details

Details for the file qcg_pilotjob-0.12.2rc1-py3-none-any.whl.

File metadata

  • Download URL: qcg_pilotjob-0.12.2rc1-py3-none-any.whl
  • Upload date:
  • Size: 128.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for qcg_pilotjob-0.12.2rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 2ff16d22727bd15ee59297efe7defacb07743f98c0babcef0d3222f8aae66902
MD5 7477e157bb2edaf660a76069825abaee
BLAKE2b-256 100a8e3d6a3ae7c1f6d20e9e61e4c728aa5e420cd4dd254f0993234b8800dce9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page