Specifies the device for ops created/executed in this context.
This function specifies the device to be used for ops created/executed in a particular context. Nested contexts will inherit and also create/execute their ops on the specified device. If a specific device is not required, consider not using this function so that a device can be automatically assigned. In general the use of this function is optional.
device_name can be fully specified, as in "/job:worker/task:1/device:cpu:0", or partially specified, containing only a subset of the "/"-separated fields. Any fields which are specified will override device annotations from outer scopes.
# ops created here have devices with /job:foo
# ops created here have the fully specified device above
# ops created here have the device '/job:foo/device:gpu:1'
| The device name to use in the context. |
| A context manager that specifies the default device to use for newly created ops. |
| If a function is passed in. |