ASTRA-sim APIs (1.0.0)

Download OpenAPI specification:

License: MIT

The ASTRA-sim API provides a standardized interface for submitting configurations, executing jobs, checking job status, and retrieving results.

Configuration

Uploads workload execution traces in a .zip file. The set_config endpoint must be called to validate the uploaded workloads and to configure additional parameters defined in the config schema, which is a part of the set_config request.

Request Body schema: application/octet-stream
required

The uploaded file is a ZIP archive that contains execution traces packaged together in ZIP format.

string <binary>

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "warnings": [
    ]
}

The set_config API accepts a configuration payload containing schemas for various settings, allowing users to create configuration using schema definitions. It validates the uploaded workloads from the upload_config API, then generates files from the configurations. This process effectively applies and activates the configuration on the server.

Request Body schema: application/json
required
object (Common.Configuration)

Holds the schemas that define ASTRA-sim configurations common to all backends, including workload, system, communicator group, logging, remote memory, and command parameters.

object (Network.Backend)

A choice of network backends of ASTRA-sim which will run the simulation.

object (Infragraph)

InfraGraph or infrastructure graph defines a model-driven, vendor-neutral, standard interface for capturing a system of systems suitable for use in co-designing AI/HPC solutions. This model allows for defining physical infrastructure as a logical system of systems using graph like terminology. In addition to defining a logical graph, an unlimited number of different physical characteristics can be associated with logical endpoints.

Responses

Request samples

Content type
application/json
{
  • "common_config": {
    },
  • "network_backend": {
    },
  • "infragraph": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "warnings": [
    ]
}

Downloads the current active configuration as a packaged ZIP archive containing all the workloads and generated configuration files.

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "kind": "validation",
  • "errors": [
    ]
}

Control

Retrieves the simulation status, which can be failed, completed, running, terminated, or inactive.

Responses

Response samples

Content type
application/json
{
  • "status": "running"
}

Sets the simulation state to either start or stop.

Request Body schema: application/json
required
choice
string
Enum: "start" "stop"

Represents a control interface that allows users to choose between starting or stopping ASTRA-sim simulation. Only one action — start or stop— can be performed at a time. Users must specify either the configuration to start a backend or the command to stop it, ensuring that these actions are mutually exclusive within a single operation.

object (Control.Start)

Specifies the operation to set control to a specific network backend, allowing the user to initiate an action on the selected backend.

Responses

Request samples

Content type
application/json
{
  • "choice": "start",
  • "start": {
    }
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "warnings": [
    ]
}

Result

List result files for a completed simulation job

Request Body schema: application/json
required

In the result API payload, the user can choose to provide either a filename or a metadata. When a metadata is provided, the server returns metadata about the generated result files. If a filename is specified, the corresponding file will be downloaded. Filenames can be obtained from the metadata returned by the server when using the metadata option.

choice
string
Enum: "metadata" "filename"

The type of result required: metadata or file.

filename
string

A single file metadata object describing filename which is associated with the result.

Responses

Request samples

Content type
application/json
{
  • "choice": "metadata",
  • "filename": "string"
}

Response samples

Content type
application/json
{
  • "code": 0,
  • "kind": "validation",
  • "errors": [
    ]
}

Capabilities

get_version

Responses

Response samples

Content type
application/json
{
  • "api_spec_version": "",
  • "sdk_version": "",
  • "app_version": ""
}