RepoLightning AILightning AIpublished Feb 17, 2023seen 5d

Lightning-AI/lightning-Habana

Python

Open original ↗

Captured source

source ↗
published Feb 17, 2023seen 5dcaptured 15hhttp 200method plain

Lightning-AI/lightning-Habana

Description: Lightning support for Intel Habana accelerators.

Language: Python

License: Apache-2.0

Stars: 25

Forks: 8

Open issues: 9

Created: 2023-02-17T03:52:45Z

Pushed: 2025-08-01T11:08:04Z

Default branch: main

Fork: no

Archived: yes

README:

Lightning ⚡ Intel Habana

![PyPI Status](https://badge.fury.io/py/lightning-habana) ![Deploy Docs](https://lightning-ai.github.io/lightning-Habana/)

![General checks](https://github.com/Lightning-AI/lightning-habana/actions/workflows/ci-checks.yml) ![Build Status](https://dev.azure.com/Lightning-AI/compatibility/_build/latest?definitionId=45&branchName=main) ![pre-commit.ci status](https://results.pre-commit.ci/latest/github/Lightning-AI/lightning-Habana/main)

Intel® Gaudi® AI Processor (HPU) training processors are built on a heterogeneous architecture with a cluster of fully programmable Tensor Processing Cores (TPC) along with its associated development tools and libraries, and a configurable Matrix Math engine.

The TPC core is a VLIW SIMD processor with an instruction set and hardware tailored to serve training workloads efficiently. The Gaudi memory architecture includes on-die SRAM and local memories in each TPC and, Gaudi is the first DL training processor that has integrated RDMA over Converged Ethernet (RoCE v2) engines on-chip.

On the software side, the PyTorch Habana bridge interfaces between the framework and SynapseAI software stack to enable the execution of deep learning models on the Habana Gaudi device.

Gaudi provides a significant cost-effective benefit, allowing you to engage in more deep learning training while minimizing expenses.

For more information, check out Gaudi Architecture and Gaudi Developer Docs.

______________________________________________________________________

Installing Lighting Habana

To install Lightning Habana, run the following command:

pip install -U lightning lightning-habana

______________________________________________________________________

NOTE

Ensure either of lightning or pytorch-lightning is used when working with the plugin. Mixing strategies, plugins etc from both packages is not yet validated.

______________________________________________________________________

Using PyTorch Lighting with HPU

To enable PyTorch Lightning with HPU accelerator, provide accelerator=HPUAccelerator() parameter to the Trainer class.

from lightning import Trainer
from lightning_habana.pytorch.accelerator import HPUAccelerator

# Run on one HPU.
trainer = Trainer(accelerator=HPUAccelerator(), devices=1)
# Run on multiple HPUs.
trainer = Trainer(accelerator=HPUAccelerator(), devices=8)
# Choose the number of devices automatically.
trainer = Trainer(accelerator=HPUAccelerator(), devices="auto")

The devices=1 parameter with HPUs enables the Habana accelerator for single card training using SingleHPUStrategy.

The devices>1 parameter with HPUs enables the Habana accelerator for distributed training. It uses HPUDDPStrategy which is based on DDP strategy with the integration of Habana’s collective communication library (HCCL) to support scale-up within a node and scale-out across multiple nodes.

Support Matrix

| SynapseAI | 1.18.0 | | --------------------- | --------------------------------------------------- | | PyTorch | 2.4.0 | | (PyTorch) Lightning\* | 2.4.x | | Lightning Habana | 1.7.0 | | DeepSpeed\*\* | Forked from v0.14.4 of the official DeepSpeed repo. |

\* covers both packages `lightning` and `pytorch-lightning`

For more information, check out HPU Support Matrix