Skip to main content

pysqa

Pipeline Documentation Status codecov Binder DOI GitHub Repo stars

High-performance computing (HPC) does not have to be hard. In this context the aim of the Python Simple Queuing System Adapter (pysqa) is to simplify the submission of tasks from python to HPC clusters as easy as starting another subprocess locally. This is achieved based on the assumption that even though modern HPC queuing systems offer a wide range of different configuration options, most users submit the majority of their jobs with very similar parameters.

Therefore, in pysqa users define submission script templates once and reuse them to submit many different tasks and workflows afterwards. These templates are defined in the jinja2 template language, so current submission scripts can be easily converted to templates. In addition, to the submission of new tasks to HPC queuing systems, pysqa also allows the users to track the progress of their tasks, delete them or enable reservations using the built-in functionality of the queuing system. Finally, pysqa enables remote connections to HPC clusters using SSH including support for two factor authentication via pyauthenticator, this allows the users to submit task from a python process on their local workstation to remote HPC clusters.

All this functionality is available from both the Python interface as well as the command line interface.

Features

The core feature of pysqa is the communication to HPC queuing systems including (Flux, LSF, MOAB, SGE, SLURM and TORQUE). This includes:

  • QueueAdapter().submit_job() - Submission of new tasks to the queuing system.
  • QueueAdapter().get_queue_status() - List of calculation currently waiting or running on the queuing system.
  • QueueAdapter().delete_job() - Deleting calculation which are currently waiting or running on the queuing system.
  • QueueAdapter().queue_list - List of available queue templates created by the user.
  • QueueAdapter().config - Templates to a specific number of cores, run time or other computing resources. With integrated checks if a given submitted task follows these restrictions.

In addition to these core features, pysqa is continuously extended to support more use cases for a larger group of users. These new features include the support for remote queuing systems:

  • Remote connection via the secure shell protocol (SSH) to access remote HPC clusters.
  • Transfer of files to and from remote HPC clusters, based on a predefined mapping of the remote file system into the local file system.
  • Support for both individual connections as well as continuous connections depending on the network availability.

Finally, there is current work in progress to support a combination of multiple local and remote queuing systems from within pysqa, which are represented to the user as a single resource.

Documentation

Contributing

Contributions are welcome! Please see the contribution guidelines for how to report issues, request features, seek support and submit code, and the code of conduct for our community standards. Bugs and feature requests are tracked on the issue tracker.

License

pysqa is released under the BSD license . Still if you use pysqa for applications which result in a scientific publication, please cite:

@article{pysqa,
  author = {Janssen, Jan and Neugebauer, Joerg}, 
  title = {pysqa - Python Simple Queuing System Adapter}, 
  journal = {Journal of Open Source Software},
  doi = {10.21105/joss.10961},
  url = {https://doi.org/10.21105/joss.10961},
  year = {2026},
  publisher = {The Open Journal},
  volume = {11},
  number = {125},
  pages = {10961}
}

Release files for pysqa 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pysqa 1.0.1
File Size Uploaded
pysqa-1.0.1.tar.gz 25.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pysqa 1.0.1
File Interpreter ABI Platform
pysqa-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 64.2 kB

Release files / pysqa-1.0.1.tar.gz

Download URL pysqa-1.0.1.tar.gz
Size 25.7 kB
Tags Source
SHA-256 checksum
How to use checksums
df06ebf225be73e3920d01e07a9bd763ad8acec1711e5700ca2cdfa62a8fa18c
BLAKE2b-256 checksum
How to use checksums
3c6e9d1585b34d1e8287173af2c766bcd74ceeb816dd39d75fcd9c88bcf73b82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / pysqa-1.0.1-py3-none-any.whl

Download URL pysqa-1.0.1-py3-none-any.whl
Size 38.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e9254ec016e44465aed6d8632d298d2a9052832b6ffa2fb6aadc1c38fc039bbc
BLAKE2b-256 checksum
How to use checksums
b6b532057b9262861b1de1b6da4c68b3c30c8720ac038d844e855968be4a4dc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.22

2 release files

0.1.21

2 release files

0.1.20

2 release files

0.1.19

2 release files

0.1.18

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.24

2 release files

0.0.20

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.12

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page