# GpuDevice

`import { GpuDevice } from "destack:gpu/binding";`

GPU device.

```ds title="GpuDevice"
export struct GpuDevice {
    backend: GpuBackend;
    enabledFeatures: [GpuFeatureId];
    effectiveLimits: GpuAdapterLimits;
    queueCount: uint32;
    hasTimelineSync: boolean;
    hasTimestampQueries: boolean;
    hasPushConstants: boolean;
}
```

[language/library/src/gpu/binding/device.ds:86:101](https://github.com/destack-sh/destack/blob/main/language/library/src/gpu/binding/device.ds#L86-L101)

## Members

### `backend: GpuBackend`

Chosen backend for this device.

### `enabledFeatures: [GpuFeatureId]`

Feature identifiers enabled on this device.

### `effectiveLimits: GpuAdapterLimits`

Effective device limits.

### `queueCount: uint32`

Default queue count visible to the runtime.

### `hasTimelineSync: boolean`

Whether timeline synchronization is available.

### `hasTimestampQueries: boolean`

Whether timestamp queries are available.

### `hasPushConstants: boolean`

Whether push constants are available.
