Skip to main content

PyPI PyPI - Python Version License: MIT Documentation GitHub issues GitHub stars PyPI - Downloads CI/CD GitHub last commit GitHub contributors GitHub repo size GitHub Release

InfraGraph (INFRAstructure GRAPH)

InfraGraph defines a model-driven, vendor-neutral API for capturing a system of systems suitable for use in co-designing AI/HPC solutions.

The model and API allows for defining physical infrastructure using a standardized graph like terminology.

In addition to the base graph definition, user provided annotations can extend the graph allowing for an unlimited number of different physical and/or logical characteristics/view.

Additional information such as background, schema and examples can be found in the online documentation.

Using InfraGraph CLI

InfraGraph ships with a CLI that lets you convert existing system descriptions into InfraGraph format and visualize infrastructure topologies.

Install using pip:

pip install infragraph

Or clone the repo and run make clean && make install, or download the .whl from releases and install it with pip install infragraph-<version>.whl.

Convert system formats to InfraGraph — translate output from tools like lstopo directly into an InfraGraph YAML/JSON definition:

# Convert lstopo XML output to an InfraGraph YAML file
infragraph translate lstopo -i lstopo_output.xml -o my_device.yaml --dump yaml

Visualize infrastructure topologies — generate an interactive, drillable HTML visualization from any InfraGraph definition:

# Generate a visualization with host and switch hints
infragraph visualize -i my_infrastructure.yaml -o ./viz --hosts "dgx_a100" --switches "leaf_switch,spine_switch"
# Then open ./viz/index.html in a browser

The visualizer produces a multi-level view: a top-level graph of instances and inter-device connectivity, with drill-down into each device's internal components (xPUs, NICs, CPUs, memory, PCIe topology, etc.).

Note: More converters and tools are work-in-progress. See the Ecosystem documentation for the full roadmap and we invite contributions from the community.

Chakra + InfraGraph Ecosystem

Chakra + InfraGraph Ecosystem

MLCommons Chakra captures AI workload details as Execution Traces — graphs of operators, tensors, dependencies, and timing. InfraGraph complements Chakra by representing the underlying infrastructure — hosts, NICs, xPUs/accelerators, interconnects, and topologies. Together, Chakra + InfraGraph let you pair workload traces with infrastructure blueprints to analyze current systems and co-design future ones, while safely sharing artifacts across teams and partners.

For more details, see the Ecosystem documentation.

Versioning Rules

Infragraph follows a structured versioning scheme to maintain consistency across releases and ensure clear dependency management. Each version reflects compatibility, schema evolution, and API stability expectations.

For versioning rules, refer this readme.

Contributing

Contributions can be made in the following ways:

Download files

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

Source Distribution

infragraph-2.2.0.tar.gz (289.6 kB view details)

Uploaded Source

Built Distribution

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

infragraph-2.2.0-py3-none-any.whl (325.3 kB view details)

Uploaded Python 3

File details

Details for the file infragraph-2.2.0.tar.gz.

File metadata

  • Download URL: infragraph-2.2.0.tar.gz
  • Upload date:
  • Size: 289.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for infragraph-2.2.0.tar.gz
Algorithm Hash digest
SHA256 4ea40a8d3834aa65668fba4365e8646c836a4b7ccacbd46b86e02c2d7e0b482a
MD5 fec015b5c4a73ceb86bed17f8b41a0c3
BLAKE2b-256 2fb951ecc0b1e61002615b6f4b32423d96d4bea4c0f0ef8e480d7ad44cb3df46

See more details on using hashes here.

File details

Details for the file infragraph-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: infragraph-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 325.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for infragraph-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a6fa704abaa197aad0fa19c05d5138ffa58388c0fd95b7fb459421431fb8a6e
MD5 f713cdca354daa124c98533e52b44bcf
BLAKE2b-256 b0885099e3cbb8a74292c0050a1f0eb05ba401fa3175be55f3ead0ee2a48497f

See more details on using hashes here.

Release history Release notifications | RSS feed

3.0.1

2 files

3.0.0

2 files

2.5.0

2 files

2.4.0

2 files

2.3.0

2 files

This release

2.2.0 This release

2 files

2.1.0

2 files

2.0.0

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.9.0

2 files

0.8.0

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.1

2 files

0.5.0

2 files

0.4.6

2 files

0.4.5

2 files

0.4.4

2 files

0.4.1

2 files

0.4.0

2 files

0.3.0

2 files

Supported by

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