Skip to main content

Tooling and documentation of of the formats used for Open Scheduling Problems (OSPs) of JSSPP

Project description

JSSPP OSP Formats and Tools

This repository contains tooling and documentation of the formats used for Open Scheduling Problems (OSPs) of the JSSPP workshop.

Scheduling large parallel systems remains a formidable challenge today. Facing this challenge, however, requires knowledge of the actual problems encountered in the field. We hope to facilitate the sharing of open problems in scheduling these systems by defining a common standard in which problems can be defined and then shared with the community. We consider an Open Scheduling Problem (OSP) to consist of two main aspects:

  • The environment, consisting of the static topology (physical and logical organization of the machines) and system events which change that topology.
  • The workload, consisting of the jobs and tasks that the system should run.

This repository provides the format for specifying this information and the tools to validate whether these formats are valid. If you want to submit an OSP, it needs to be specified in terms of at least two JSON files: One for the environment, and one for the workload. Both need to comply with their respective JSON schemas, which can be found in schemas/. The schemas are flexible, allowing you to share as much or as little as you can disclose. If you feel that a certain machine-readable part of the format does not adequately express your problem, feel free to use the free-form text description fields to complement the machine-readable information.

We have provided a basic "Hello World" example, consisting of a simple environment and workflow workload. To explore this example, follow the documentation below, or see the examples/ folder for a quick impression. Note that this example is not an exhaustive representation of what can be expressed in the formats. Please refer to the schemas for a complete list of the properties that can be modeled.

Documentation

The documentation of the formats is located in the docs directory and is divided into:

  1. Install Tools: How to install the tooling necessary for validating your descriptions.
  2. Create Environment Description: How to write/generate an environment description complying with the format.
  3. Create Workload Description: How to write/generate a workload description complying with the format.
  4. Validate Descriptions: How to run the validation tools against your descriptions.
  5. Submit Files: How to submit an OSP to JSSPP.

Contributing

Build Environment

Run the following command in the root directory of the project:

$ pipenv install

This will install the required dependencies and setup the Python virtual environment.

Generate Documentation

Please make sure you have installed ruby and bundler. Run the following commands in the source directory:

$ bundler install
$ bundler exec jekyll build

The generated documentation can be found in site/.

License

The code is released under the MIT license. See the LICENSE.txt file.

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

jsspp-osp-1.0.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

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

jsspp_osp-1.0.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file jsspp-osp-1.0.0.tar.gz.

File metadata

  • Download URL: jsspp-osp-1.0.0.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for jsspp-osp-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6d5738941d0d6305d8c568f9e077271ad3c344691c5de1e44cd1a9122fdb2f96
MD5 c721bc7a15d76b0718fd9cb9ea5019d1
BLAKE2b-256 72b326e5b6a8d384d7a7f549eb1fb807b3c5eae20db8ee2ecf3646e8d46d4278

See more details on using hashes here.

File details

Details for the file jsspp_osp-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: jsspp_osp-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for jsspp_osp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 027bd511e074d2ce8d90a0a570a118803cf2040ecb2f626332d1f16629a1fdf9
MD5 30f280fa2be50405dbaa45701dc853e5
BLAKE2b-256 85fe81b48d3b03a63be69d7a9996645b40dabea9a2556290fc563d4a2e5f755e

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