@@ -106,8 +106,8 @@ message GPUOptions {
106
106
// Per "virtual" device memory limit, in MB. The number of elements in
107
107
// the list is the number of virtual devices to create on the
108
108
// corresponding visible GPU (see "virtual_devices" below).
109
- // If empty, it will create single virtual device taking all available
110
- // memory from the device.
109
+ // If empty and `num_virtual_devices_per_gpu` is not set, it will create
110
+ // single virtual device taking all available memory from the device.
111
111
//
112
112
// For the concept of "visible" and "virtual" GPU, see the comments for
113
113
// "visible_device_list" above for more information.
@@ -172,6 +172,12 @@ message GPUOptions {
172
172
// result in undefined behavior.
173
173
repeated VirtualDevices virtual_devices = 1 ;
174
174
175
+ // The number of virtual devices to create on each visible GPU. The
176
+ // available memory will be split equally among all virtual devices. If the
177
+ // field `memory_limit_mb` in `VirtualDevices` is not empty, this field will
178
+ // be ignored.
179
+ int32 num_virtual_devices_per_gpu = 15 ;
180
+
175
181
// If true, uses CUDA unified memory for memory allocations. If
176
182
// per_process_gpu_memory_fraction option is greater than 1.0, then unified
177
183
// memory is used regardless of the value for this field. See comments for
@@ -252,6 +258,13 @@ message GPUOptions {
252
258
// gpu_host_mem_limit_in_mb, because the default GPU host memory limit is
253
259
// quite high.
254
260
bool gpu_host_mem_disallow_growth = 14 ;
261
+
262
+ // Memory limit for gpu system. This can also be set by
263
+ // TF_DEVICE_MIN_SYS_MEMORY_IN_MB, which takes precedence over
264
+ // gpu_system_memory_size_in_mb. With this, user can configure the gpu
265
+ // system memory size for better resource estimation of multi-tenancy(one
266
+ // gpu with multiple model) use case.
267
+ int32 gpu_system_memory_size_in_mb = 16 ;
255
268
}
256
269
257
270
// Everything inside experimental is subject to change and is not subject
@@ -691,9 +704,14 @@ message ConfigProto {
691
704
// aims to negate its value.
692
705
bool disable_optimize_for_static_graph = 24 ;
693
706
707
+ // Whether eager remote execution will stream all the function calls or
708
+ // allow them to happen in parallel. When true, streaming execution is
709
+ // disabled, and parallel execution is allowed.
710
+ bool disable_eager_executor_streaming_enqueue = 26 ;
711
+
694
712
reserved 25 ;
695
713
696
- // Next: 26
714
+ // Next: 27
697
715
}
698
716
699
717
Experimental experimental = 16 ;
0 commit comments