public static class **GpuDelegateFactory.Options**

|---|---|---|
| Known Direct Subclasses [GpuDelegate.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegate.Options) |---|---| | [GpuDelegate.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegate.Options) | *This class is deprecated. Use `https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options` instead.* | |||

Delegate options.

### Nested Classes

|---|---|---|---|
| enum | [GpuDelegateFactory.Options.GpuBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend) || Which GPU backend to select. |

### Constants

|---|---|---|
| int | [INFERENCE_PREFERENCE_FAST_SINGLE_ANSWER](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#INFERENCE_PREFERENCE_FAST_SINGLE_ANSWER) | Delegate will be used only once, therefore, bootstrap/init time should be taken into account. |
| int | [INFERENCE_PREFERENCE_SUSTAINED_SPEED](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#INFERENCE_PREFERENCE_SUSTAINED_SPEED) | Prefer maximizing the throughput. |

### Public Constructors

|---|---|
|   | [Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#Options())() |

### Public Methods

|---|---|
| boolean | [areQuantizedModelsAllowed](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#areQuantizedModelsAllowed())() |
| [GpuDelegateFactory.Options.GpuBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend) | [getForceBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#getForceBackend())() |
| int | [getInferencePreference](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#getInferencePreference())() |
| [String](https://developer.android.com/reference/java/lang/String.html) | [getModelToken](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#getModelToken())() |
| [String](https://developer.android.com/reference/java/lang/String.html) | [getSerializationDir](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#getSerializationDir())() |
| boolean | [isPrecisionLossAllowed](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#isPrecisionLossAllowed())() |
| [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options) | [setForceBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#setForceBackend(org.tensorflow.lite.gpu.GpuDelegateFactory.Options.GpuBackend))([GpuDelegateFactory.Options.GpuBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend) forceBackend) Sets the GPU Backend. |
| [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options) | [setInferencePreference](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#setInferencePreference(int))(int preference) Sets the inference preference for precision/compilation/runtime tradeoffs. |
| [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options) | [setPrecisionLossAllowed](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#setPrecisionLossAllowed(boolean))(boolean precisionLossAllowed) Sets whether precision loss is allowed. |
| [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options) | [setQuantizedModelsAllowed](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#setQuantizedModelsAllowed(boolean))(boolean quantizedModelsAllowed) Enables running quantized models with the delegate. |
| [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options) | [setSerializationParams](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options#setSerializationParams(java.lang.String,%20java.lang.String))([String](https://developer.android.com/reference/java/lang/String.html) serializationDir, [String](https://developer.android.com/reference/java/lang/String.html) modelToken) Enables serialization on the delegate. |

### Inherited Methods

From class java.lang.Object

|---|---|
| boolean | equals([Object](https://developer.android.com/reference/java/lang/Object.html) arg0) |
| final [Class](https://developer.android.com/reference/java/lang/Class.html)\<?\> | getClass() |
| int | hashCode() |
| final void | notify() |
| final void | notifyAll() |
| [String](https://developer.android.com/reference/java/lang/String.html) | toString() |
| final void | wait(long arg0, int arg1) |
| final void | wait(long arg0) |
| final void | wait() |

## Constants

#### public static final int
**INFERENCE_PREFERENCE_FAST_SINGLE_ANSWER**

Delegate will be used only once, therefore, bootstrap/init time should be taken into account.
Constant Value: 0

#### public static final int
**INFERENCE_PREFERENCE_SUSTAINED_SPEED**

Prefer maximizing the throughput. Same delegate will be used repeatedly on multiple inputs.
Constant Value: 1

## Public Constructors

#### public
**Options**
()

<br />

## Public Methods

#### public boolean
**areQuantizedModelsAllowed**
()

<br />

#### public [GpuDelegateFactory.Options.GpuBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend)
**getForceBackend**
()

<br />

#### public int
**getInferencePreference**
()

<br />

#### public [String](https://developer.android.com/reference/java/lang/String.html)
**getModelToken**
()

<br />

#### public [String](https://developer.android.com/reference/java/lang/String.html)
**getSerializationDir**
()

<br />

#### public boolean
**isPrecisionLossAllowed**
()

<br />

#### public [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options)
**setForceBackend**
([GpuDelegateFactory.Options.GpuBackend](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend) forceBackend)

Sets the GPU Backend.

##### Parameters

| forceBackend |   |
|---|---|

#### public [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options)
**setInferencePreference**
(int preference)

Sets the inference preference for precision/compilation/runtime tradeoffs.

##### Parameters

| preference | One of \`INFERENCE_PREFERENCE_FAST_SINGLE_ANSWER\` (default), \`INFERENCE_PREFERENCE_SUSTAINED_SPEED\`. |
|---|---|

#### public [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options)
**setPrecisionLossAllowed**
(boolean precisionLossAllowed)

Sets whether precision loss is allowed.

##### Parameters

| precisionLossAllowed | When \`true\` (default), the GPU may quantify tensors, downcast values, process in FP16. When \`false\`, computations are carried out in 32-bit floating point. |
|---|---|

#### public [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options)
**setQuantizedModelsAllowed**
(boolean quantizedModelsAllowed)

Enables running quantized models with the delegate.

WARNING: This is an experimental API and subject to change.

<br />

##### Parameters

| quantizedModelsAllowed | When `true` (default), the GPU may run quantized models. |
|---|---|

#### public [GpuDelegateFactory.Options](https://developers.google.com/edge/api/tflite/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options)
**setSerializationParams**
([String](https://developer.android.com/reference/java/lang/String.html) serializationDir, [String](https://developer.android.com/reference/java/lang/String.html) modelToken)

Enables serialization on the delegate. Note non-null `serializationDir` and `modelToken` are required for serialization.

WARNING: This is an experimental API and subject to change.

<br />

##### Parameters

| serializationDir | The directory to use for storing data. Caller is responsible to ensure the model is not stored in a public directory. It's recommended to use `https://developer.android.com/reference/android/content/Context.html#getCodeCacheDir()` to provide a private location for the application on Android. |
| modelToken | The token to be used to identify the model. Caller is responsible to ensure the token is unique to the model graph and data. |
|---|---|