Type OneDeviceStrategy
Namespace tensorflow.distribute
Parent Strategy
Interfaces IOneDeviceStrategy
A distribution strategy for running on a single device. Using this strategy will place any variables created in its scope on the
specified device. Input distributed through this strategy will be
prefetched to the specified device. Moreover, any functions called via
`strategy.experimental_run_v2` will also be placed on the specified device
as well. Typical usage of this strategy could be testing your code with the
tf.distribute.Strategy API before switching to other strategies which
actually distribute to multiple devices/machines. For example:
```
tf.enable_eager_execution()
strategy = tf.distribute.OneDeviceStrategy(device="/gpu:0") with strategy.scope():
v = tf.Variable(1.0)
print(v.device) # /job:localhost/replica:0/task:0/device:GPU:0 def step_fn(x):
return x * 2 result = 0
for i in range(10):
result += strategy.experimental_run_v2(step_fn, args=(i,))
print(result) # 90
```