# tf.config.list_logical_devices

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.14.0/tensorflow/python/framework/config.py#L458-L491) |

Return a list of logical devices created by runtime.

#### View aliases


**Main aliases**

[`tf.config.experimental.list_logical_devices`](https://www.tensorflow.org/api_docs/python/tf/config/list_logical_devices)
**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

[`tf.compat.v1.config.experimental.list_logical_devices`](https://www.tensorflow.org/api_docs/python/tf/config/list_logical_devices), [`tf.compat.v1.config.list_logical_devices`](https://www.tensorflow.org/api_docs/python/tf/config/list_logical_devices)

<br />

    tf.config.list_logical_devices(
        device_type=None
    )

Logical devices may correspond to physical devices or remote devices in the
cluster. Operations and tensors may be placed on these devices by using the
`name` of the [`tf.config.LogicalDevice`](https://www.tensorflow.org/versions/r2.14/api_docs/python/tf/config/LogicalDevice).

Calling [`tf.config.list_logical_devices`](https://www.tensorflow.org/versions/r2.14/api_docs/python/tf/config/list_logical_devices) triggers the runtime to configure any
[`tf.config.PhysicalDevice`](https://www.tensorflow.org/versions/r2.14/api_docs/python/tf/config/PhysicalDevice) visible to the runtime, thereby preventing
further configuration. To avoid runtime initialization, call
[`tf.config.list_physical_devices`](https://www.tensorflow.org/versions/r2.14/api_docs/python/tf/config/list_physical_devices) instead.

#### For example:

    logical_devices = tf.config.list_logical_devices('GPU')
    if len(logical_devices) > 0:
      # Allocate on GPU:0
      with tf.device(logical_devices[0].name):
        one = tf.constant(1)
      # Allocate on GPU:1
      with tf.device(logical_devices[1].name):
        two = tf.constant(2)

<br />

<br />

<br />

| ## Args ||
|---|---|
| `device_type` | (optional string) Only include devices matching this device type. For example "CPU" or "GPU". |

<br />

<br />

<br />

<br />

| ## Returns ||
|---|---|
| List of initialized `LogicalDevice`s ||

<br />