---
title: XLAPrecision
description: Plugin for training with XLA.
canonical: >-
  https://lightning.ai/docs/fabric/stable/full-api-reference/api/generated/lightning.fabric.plugins.precision.XLAPrecision
---
# XLAPrecision {#xlaprecision}

### `class lightning.fabric.plugins.precision.XLAPrecision(precision)` {#lightning.fabric.plugins.precision.XLAPrecision}

Bases: [`Precision`](/docs/fabric/2.6.6/full-api-reference/api/generated/lightning.fabric.plugins.precision.Precision.md#lightning.fabric.plugins.precision.Precision "lightning.fabric.plugins.precision.precision.Precision")

Plugin for training with XLA.

Parameters:

**precision** ([`Literal`](https://docs.python.org/3/library/typing.html#typing.Literal "(in Python v3.15)")\[`'32-true'`, `'16-true'`, `'bf16-true'`\]) – Full precision (32-true) or half precision (16-true, bf16-true).

Raises:

[**ValueError**](https://docs.python.org/3/builtins/exceptions.html#ValueError "(in Python v3.15)") – If unsupported `precision` is provided.

#### `optimizer_step(optimizer, **kwargs)` {#lightning.fabric.plugins.precision.XLAPrecision.optimizer_step}

Hook to run the optimizer step.

Return type:

[`Any`](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.15)")

#### `teardown()` {#lightning.fabric.plugins.precision.XLAPrecision.teardown}

This method is called to teardown the training process.

It is the right place to release memory and free other resources.

Return type:

[`None`](https://docs.python.org/3/builtins/constants.html#None "(in Python v3.15)")

---

**Navigation**

- Parent: [Generated](/docs/fabric/2.6.6/full-api-reference/api/generated.md)
