@@ -2,14 +2,14 @@ syntax = "proto3";
2
2
3
3
package tensorboard ;
4
4
5
+ import "tensorboard/compat/proto/coordination_config.proto" ;
5
6
import "tensorboard/compat/proto/cost_graph.proto" ;
6
7
import "tensorboard/compat/proto/graph.proto" ;
7
8
import "tensorboard/compat/proto/step_stats.proto" ;
8
9
import "tensorboard/compat/proto/cluster.proto" ;
9
10
import "tensorboard/compat/proto/debug.proto" ;
10
11
import "tensorboard/compat/proto/rewriter_config.proto" ;
11
12
import "tensorboard/compat/proto/rpc_options.proto" ;
12
- import "tensorboard/compat/proto/coordination_config.proto" ;
13
13
14
14
option cc_enable_arenas = true ;
15
15
option java_outer_classname = "ConfigProtos" ;
@@ -77,6 +77,11 @@ message GPUOptions {
77
77
// name "/device:GPU:<id>") are also called "TF GPU id"s. Please
78
78
// refer to third_party/tensorflow/core/common_runtime/gpu/gpu_id.h
79
79
// for more information.
80
+ // 3. The visible_device_list is also used for PluggableDevice. And
81
+ // different types of PluggableDevices share this field. In that case,
82
+ // the pluggable_device_type is used to distinguish them, making the
83
+ // visible_device_list a list of <pluggable_device_type>:<device_index>,
84
+ // e.g. "PluggableDeviceA:0,PluggableDeviceA:1,PluggableDeviceB:0".
80
85
string visible_device_list = 5 ;
81
86
82
87
// In the event polling loop sleep this many microseconds between
@@ -306,7 +311,7 @@ message GPUOptions {
306
311
307
312
// Everything inside experimental is subject to change and is not subject
308
313
// to API stability guarantees in
309
- // https://www.tensorflow.org/guide/version_compat .
314
+ // https://www.tensorflow.org/guide/versions .
310
315
Experimental experimental = 9 ;
311
316
}
312
317
@@ -578,7 +583,7 @@ message ConfigProto {
578
583
579
584
// Everything inside Experimental is subject to change and is not subject
580
585
// to API stability guarantees in
581
- // https://www.tensorflow.org/guide/version_compat .
586
+ // https://www.tensorflow.org/guide/versions .
582
587
message Experimental {
583
588
// Task name for group resolution.
584
589
string collective_group_leader = 1 ;
@@ -750,7 +755,7 @@ message ConfigProto {
750
755
bool disable_functional_ops_lowering = 21 ;
751
756
752
757
// Provides a hint to XLA auto clustering to prefer forming a single large
753
- // cluster that encompases most of the graph.
758
+ // cluster that encompasses most of the graph.
754
759
bool xla_prefer_single_graph_cluster = 22 ;
755
760
756
761
// Distributed coordination service configurations.
@@ -983,3 +988,28 @@ message CallableOptions {
983
988
984
989
// Next: 9
985
990
}
991
+
992
+ message BatchingOptions {
993
+ // Number of scheduling threads for processing batches of work. Determines
994
+ // the number of batches processed in parallel. This should be roughly in line
995
+ // with the number of TPU cores available.
996
+ int32 num_batch_threads = 1 ;
997
+
998
+ // The maximum allowed batch size. Can be larger than allowed_batch_sizes to
999
+ // utilize large batch splitting.
1000
+ int32 max_batch_size = 2 ;
1001
+
1002
+ // Maximum number of microseconds to wait before outputting an incomplete
1003
+ // batch.
1004
+ int32 batch_timeout_micros = 3 ;
1005
+
1006
+ // Optional list of allowed batch sizes. If left empty, does nothing.
1007
+ // Otherwise, supplies a list of batch sizes, causing the op to pad batches up
1008
+ // to one of those sizes. The entries must increase monotonically, and the
1009
+ // final entry must be equal or less than the max_batch_size.
1010
+ repeated int32 allowed_batch_sizes = 4 ;
1011
+
1012
+ // Maximum number of batches enqueued for processing before requests are
1013
+ // failed fast.
1014
+ int32 max_enqueued_batches = 5 ;
1015
+ }
0 commit comments