Session configuration parameters. The system picks appropriate values for fields that are not set.
tensorflow.ConfigProto
Public Methods
ConfigProto.Builder |
addAllDeviceFilters(Iterable<String> values)
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Builder |
addAllSessionInterOpThreadPool(Iterable<? extends ThreadPoolOptionProto> values)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
addDeviceFilters(String value)
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Builder |
addDeviceFiltersBytes(com.google.protobuf.ByteString value)
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Builder |
addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
|
ConfigProto.Builder |
addSessionInterOpThreadPool(ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
addSessionInterOpThreadPool(int index, ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
addSessionInterOpThreadPool(ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
addSessionInterOpThreadPool(int index, ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. |
ThreadPoolOptionProto.Builder |
addSessionInterOpThreadPoolBuilder(int index)
This option is experimental - it may be replaced with a different mechanism in the future. |
ThreadPoolOptionProto.Builder |
addSessionInterOpThreadPoolBuilder()
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto |
build()
|
ConfigProto | |
ConfigProto.Builder |
clear()
|
ConfigProto.Builder |
clearAllowSoftPlacement()
Whether soft placement is allowed. |
ConfigProto.Builder |
clearClusterDef()
Optional list of all workers to use in this session. |
ConfigProto.Builder | |
ConfigProto.Builder |
clearDeviceFilters()
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Builder |
clearExperimental()
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.Builder |
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
|
ConfigProto.Builder |
clearGpuOptions()
Options that apply to all GPUs. |
ConfigProto.Builder |
clearGraphOptions()
Options that apply to all graphs. |
ConfigProto.Builder |
clearInterOpParallelismThreads()
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. |
ConfigProto.Builder |
clearIntraOpParallelismThreads()
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. |
ConfigProto.Builder |
clearIsolateSessionState()
If true, any resources such as Variables used in the session will not be shared with other sessions. |
ConfigProto.Builder |
clearLogDevicePlacement()
Whether device placements should be logged. |
ConfigProto.Builder |
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
|
ConfigProto.Builder |
clearOperationTimeoutInMs()
Global timeout for all blocking operations in this session. |
ConfigProto.Builder |
clearPlacementPeriod()
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically). |
ConfigProto.Builder |
clearRpcOptions()
Options that apply when this session uses the distributed runtime. |
ConfigProto.Builder |
clearSessionInterOpThreadPool()
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
clearShareClusterDevicesInSession()
When true, WorkerSessions are created with device attributes from the full cluster. |
ConfigProto.Builder |
clearUsePerSessionThreads()
If true, use a new set of threads for this session rather than the global pool of threads. |
ConfigProto.Builder |
clone()
|
boolean |
containsDeviceCount(String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
boolean |
getAllowSoftPlacement()
Whether soft placement is allowed. |
ClusterDef |
getClusterDef()
Optional list of all workers to use in this session. |
ClusterDef.Builder |
getClusterDefBuilder()
Optional list of all workers to use in this session. |
ClusterDefOrBuilder |
getClusterDefOrBuilder()
Optional list of all workers to use in this session. |
ConfigProto | |
final static com.google.protobuf.Descriptors.Descriptor | |
com.google.protobuf.Descriptors.Descriptor | |
Map<String, Integer> |
getDeviceCount()
Use
getDeviceCountMap() instead. |
int |
getDeviceCountCount()
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
Map<String, Integer> |
getDeviceCountMap()
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
int |
getDeviceCountOrDefault(String key, int defaultValue)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
int |
getDeviceCountOrThrow(String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
String |
getDeviceFilters(int index)
When any filters are present sessions will ignore all devices which do not match the filters. |
com.google.protobuf.ByteString |
getDeviceFiltersBytes(int index)
When any filters are present sessions will ignore all devices which do not match the filters. |
int |
getDeviceFiltersCount()
When any filters are present sessions will ignore all devices which do not match the filters. |
com.google.protobuf.ProtocolStringList |
getDeviceFiltersList()
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Experimental |
getExperimental()
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.Experimental.Builder |
getExperimentalBuilder()
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.ExperimentalOrBuilder |
getExperimentalOrBuilder()
.tensorflow.ConfigProto.Experimental experimental = 16;
|
GPUOptions |
getGpuOptions()
Options that apply to all GPUs. |
GPUOptions.Builder |
getGpuOptionsBuilder()
Options that apply to all GPUs. |
GPUOptionsOrBuilder |
getGpuOptionsOrBuilder()
Options that apply to all GPUs. |
GraphOptions |
getGraphOptions()
Options that apply to all graphs. |
GraphOptions.Builder |
getGraphOptionsBuilder()
Options that apply to all graphs. |
GraphOptionsOrBuilder |
getGraphOptionsOrBuilder()
Options that apply to all graphs. |
int |
getInterOpParallelismThreads()
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. |
int |
getIntraOpParallelismThreads()
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. |
boolean |
getIsolateSessionState()
If true, any resources such as Variables used in the session will not be shared with other sessions. |
boolean |
getLogDevicePlacement()
Whether device placements should be logged. |
Map<String, Integer> |
getMutableDeviceCount()
Use alternate mutation accessors instead.
|
long |
getOperationTimeoutInMs()
Global timeout for all blocking operations in this session. |
int |
getPlacementPeriod()
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically). |
RPCOptions |
getRpcOptions()
Options that apply when this session uses the distributed runtime. |
RPCOptions.Builder |
getRpcOptionsBuilder()
Options that apply when this session uses the distributed runtime. |
RPCOptionsOrBuilder |
getRpcOptionsOrBuilder()
Options that apply when this session uses the distributed runtime. |
ThreadPoolOptionProto |
getSessionInterOpThreadPool(int index)
This option is experimental - it may be replaced with a different mechanism in the future. |
ThreadPoolOptionProto.Builder |
getSessionInterOpThreadPoolBuilder(int index)
This option is experimental - it may be replaced with a different mechanism in the future. |
List<ThreadPoolOptionProto.Builder> |
getSessionInterOpThreadPoolBuilderList()
This option is experimental - it may be replaced with a different mechanism in the future. |
int |
getSessionInterOpThreadPoolCount()
This option is experimental - it may be replaced with a different mechanism in the future. |
List<ThreadPoolOptionProto> |
getSessionInterOpThreadPoolList()
This option is experimental - it may be replaced with a different mechanism in the future. |
ThreadPoolOptionProtoOrBuilder |
getSessionInterOpThreadPoolOrBuilder(int index)
This option is experimental - it may be replaced with a different mechanism in the future. |
List<? extends ThreadPoolOptionProtoOrBuilder> |
getSessionInterOpThreadPoolOrBuilderList()
This option is experimental - it may be replaced with a different mechanism in the future. |
boolean |
getShareClusterDevicesInSession()
When true, WorkerSessions are created with device attributes from the full cluster. |
boolean |
getUsePerSessionThreads()
If true, use a new set of threads for this session rather than the global pool of threads. |
boolean |
hasClusterDef()
Optional list of all workers to use in this session. |
boolean |
hasExperimental()
.tensorflow.ConfigProto.Experimental experimental = 16;
|
boolean |
hasGpuOptions()
Options that apply to all GPUs. |
boolean |
hasGraphOptions()
Options that apply to all graphs. |
boolean |
hasRpcOptions()
Options that apply when this session uses the distributed runtime. |
final boolean | |
ConfigProto.Builder | |
ConfigProto.Builder |
mergeExperimental(ConfigProto.Experimental value)
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.Builder |
mergeFrom(com.google.protobuf.Message other)
|
ConfigProto.Builder |
mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
ConfigProto.Builder | |
ConfigProto.Builder | |
ConfigProto.Builder |
mergeRpcOptions(RPCOptions value)
Options that apply when this session uses the distributed runtime. |
final ConfigProto.Builder |
mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
|
ConfigProto.Builder |
putAllDeviceCount(Map<String, Integer> values)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
ConfigProto.Builder |
putDeviceCount(String key, int value)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
ConfigProto.Builder |
removeDeviceCount(String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. |
ConfigProto.Builder |
removeSessionInterOpThreadPool(int index)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
setAllowSoftPlacement(boolean value)
Whether soft placement is allowed. |
ConfigProto.Builder |
setClusterDef(ClusterDef.Builder builderForValue)
Optional list of all workers to use in this session. |
ConfigProto.Builder | |
ConfigProto.Builder |
setDeviceFilters(int index, String value)
When any filters are present sessions will ignore all devices which do not match the filters. |
ConfigProto.Builder |
setExperimental(ConfigProto.Experimental value)
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.Builder |
setExperimental(ConfigProto.Experimental.Builder builderForValue)
.tensorflow.ConfigProto.Experimental experimental = 16;
|
ConfigProto.Builder |
setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
|
ConfigProto.Builder | |
ConfigProto.Builder | |
ConfigProto.Builder | |
ConfigProto.Builder | |
ConfigProto.Builder |
setInterOpParallelismThreads(int value)
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. |
ConfigProto.Builder |
setIntraOpParallelismThreads(int value)
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. |
ConfigProto.Builder |
setIsolateSessionState(boolean value)
If true, any resources such as Variables used in the session will not be shared with other sessions. |
ConfigProto.Builder |
setLogDevicePlacement(boolean value)
Whether device placements should be logged. |
ConfigProto.Builder |
setOperationTimeoutInMs(long value)
Global timeout for all blocking operations in this session. |
ConfigProto.Builder |
setPlacementPeriod(int value)
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically). |
ConfigProto.Builder |
setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
|
ConfigProto.Builder | |
ConfigProto.Builder |
setRpcOptions(RPCOptions.Builder builderForValue)
Options that apply when this session uses the distributed runtime. |
ConfigProto.Builder |
setSessionInterOpThreadPool(int index, ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
setSessionInterOpThreadPool(int index, ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. |
ConfigProto.Builder |
setShareClusterDevicesInSession(boolean value)
When true, WorkerSessions are created with device attributes from the full cluster. |
final ConfigProto.Builder |
setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
|
ConfigProto.Builder |
setUsePerSessionThreads(boolean value)
If true, use a new set of threads for this session rather than the global pool of threads. |
Inherited Methods
Public Methods
public ConfigProto.Builder addAllDeviceFilters (Iterable<String> values)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Builder addAllSessionInterOpThreadPool (Iterable<? extends ThreadPoolOptionProto> values)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder addDeviceFilters (String value)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Builder addDeviceFiltersBytes (com.google.protobuf.ByteString value)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Builder addRepeatedField (com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
public ConfigProto.Builder addSessionInterOpThreadPool (ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder addSessionInterOpThreadPool (int index, ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder addSessionInterOpThreadPool (ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder addSessionInterOpThreadPool (int index, ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ThreadPoolOptionProto.Builder addSessionInterOpThreadPoolBuilder (int index)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ThreadPoolOptionProto.Builder addSessionInterOpThreadPoolBuilder ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder clearAllowSoftPlacement ()
Whether soft placement is allowed. If allow_soft_placement is true, an op will be placed on CPU if 1. there's no GPU implementation for the OP or 2. no GPU devices are known or registered or 3. need to co-locate with reftype input(s) which are from CPU.
bool allow_soft_placement = 7;
public ConfigProto.Builder clearClusterDef ()
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ConfigProto.Builder clearDeviceFilters ()
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Builder clearExperimental ()
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.Builder clearGpuOptions ()
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public ConfigProto.Builder clearGraphOptions ()
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public ConfigProto.Builder clearInterOpParallelismThreads ()
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. 0 means the system picks an appropriate number. Negative means all operations are performed in caller's thread. Note that the first Session created in the process sets the number of threads for all future sessions unless use_per_session_threads is true or session_inter_op_thread_pool is configured.
int32 inter_op_parallelism_threads = 5;
public ConfigProto.Builder clearIntraOpParallelismThreads ()
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. 0 means the system picks an appropriate number. If you create an ordinary session, e.g., from Python or C++, then there is exactly one intra op thread pool per process. The first session created determines the number of threads in this pool. All subsequent sessions reuse/share this one global pool. There are notable exceptions to the default behavior describe above: 1. There is an environment variable for overriding this thread pool, named TF_OVERRIDE_GLOBAL_THREADPOOL. 2. When connecting to a server, such as a remote `tf.train.Server` instance, then this option will be ignored altogether.
int32 intra_op_parallelism_threads = 2;
public ConfigProto.Builder clearIsolateSessionState ()
If true, any resources such as Variables used in the session will not be shared with other sessions. However, when clusterspec propagation is enabled, this field is ignored and sessions are always isolated.
bool isolate_session_state = 15;
public ConfigProto.Builder clearLogDevicePlacement ()
Whether device placements should be logged.
bool log_device_placement = 8;
public ConfigProto.Builder clearOperationTimeoutInMs ()
Global timeout for all blocking operations in this session. If non-zero, and not overridden on a per-operation basis, this value will be used as the deadline for all blocking operations.
int64 operation_timeout_in_ms = 11;
public ConfigProto.Builder clearPlacementPeriod ()
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically).
int32 placement_period = 3;
public ConfigProto.Builder clearRpcOptions ()
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public ConfigProto.Builder clearSessionInterOpThreadPool ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder clearShareClusterDevicesInSession ()
When true, WorkerSessions are created with device attributes from the full cluster. This is helpful when a worker wants to partition a graph (for example during a PartitionedCallOp).
bool share_cluster_devices_in_session = 17;
public ConfigProto.Builder clearUsePerSessionThreads ()
If true, use a new set of threads for this session rather than the global pool of threads. Only supported by direct sessions. If false, use the global threads created by the first session, or the per-session thread pools configured by session_inter_op_thread_pool. This option is deprecated. The same effect can be achieved by setting session_inter_op_thread_pool to have one element, whose num_threads equals inter_op_parallelism_threads.
bool use_per_session_threads = 9;
public boolean containsDeviceCount (String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public boolean getAllowSoftPlacement ()
Whether soft placement is allowed. If allow_soft_placement is true, an op will be placed on CPU if 1. there's no GPU implementation for the OP or 2. no GPU devices are known or registered or 3. need to co-locate with reftype input(s) which are from CPU.
bool allow_soft_placement = 7;
public ClusterDef getClusterDef ()
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ClusterDef.Builder getClusterDefBuilder ()
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ClusterDefOrBuilder getClusterDefOrBuilder ()
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor ()
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType ()
public int getDeviceCountCount ()
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public Map<String, Integer> getDeviceCountMap ()
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public int getDeviceCountOrDefault (String key, int defaultValue)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public int getDeviceCountOrThrow (String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public String getDeviceFilters (int index)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public com.google.protobuf.ByteString getDeviceFiltersBytes (int index)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public int getDeviceFiltersCount ()
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public com.google.protobuf.ProtocolStringList getDeviceFiltersList ()
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Experimental getExperimental ()
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.Experimental.Builder getExperimentalBuilder ()
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.ExperimentalOrBuilder getExperimentalOrBuilder ()
.tensorflow.ConfigProto.Experimental experimental = 16;
public GPUOptions getGpuOptions ()
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public GPUOptions.Builder getGpuOptionsBuilder ()
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public GPUOptionsOrBuilder getGpuOptionsOrBuilder ()
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public GraphOptions getGraphOptions ()
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public GraphOptions.Builder getGraphOptionsBuilder ()
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public GraphOptionsOrBuilder getGraphOptionsOrBuilder ()
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public int getInterOpParallelismThreads ()
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. 0 means the system picks an appropriate number. Negative means all operations are performed in caller's thread. Note that the first Session created in the process sets the number of threads for all future sessions unless use_per_session_threads is true or session_inter_op_thread_pool is configured.
int32 inter_op_parallelism_threads = 5;
public int getIntraOpParallelismThreads ()
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. 0 means the system picks an appropriate number. If you create an ordinary session, e.g., from Python or C++, then there is exactly one intra op thread pool per process. The first session created determines the number of threads in this pool. All subsequent sessions reuse/share this one global pool. There are notable exceptions to the default behavior describe above: 1. There is an environment variable for overriding this thread pool, named TF_OVERRIDE_GLOBAL_THREADPOOL. 2. When connecting to a server, such as a remote `tf.train.Server` instance, then this option will be ignored altogether.
int32 intra_op_parallelism_threads = 2;
public boolean getIsolateSessionState ()
If true, any resources such as Variables used in the session will not be shared with other sessions. However, when clusterspec propagation is enabled, this field is ignored and sessions are always isolated.
bool isolate_session_state = 15;
public boolean getLogDevicePlacement ()
Whether device placements should be logged.
bool log_device_placement = 8;
public Map<String, Integer> getMutableDeviceCount ()
Use alternate mutation accessors instead.
public long getOperationTimeoutInMs ()
Global timeout for all blocking operations in this session. If non-zero, and not overridden on a per-operation basis, this value will be used as the deadline for all blocking operations.
int64 operation_timeout_in_ms = 11;
public int getPlacementPeriod ()
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically).
int32 placement_period = 3;
public RPCOptions getRpcOptions ()
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public RPCOptions.Builder getRpcOptionsBuilder ()
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public RPCOptionsOrBuilder getRpcOptionsOrBuilder ()
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public ThreadPoolOptionProto getSessionInterOpThreadPool (int index)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ThreadPoolOptionProto.Builder getSessionInterOpThreadPoolBuilder (int index)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public List<ThreadPoolOptionProto.Builder> getSessionInterOpThreadPoolBuilderList ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public int getSessionInterOpThreadPoolCount ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public List<ThreadPoolOptionProto> getSessionInterOpThreadPoolList ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ThreadPoolOptionProtoOrBuilder getSessionInterOpThreadPoolOrBuilder (int index)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public List<? extends ThreadPoolOptionProtoOrBuilder> getSessionInterOpThreadPoolOrBuilderList ()
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public boolean getShareClusterDevicesInSession ()
When true, WorkerSessions are created with device attributes from the full cluster. This is helpful when a worker wants to partition a graph (for example during a PartitionedCallOp).
bool share_cluster_devices_in_session = 17;
public boolean getUsePerSessionThreads ()
If true, use a new set of threads for this session rather than the global pool of threads. Only supported by direct sessions. If false, use the global threads created by the first session, or the per-session thread pools configured by session_inter_op_thread_pool. This option is deprecated. The same effect can be achieved by setting session_inter_op_thread_pool to have one element, whose num_threads equals inter_op_parallelism_threads.
bool use_per_session_threads = 9;
public boolean hasClusterDef ()
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public boolean hasExperimental ()
.tensorflow.ConfigProto.Experimental experimental = 16;
public boolean hasGpuOptions ()
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public boolean hasGraphOptions ()
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public boolean hasRpcOptions ()
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public final boolean isInitialized ()
public ConfigProto.Builder mergeClusterDef (ClusterDef value)
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ConfigProto.Builder mergeExperimental (ConfigProto.Experimental value)
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.Builder mergeFrom (com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
Throws
IOException |
---|
public ConfigProto.Builder mergeGpuOptions (GPUOptions value)
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public ConfigProto.Builder mergeGraphOptions (GraphOptions value)
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public ConfigProto.Builder mergeRpcOptions (RPCOptions value)
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public final ConfigProto.Builder mergeUnknownFields (com.google.protobuf.UnknownFieldSet unknownFields)
public ConfigProto.Builder putAllDeviceCount (Map<String, Integer> values)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public ConfigProto.Builder putDeviceCount (String key, int value)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public ConfigProto.Builder removeDeviceCount (String key)
Map from device type name (e.g., "CPU" or "GPU" ) to maximum number of devices of that type to use. If a particular device type is not found in the map, the system picks an appropriate number.
map<string, int32> device_count = 1;
public ConfigProto.Builder removeSessionInterOpThreadPool (int index)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder setAllowSoftPlacement (boolean value)
Whether soft placement is allowed. If allow_soft_placement is true, an op will be placed on CPU if 1. there's no GPU implementation for the OP or 2. no GPU devices are known or registered or 3. need to co-locate with reftype input(s) which are from CPU.
bool allow_soft_placement = 7;
public ConfigProto.Builder setClusterDef (ClusterDef.Builder builderForValue)
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ConfigProto.Builder setClusterDef (ClusterDef value)
Optional list of all workers to use in this session.
.tensorflow.ClusterDef cluster_def = 14;
public ConfigProto.Builder setDeviceFilters (int index, String value)
When any filters are present sessions will ignore all devices which do not match the filters. Each filter can be partially specified, e.g. "/job:ps" "/job:worker/replica:3", etc.
repeated string device_filters = 4;
public ConfigProto.Builder setExperimental (ConfigProto.Experimental value)
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.Builder setExperimental (ConfigProto.Experimental.Builder builderForValue)
.tensorflow.ConfigProto.Experimental experimental = 16;
public ConfigProto.Builder setField (com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
public ConfigProto.Builder setGpuOptions (GPUOptions.Builder builderForValue)
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public ConfigProto.Builder setGpuOptions (GPUOptions value)
Options that apply to all GPUs.
.tensorflow.GPUOptions gpu_options = 6;
public ConfigProto.Builder setGraphOptions (GraphOptions.Builder builderForValue)
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public ConfigProto.Builder setGraphOptions (GraphOptions value)
Options that apply to all graphs.
.tensorflow.GraphOptions graph_options = 10;
public ConfigProto.Builder setInterOpParallelismThreads (int value)
Nodes that perform blocking operations are enqueued on a pool of inter_op_parallelism_threads available in each process. 0 means the system picks an appropriate number. Negative means all operations are performed in caller's thread. Note that the first Session created in the process sets the number of threads for all future sessions unless use_per_session_threads is true or session_inter_op_thread_pool is configured.
int32 inter_op_parallelism_threads = 5;
public ConfigProto.Builder setIntraOpParallelismThreads (int value)
The execution of an individual op (for some op types) can be parallelized on a pool of intra_op_parallelism_threads. 0 means the system picks an appropriate number. If you create an ordinary session, e.g., from Python or C++, then there is exactly one intra op thread pool per process. The first session created determines the number of threads in this pool. All subsequent sessions reuse/share this one global pool. There are notable exceptions to the default behavior describe above: 1. There is an environment variable for overriding this thread pool, named TF_OVERRIDE_GLOBAL_THREADPOOL. 2. When connecting to a server, such as a remote `tf.train.Server` instance, then this option will be ignored altogether.
int32 intra_op_parallelism_threads = 2;
public ConfigProto.Builder setIsolateSessionState (boolean value)
If true, any resources such as Variables used in the session will not be shared with other sessions. However, when clusterspec propagation is enabled, this field is ignored and sessions are always isolated.
bool isolate_session_state = 15;
public ConfigProto.Builder setLogDevicePlacement (boolean value)
Whether device placements should be logged.
bool log_device_placement = 8;
public ConfigProto.Builder setOperationTimeoutInMs (long value)
Global timeout for all blocking operations in this session. If non-zero, and not overridden on a per-operation basis, this value will be used as the deadline for all blocking operations.
int64 operation_timeout_in_ms = 11;
public ConfigProto.Builder setPlacementPeriod (int value)
Assignment of Nodes to Devices is recomputed every placement_period steps until the system warms up (at which point the recomputation typically slows down automatically).
int32 placement_period = 3;
public ConfigProto.Builder setRepeatedField (com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
public ConfigProto.Builder setRpcOptions (RPCOptions value)
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public ConfigProto.Builder setRpcOptions (RPCOptions.Builder builderForValue)
Options that apply when this session uses the distributed runtime.
.tensorflow.RPCOptions rpc_options = 13;
public ConfigProto.Builder setSessionInterOpThreadPool (int index, ThreadPoolOptionProto value)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder setSessionInterOpThreadPool (int index, ThreadPoolOptionProto.Builder builderForValue)
This option is experimental - it may be replaced with a different mechanism in the future. Configures session thread pools. If this is configured, then RunOptions for a Run call can select the thread pool to use. The intended use is for when some session invocations need to run in a background pool limited to a small number of threads: - For example, a session may be configured to have one large pool (for regular compute) and one small pool (for periodic, low priority work); using the small pool is currently the mechanism for limiting the inter-op parallelism of the low priority work. Note that it does not limit the parallelism of work spawned by a single op kernel implementation. - Using this setting is normally not needed in training, but may help some serving use cases. - It is also generally recommended to set the global_name field of this proto, to avoid creating multiple large pools. It is typically better to run the non-low-priority work, even across sessions, in a single large pool.
repeated .tensorflow.ThreadPoolOptionProto session_inter_op_thread_pool = 12;
public ConfigProto.Builder setShareClusterDevicesInSession (boolean value)
When true, WorkerSessions are created with device attributes from the full cluster. This is helpful when a worker wants to partition a graph (for example during a PartitionedCallOp).
bool share_cluster_devices_in_session = 17;
public final ConfigProto.Builder setUnknownFields (com.google.protobuf.UnknownFieldSet unknownFields)
public ConfigProto.Builder setUsePerSessionThreads (boolean value)
If true, use a new set of threads for this session rather than the global pool of threads. Only supported by direct sessions. If false, use the global threads created by the first session, or the per-session thread pools configured by session_inter_op_thread_pool. This option is deprecated. The same effect can be achieved by setting session_inter_op_thread_pool to have one element, whose num_threads equals inter_op_parallelism_threads.
bool use_per_session_threads = 9;