All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.tensorflow.framework.CallableOptions Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tensorflow/core/protobuf/config.proto

package org.tensorflow.framework;

/**
 * 
 * Defines a subgraph in another `GraphDef` as a set of feed points and nodes
 * to be fetched or executed.
 * Compare with the arguments to `Session::Run()`.
 * 
* * Protobuf type {@code tensorflow.CallableOptions} */ public final class CallableOptions extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:tensorflow.CallableOptions) CallableOptionsOrBuilder { private static final long serialVersionUID = 0L; // Use CallableOptions.newBuilder() to construct. private CallableOptions(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private CallableOptions() { feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; target_ = com.google.protobuf.LazyStringArrayList.EMPTY; tensorConnection_ = java.util.Collections.emptyList(); fetchSkipSync_ = false; } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private CallableOptions( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) { feed_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000001; } feed_.add(s); break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) { fetch_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000002; } fetch_.add(s); break; } case 26: { java.lang.String s = input.readStringRequireUtf8(); if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) { target_ = new com.google.protobuf.LazyStringArrayList(); mutable_bitField0_ |= 0x00000004; } target_.add(s); break; } case 34: { org.tensorflow.framework.RunOptions.Builder subBuilder = null; if (runOptions_ != null) { subBuilder = runOptions_.toBuilder(); } runOptions_ = input.readMessage(org.tensorflow.framework.RunOptions.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(runOptions_); runOptions_ = subBuilder.buildPartial(); } break; } case 42: { if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) { tensorConnection_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000010; } tensorConnection_.add( input.readMessage(org.tensorflow.framework.TensorConnection.parser(), extensionRegistry)); break; } case 50: { if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) { feedDevices_ = com.google.protobuf.MapField.newMapField( FeedDevicesDefaultEntryHolder.defaultEntry); mutable_bitField0_ |= 0x00000020; } com.google.protobuf.MapEntry feedDevices__ = input.readMessage( FeedDevicesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); feedDevices_.getMutableMap().put( feedDevices__.getKey(), feedDevices__.getValue()); break; } case 58: { if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) { fetchDevices_ = com.google.protobuf.MapField.newMapField( FetchDevicesDefaultEntryHolder.defaultEntry); mutable_bitField0_ |= 0x00000040; } com.google.protobuf.MapEntry fetchDevices__ = input.readMessage( FetchDevicesDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); fetchDevices_.getMutableMap().put( fetchDevices__.getKey(), fetchDevices__.getValue()); break; } case 64: { fetchSkipSync_ = input.readBool(); break; } default: { if (!parseUnknownFieldProto3( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) { feed_ = feed_.getUnmodifiableView(); } if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) { fetch_ = fetch_.getUnmodifiableView(); } if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) { target_ = target_.getUnmodifiableView(); } if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) { tensorConnection_ = java.util.Collections.unmodifiableList(tensorConnection_); } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_descriptor; } @SuppressWarnings({"rawtypes"}) @java.lang.Override protected com.google.protobuf.MapField internalGetMapField( int number) { switch (number) { case 6: return internalGetFeedDevices(); case 7: return internalGetFetchDevices(); default: throw new RuntimeException( "Invalid map field number: " + number); } } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.framework.CallableOptions.class, org.tensorflow.framework.CallableOptions.Builder.class); } private int bitField0_; public static final int FEED_FIELD_NUMBER = 1; private com.google.protobuf.LazyStringList feed_; /** *
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * 
* * repeated string feed = 1; */ public com.google.protobuf.ProtocolStringList getFeedList() { return feed_; } /** *
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * 
* * repeated string feed = 1; */ public int getFeedCount() { return feed_.size(); } /** *
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * 
* * repeated string feed = 1; */ public java.lang.String getFeed(int index) { return feed_.get(index); } /** *
   * Tensors to be fed in the callable. Each feed is the name of a tensor.
   * 
* * repeated string feed = 1; */ public com.google.protobuf.ByteString getFeedBytes(int index) { return feed_.getByteString(index); } public static final int FETCH_FIELD_NUMBER = 2; private com.google.protobuf.LazyStringList fetch_; /** *
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * 
* * repeated string fetch = 2; */ public com.google.protobuf.ProtocolStringList getFetchList() { return fetch_; } /** *
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * 
* * repeated string fetch = 2; */ public int getFetchCount() { return fetch_.size(); } /** *
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * 
* * repeated string fetch = 2; */ public java.lang.String getFetch(int index) { return fetch_.get(index); } /** *
   * Fetches. A list of tensor names. The caller of the callable expects a
   * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
   * order of specified fetches does not change the execution order.
   * 
* * repeated string fetch = 2; */ public com.google.protobuf.ByteString getFetchBytes(int index) { return fetch_.getByteString(index); } public static final int TARGET_FIELD_NUMBER = 3; private com.google.protobuf.LazyStringList target_; /** *
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * 
* * repeated string target = 3; */ public com.google.protobuf.ProtocolStringList getTargetList() { return target_; } /** *
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * 
* * repeated string target = 3; */ public int getTargetCount() { return target_.size(); } /** *
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * 
* * repeated string target = 3; */ public java.lang.String getTarget(int index) { return target_.get(index); } /** *
   * Target Nodes. A list of node names. The named nodes will be run by the
   * callable but their outputs will not be returned.
   * 
* * repeated string target = 3; */ public com.google.protobuf.ByteString getTargetBytes(int index) { return target_.getByteString(index); } public static final int RUN_OPTIONS_FIELD_NUMBER = 4; private org.tensorflow.framework.RunOptions runOptions_; /** *
   * Options that will be applied to each run.
   * 
* * .tensorflow.RunOptions run_options = 4; */ public boolean hasRunOptions() { return runOptions_ != null; } /** *
   * Options that will be applied to each run.
   * 
* * .tensorflow.RunOptions run_options = 4; */ public org.tensorflow.framework.RunOptions getRunOptions() { return runOptions_ == null ? org.tensorflow.framework.RunOptions.getDefaultInstance() : runOptions_; } /** *
   * Options that will be applied to each run.
   * 
* * .tensorflow.RunOptions run_options = 4; */ public org.tensorflow.framework.RunOptionsOrBuilder getRunOptionsOrBuilder() { return getRunOptions(); } public static final int TENSOR_CONNECTION_FIELD_NUMBER = 5; private java.util.List tensorConnection_; /** *
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public java.util.List getTensorConnectionList() { return tensorConnection_; } /** *
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public java.util.List getTensorConnectionOrBuilderList() { return tensorConnection_; } /** *
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public int getTensorConnectionCount() { return tensorConnection_.size(); } /** *
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnection getTensorConnection(int index) { return tensorConnection_.get(index); } /** *
   * Tensors to be connected in the callable. Each TensorConnection denotes
   * a pair of tensors in the graph, between which an edge will be created
   * in the callable.
   * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnectionOrBuilder getTensorConnectionOrBuilder( int index) { return tensorConnection_.get(index); } public static final int FEED_DEVICES_FIELD_NUMBER = 6; private static final class FeedDevicesDefaultEntryHolder { static final com.google.protobuf.MapEntry< java.lang.String, java.lang.String> defaultEntry = com.google.protobuf.MapEntry .newDefaultInstance( org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_FeedDevicesEntry_descriptor, com.google.protobuf.WireFormat.FieldType.STRING, "", com.google.protobuf.WireFormat.FieldType.STRING, ""); } private com.google.protobuf.MapField< java.lang.String, java.lang.String> feedDevices_; private com.google.protobuf.MapField internalGetFeedDevices() { if (feedDevices_ == null) { return com.google.protobuf.MapField.emptyMapField( FeedDevicesDefaultEntryHolder.defaultEntry); } return feedDevices_; } public int getFeedDevicesCount() { return internalGetFeedDevices().getMap().size(); } /** *
   * The Tensor objects fed in the callable and fetched from the callable
   * are expected to be backed by host (CPU) memory by default.
   * The options below allow changing that - feeding tensors backed by
   * device memory, or returning tensors that are backed by device memory.
   * The maps below map the name of a feed/fetch tensor (which appears in
   * 'feed' or 'fetch' fields above), to the fully qualified name of the device
   * owning the memory backing the contents of the tensor.
   * For example, creating a callable with the following options:
   * CallableOptions {
   *   feed: "a:0"
   *   feed: "b:0"
   *   fetch: "x:0"
   *   fetch: "y:0"
   *   feed_devices: {
   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *   }
   *   fetch_devices: {
   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *  }
   * }
   * means that the Callable expects:
   * - The first argument ("a:0") is a Tensor backed by GPU memory.
   * - The second argument ("b:0") is a Tensor backed by host memory.
   * and of its return values:
   * - The first output ("x:0") will be backed by host memory.
   * - The second output ("y:0") will be backed by GPU memory.
   * FEEDS:
   * It is the responsibility of the caller to ensure that the memory of the fed
   * tensors will be correctly initialized and synchronized before it is
   * accessed by operations executed during the call to Session::RunCallable().
   * This is typically ensured by using the TensorFlow memory allocators
   * (Device::GetAllocator()) to create the Tensor to be fed.
   * Alternatively, for CUDA-enabled GPU devices, this typically means that the
   * operation that produced the contents of the tensor has completed, i.e., the
   * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
   * cuStreamSynchronize()).
   * 
* * map<string, string> feed_devices = 6; */ public boolean containsFeedDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } return internalGetFeedDevices().getMap().containsKey(key); } /** * Use {@link #getFeedDevicesMap()} instead. */ @java.lang.Deprecated public java.util.Map getFeedDevices() { return getFeedDevicesMap(); } /** *
   * The Tensor objects fed in the callable and fetched from the callable
   * are expected to be backed by host (CPU) memory by default.
   * The options below allow changing that - feeding tensors backed by
   * device memory, or returning tensors that are backed by device memory.
   * The maps below map the name of a feed/fetch tensor (which appears in
   * 'feed' or 'fetch' fields above), to the fully qualified name of the device
   * owning the memory backing the contents of the tensor.
   * For example, creating a callable with the following options:
   * CallableOptions {
   *   feed: "a:0"
   *   feed: "b:0"
   *   fetch: "x:0"
   *   fetch: "y:0"
   *   feed_devices: {
   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *   }
   *   fetch_devices: {
   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *  }
   * }
   * means that the Callable expects:
   * - The first argument ("a:0") is a Tensor backed by GPU memory.
   * - The second argument ("b:0") is a Tensor backed by host memory.
   * and of its return values:
   * - The first output ("x:0") will be backed by host memory.
   * - The second output ("y:0") will be backed by GPU memory.
   * FEEDS:
   * It is the responsibility of the caller to ensure that the memory of the fed
   * tensors will be correctly initialized and synchronized before it is
   * accessed by operations executed during the call to Session::RunCallable().
   * This is typically ensured by using the TensorFlow memory allocators
   * (Device::GetAllocator()) to create the Tensor to be fed.
   * Alternatively, for CUDA-enabled GPU devices, this typically means that the
   * operation that produced the contents of the tensor has completed, i.e., the
   * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
   * cuStreamSynchronize()).
   * 
* * map<string, string> feed_devices = 6; */ public java.util.Map getFeedDevicesMap() { return internalGetFeedDevices().getMap(); } /** *
   * The Tensor objects fed in the callable and fetched from the callable
   * are expected to be backed by host (CPU) memory by default.
   * The options below allow changing that - feeding tensors backed by
   * device memory, or returning tensors that are backed by device memory.
   * The maps below map the name of a feed/fetch tensor (which appears in
   * 'feed' or 'fetch' fields above), to the fully qualified name of the device
   * owning the memory backing the contents of the tensor.
   * For example, creating a callable with the following options:
   * CallableOptions {
   *   feed: "a:0"
   *   feed: "b:0"
   *   fetch: "x:0"
   *   fetch: "y:0"
   *   feed_devices: {
   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *   }
   *   fetch_devices: {
   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *  }
   * }
   * means that the Callable expects:
   * - The first argument ("a:0") is a Tensor backed by GPU memory.
   * - The second argument ("b:0") is a Tensor backed by host memory.
   * and of its return values:
   * - The first output ("x:0") will be backed by host memory.
   * - The second output ("y:0") will be backed by GPU memory.
   * FEEDS:
   * It is the responsibility of the caller to ensure that the memory of the fed
   * tensors will be correctly initialized and synchronized before it is
   * accessed by operations executed during the call to Session::RunCallable().
   * This is typically ensured by using the TensorFlow memory allocators
   * (Device::GetAllocator()) to create the Tensor to be fed.
   * Alternatively, for CUDA-enabled GPU devices, this typically means that the
   * operation that produced the contents of the tensor has completed, i.e., the
   * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
   * cuStreamSynchronize()).
   * 
* * map<string, string> feed_devices = 6; */ public java.lang.String getFeedDevicesOrDefault( java.lang.String key, java.lang.String defaultValue) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFeedDevices().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; } /** *
   * The Tensor objects fed in the callable and fetched from the callable
   * are expected to be backed by host (CPU) memory by default.
   * The options below allow changing that - feeding tensors backed by
   * device memory, or returning tensors that are backed by device memory.
   * The maps below map the name of a feed/fetch tensor (which appears in
   * 'feed' or 'fetch' fields above), to the fully qualified name of the device
   * owning the memory backing the contents of the tensor.
   * For example, creating a callable with the following options:
   * CallableOptions {
   *   feed: "a:0"
   *   feed: "b:0"
   *   fetch: "x:0"
   *   fetch: "y:0"
   *   feed_devices: {
   *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *   }
   *   fetch_devices: {
   *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
   *  }
   * }
   * means that the Callable expects:
   * - The first argument ("a:0") is a Tensor backed by GPU memory.
   * - The second argument ("b:0") is a Tensor backed by host memory.
   * and of its return values:
   * - The first output ("x:0") will be backed by host memory.
   * - The second output ("y:0") will be backed by GPU memory.
   * FEEDS:
   * It is the responsibility of the caller to ensure that the memory of the fed
   * tensors will be correctly initialized and synchronized before it is
   * accessed by operations executed during the call to Session::RunCallable().
   * This is typically ensured by using the TensorFlow memory allocators
   * (Device::GetAllocator()) to create the Tensor to be fed.
   * Alternatively, for CUDA-enabled GPU devices, this typically means that the
   * operation that produced the contents of the tensor has completed, i.e., the
   * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
   * cuStreamSynchronize()).
   * 
* * map<string, string> feed_devices = 6; */ public java.lang.String getFeedDevicesOrThrow( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFeedDevices().getMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } return map.get(key); } public static final int FETCH_DEVICES_FIELD_NUMBER = 7; private static final class FetchDevicesDefaultEntryHolder { static final com.google.protobuf.MapEntry< java.lang.String, java.lang.String> defaultEntry = com.google.protobuf.MapEntry .newDefaultInstance( org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_FetchDevicesEntry_descriptor, com.google.protobuf.WireFormat.FieldType.STRING, "", com.google.protobuf.WireFormat.FieldType.STRING, ""); } private com.google.protobuf.MapField< java.lang.String, java.lang.String> fetchDevices_; private com.google.protobuf.MapField internalGetFetchDevices() { if (fetchDevices_ == null) { return com.google.protobuf.MapField.emptyMapField( FetchDevicesDefaultEntryHolder.defaultEntry); } return fetchDevices_; } public int getFetchDevicesCount() { return internalGetFetchDevices().getMap().size(); } /** * map<string, string> fetch_devices = 7; */ public boolean containsFetchDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } return internalGetFetchDevices().getMap().containsKey(key); } /** * Use {@link #getFetchDevicesMap()} instead. */ @java.lang.Deprecated public java.util.Map getFetchDevices() { return getFetchDevicesMap(); } /** * map<string, string> fetch_devices = 7; */ public java.util.Map getFetchDevicesMap() { return internalGetFetchDevices().getMap(); } /** * map<string, string> fetch_devices = 7; */ public java.lang.String getFetchDevicesOrDefault( java.lang.String key, java.lang.String defaultValue) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFetchDevices().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; } /** * map<string, string> fetch_devices = 7; */ public java.lang.String getFetchDevicesOrThrow( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFetchDevices().getMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } return map.get(key); } public static final int FETCH_SKIP_SYNC_FIELD_NUMBER = 8; private boolean fetchSkipSync_; /** *
   * By default, RunCallable() will synchronize the GPU stream before returning
   * fetched tensors on a GPU device, to ensure that the values in those tensors
   * have been produced. This simplifies interacting with the tensors, but
   * potentially incurs a performance hit.
   * If this options is set to true, the caller is responsible for ensuring
   * that the values in the fetched tensors have been produced before they are
   * used. The caller can do this by invoking `Device::Sync()` on the underlying
   * device(s), or by feeding the tensors back to the same Session using
   * `feed_devices` with the same corresponding device name.
   * 
* * bool fetch_skip_sync = 8; */ public boolean getFetchSkipSync() { return fetchSkipSync_; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { for (int i = 0; i < feed_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, feed_.getRaw(i)); } for (int i = 0; i < fetch_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fetch_.getRaw(i)); } for (int i = 0; i < target_.size(); i++) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, target_.getRaw(i)); } if (runOptions_ != null) { output.writeMessage(4, getRunOptions()); } for (int i = 0; i < tensorConnection_.size(); i++) { output.writeMessage(5, tensorConnection_.get(i)); } com.google.protobuf.GeneratedMessageV3 .serializeStringMapTo( output, internalGetFeedDevices(), FeedDevicesDefaultEntryHolder.defaultEntry, 6); com.google.protobuf.GeneratedMessageV3 .serializeStringMapTo( output, internalGetFetchDevices(), FetchDevicesDefaultEntryHolder.defaultEntry, 7); if (fetchSkipSync_ != false) { output.writeBool(8, fetchSkipSync_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; { int dataSize = 0; for (int i = 0; i < feed_.size(); i++) { dataSize += computeStringSizeNoTag(feed_.getRaw(i)); } size += dataSize; size += 1 * getFeedList().size(); } { int dataSize = 0; for (int i = 0; i < fetch_.size(); i++) { dataSize += computeStringSizeNoTag(fetch_.getRaw(i)); } size += dataSize; size += 1 * getFetchList().size(); } { int dataSize = 0; for (int i = 0; i < target_.size(); i++) { dataSize += computeStringSizeNoTag(target_.getRaw(i)); } size += dataSize; size += 1 * getTargetList().size(); } if (runOptions_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, getRunOptions()); } for (int i = 0; i < tensorConnection_.size(); i++) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(5, tensorConnection_.get(i)); } for (java.util.Map.Entry entry : internalGetFeedDevices().getMap().entrySet()) { com.google.protobuf.MapEntry feedDevices__ = FeedDevicesDefaultEntryHolder.defaultEntry.newBuilderForType() .setKey(entry.getKey()) .setValue(entry.getValue()) .build(); size += com.google.protobuf.CodedOutputStream .computeMessageSize(6, feedDevices__); } for (java.util.Map.Entry entry : internalGetFetchDevices().getMap().entrySet()) { com.google.protobuf.MapEntry fetchDevices__ = FetchDevicesDefaultEntryHolder.defaultEntry.newBuilderForType() .setKey(entry.getKey()) .setValue(entry.getValue()) .build(); size += com.google.protobuf.CodedOutputStream .computeMessageSize(7, fetchDevices__); } if (fetchSkipSync_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(8, fetchSkipSync_); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof org.tensorflow.framework.CallableOptions)) { return super.equals(obj); } org.tensorflow.framework.CallableOptions other = (org.tensorflow.framework.CallableOptions) obj; boolean result = true; result = result && getFeedList() .equals(other.getFeedList()); result = result && getFetchList() .equals(other.getFetchList()); result = result && getTargetList() .equals(other.getTargetList()); result = result && (hasRunOptions() == other.hasRunOptions()); if (hasRunOptions()) { result = result && getRunOptions() .equals(other.getRunOptions()); } result = result && getTensorConnectionList() .equals(other.getTensorConnectionList()); result = result && internalGetFeedDevices().equals( other.internalGetFeedDevices()); result = result && internalGetFetchDevices().equals( other.internalGetFetchDevices()); result = result && (getFetchSkipSync() == other.getFetchSkipSync()); result = result && unknownFields.equals(other.unknownFields); return result; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); if (getFeedCount() > 0) { hash = (37 * hash) + FEED_FIELD_NUMBER; hash = (53 * hash) + getFeedList().hashCode(); } if (getFetchCount() > 0) { hash = (37 * hash) + FETCH_FIELD_NUMBER; hash = (53 * hash) + getFetchList().hashCode(); } if (getTargetCount() > 0) { hash = (37 * hash) + TARGET_FIELD_NUMBER; hash = (53 * hash) + getTargetList().hashCode(); } if (hasRunOptions()) { hash = (37 * hash) + RUN_OPTIONS_FIELD_NUMBER; hash = (53 * hash) + getRunOptions().hashCode(); } if (getTensorConnectionCount() > 0) { hash = (37 * hash) + TENSOR_CONNECTION_FIELD_NUMBER; hash = (53 * hash) + getTensorConnectionList().hashCode(); } if (!internalGetFeedDevices().getMap().isEmpty()) { hash = (37 * hash) + FEED_DEVICES_FIELD_NUMBER; hash = (53 * hash) + internalGetFeedDevices().hashCode(); } if (!internalGetFetchDevices().getMap().isEmpty()) { hash = (37 * hash) + FETCH_DEVICES_FIELD_NUMBER; hash = (53 * hash) + internalGetFetchDevices().hashCode(); } hash = (37 * hash) + FETCH_SKIP_SYNC_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getFetchSkipSync()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static org.tensorflow.framework.CallableOptions parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.tensorflow.framework.CallableOptions parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.tensorflow.framework.CallableOptions parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.tensorflow.framework.CallableOptions parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.tensorflow.framework.CallableOptions parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static org.tensorflow.framework.CallableOptions parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static org.tensorflow.framework.CallableOptions parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static org.tensorflow.framework.CallableOptions parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.framework.CallableOptions parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static org.tensorflow.framework.CallableOptions parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static org.tensorflow.framework.CallableOptions parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static org.tensorflow.framework.CallableOptions parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(org.tensorflow.framework.CallableOptions prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
   * Defines a subgraph in another `GraphDef` as a set of feed points and nodes
   * to be fetched or executed.
   * Compare with the arguments to `Session::Run()`.
   * 
* * Protobuf type {@code tensorflow.CallableOptions} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:tensorflow.CallableOptions) org.tensorflow.framework.CallableOptionsOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_descriptor; } @SuppressWarnings({"rawtypes"}) protected com.google.protobuf.MapField internalGetMapField( int number) { switch (number) { case 6: return internalGetFeedDevices(); case 7: return internalGetFetchDevices(); default: throw new RuntimeException( "Invalid map field number: " + number); } } @SuppressWarnings({"rawtypes"}) protected com.google.protobuf.MapField internalGetMutableMapField( int number) { switch (number) { case 6: return internalGetMutableFeedDevices(); case 7: return internalGetMutableFetchDevices(); default: throw new RuntimeException( "Invalid map field number: " + number); } } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_fieldAccessorTable .ensureFieldAccessorsInitialized( org.tensorflow.framework.CallableOptions.class, org.tensorflow.framework.CallableOptions.Builder.class); } // Construct using org.tensorflow.framework.CallableOptions.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { getTensorConnectionFieldBuilder(); } } @java.lang.Override public Builder clear() { super.clear(); feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); target_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); if (runOptionsBuilder_ == null) { runOptions_ = null; } else { runOptions_ = null; runOptionsBuilder_ = null; } if (tensorConnectionBuilder_ == null) { tensorConnection_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); } else { tensorConnectionBuilder_.clear(); } internalGetMutableFeedDevices().clear(); internalGetMutableFetchDevices().clear(); fetchSkipSync_ = false; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return org.tensorflow.framework.ConfigProtos.internal_static_tensorflow_CallableOptions_descriptor; } @java.lang.Override public org.tensorflow.framework.CallableOptions getDefaultInstanceForType() { return org.tensorflow.framework.CallableOptions.getDefaultInstance(); } @java.lang.Override public org.tensorflow.framework.CallableOptions build() { org.tensorflow.framework.CallableOptions result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public org.tensorflow.framework.CallableOptions buildPartial() { org.tensorflow.framework.CallableOptions result = new org.tensorflow.framework.CallableOptions(this); int from_bitField0_ = bitField0_; int to_bitField0_ = 0; if (((bitField0_ & 0x00000001) == 0x00000001)) { feed_ = feed_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000001); } result.feed_ = feed_; if (((bitField0_ & 0x00000002) == 0x00000002)) { fetch_ = fetch_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000002); } result.fetch_ = fetch_; if (((bitField0_ & 0x00000004) == 0x00000004)) { target_ = target_.getUnmodifiableView(); bitField0_ = (bitField0_ & ~0x00000004); } result.target_ = target_; if (runOptionsBuilder_ == null) { result.runOptions_ = runOptions_; } else { result.runOptions_ = runOptionsBuilder_.build(); } if (tensorConnectionBuilder_ == null) { if (((bitField0_ & 0x00000010) == 0x00000010)) { tensorConnection_ = java.util.Collections.unmodifiableList(tensorConnection_); bitField0_ = (bitField0_ & ~0x00000010); } result.tensorConnection_ = tensorConnection_; } else { result.tensorConnection_ = tensorConnectionBuilder_.build(); } result.feedDevices_ = internalGetFeedDevices(); result.feedDevices_.makeImmutable(); result.fetchDevices_ = internalGetFetchDevices(); result.fetchDevices_.makeImmutable(); result.fetchSkipSync_ = fetchSkipSync_; result.bitField0_ = to_bitField0_; onBuilt(); return result; } @java.lang.Override public Builder clone() { return (Builder) super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return (Builder) super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return (Builder) super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return (Builder) super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return (Builder) super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return (Builder) super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof org.tensorflow.framework.CallableOptions) { return mergeFrom((org.tensorflow.framework.CallableOptions)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(org.tensorflow.framework.CallableOptions other) { if (other == org.tensorflow.framework.CallableOptions.getDefaultInstance()) return this; if (!other.feed_.isEmpty()) { if (feed_.isEmpty()) { feed_ = other.feed_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureFeedIsMutable(); feed_.addAll(other.feed_); } onChanged(); } if (!other.fetch_.isEmpty()) { if (fetch_.isEmpty()) { fetch_ = other.fetch_; bitField0_ = (bitField0_ & ~0x00000002); } else { ensureFetchIsMutable(); fetch_.addAll(other.fetch_); } onChanged(); } if (!other.target_.isEmpty()) { if (target_.isEmpty()) { target_ = other.target_; bitField0_ = (bitField0_ & ~0x00000004); } else { ensureTargetIsMutable(); target_.addAll(other.target_); } onChanged(); } if (other.hasRunOptions()) { mergeRunOptions(other.getRunOptions()); } if (tensorConnectionBuilder_ == null) { if (!other.tensorConnection_.isEmpty()) { if (tensorConnection_.isEmpty()) { tensorConnection_ = other.tensorConnection_; bitField0_ = (bitField0_ & ~0x00000010); } else { ensureTensorConnectionIsMutable(); tensorConnection_.addAll(other.tensorConnection_); } onChanged(); } } else { if (!other.tensorConnection_.isEmpty()) { if (tensorConnectionBuilder_.isEmpty()) { tensorConnectionBuilder_.dispose(); tensorConnectionBuilder_ = null; tensorConnection_ = other.tensorConnection_; bitField0_ = (bitField0_ & ~0x00000010); tensorConnectionBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getTensorConnectionFieldBuilder() : null; } else { tensorConnectionBuilder_.addAllMessages(other.tensorConnection_); } } } internalGetMutableFeedDevices().mergeFrom( other.internalGetFeedDevices()); internalGetMutableFetchDevices().mergeFrom( other.internalGetFetchDevices()); if (other.getFetchSkipSync() != false) { setFetchSkipSync(other.getFetchSkipSync()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { org.tensorflow.framework.CallableOptions parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (org.tensorflow.framework.CallableOptions) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private com.google.protobuf.LazyStringList feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureFeedIsMutable() { if (!((bitField0_ & 0x00000001) == 0x00000001)) { feed_ = new com.google.protobuf.LazyStringArrayList(feed_); bitField0_ |= 0x00000001; } } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public com.google.protobuf.ProtocolStringList getFeedList() { return feed_.getUnmodifiableView(); } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public int getFeedCount() { return feed_.size(); } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public java.lang.String getFeed(int index) { return feed_.get(index); } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public com.google.protobuf.ByteString getFeedBytes(int index) { return feed_.getByteString(index); } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public Builder setFeed( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureFeedIsMutable(); feed_.set(index, value); onChanged(); return this; } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public Builder addFeed( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureFeedIsMutable(); feed_.add(value); onChanged(); return this; } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public Builder addAllFeed( java.lang.Iterable values) { ensureFeedIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, feed_); onChanged(); return this; } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public Builder clearFeed() { feed_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** *
     * Tensors to be fed in the callable. Each feed is the name of a tensor.
     * 
* * repeated string feed = 1; */ public Builder addFeedBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureFeedIsMutable(); feed_.add(value); onChanged(); return this; } private com.google.protobuf.LazyStringList fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureFetchIsMutable() { if (!((bitField0_ & 0x00000002) == 0x00000002)) { fetch_ = new com.google.protobuf.LazyStringArrayList(fetch_); bitField0_ |= 0x00000002; } } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public com.google.protobuf.ProtocolStringList getFetchList() { return fetch_.getUnmodifiableView(); } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public int getFetchCount() { return fetch_.size(); } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public java.lang.String getFetch(int index) { return fetch_.get(index); } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public com.google.protobuf.ByteString getFetchBytes(int index) { return fetch_.getByteString(index); } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public Builder setFetch( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureFetchIsMutable(); fetch_.set(index, value); onChanged(); return this; } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public Builder addFetch( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureFetchIsMutable(); fetch_.add(value); onChanged(); return this; } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public Builder addAllFetch( java.lang.Iterable values) { ensureFetchIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, fetch_); onChanged(); return this; } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public Builder clearFetch() { fetch_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** *
     * Fetches. A list of tensor names. The caller of the callable expects a
     * tensor to be returned for each fetch[i] (see RunStepResponse.tensor). The
     * order of specified fetches does not change the execution order.
     * 
* * repeated string fetch = 2; */ public Builder addFetchBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureFetchIsMutable(); fetch_.add(value); onChanged(); return this; } private com.google.protobuf.LazyStringList target_ = com.google.protobuf.LazyStringArrayList.EMPTY; private void ensureTargetIsMutable() { if (!((bitField0_ & 0x00000004) == 0x00000004)) { target_ = new com.google.protobuf.LazyStringArrayList(target_); bitField0_ |= 0x00000004; } } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public com.google.protobuf.ProtocolStringList getTargetList() { return target_.getUnmodifiableView(); } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public int getTargetCount() { return target_.size(); } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public java.lang.String getTarget(int index) { return target_.get(index); } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public com.google.protobuf.ByteString getTargetBytes(int index) { return target_.getByteString(index); } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public Builder setTarget( int index, java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureTargetIsMutable(); target_.set(index, value); onChanged(); return this; } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public Builder addTarget( java.lang.String value) { if (value == null) { throw new NullPointerException(); } ensureTargetIsMutable(); target_.add(value); onChanged(); return this; } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public Builder addAllTarget( java.lang.Iterable values) { ensureTargetIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, target_); onChanged(); return this; } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public Builder clearTarget() { target_ = com.google.protobuf.LazyStringArrayList.EMPTY; bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** *
     * Target Nodes. A list of node names. The named nodes will be run by the
     * callable but their outputs will not be returned.
     * 
* * repeated string target = 3; */ public Builder addTargetBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); ensureTargetIsMutable(); target_.add(value); onChanged(); return this; } private org.tensorflow.framework.RunOptions runOptions_ = null; private com.google.protobuf.SingleFieldBuilderV3< org.tensorflow.framework.RunOptions, org.tensorflow.framework.RunOptions.Builder, org.tensorflow.framework.RunOptionsOrBuilder> runOptionsBuilder_; /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public boolean hasRunOptions() { return runOptionsBuilder_ != null || runOptions_ != null; } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public org.tensorflow.framework.RunOptions getRunOptions() { if (runOptionsBuilder_ == null) { return runOptions_ == null ? org.tensorflow.framework.RunOptions.getDefaultInstance() : runOptions_; } else { return runOptionsBuilder_.getMessage(); } } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public Builder setRunOptions(org.tensorflow.framework.RunOptions value) { if (runOptionsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } runOptions_ = value; onChanged(); } else { runOptionsBuilder_.setMessage(value); } return this; } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public Builder setRunOptions( org.tensorflow.framework.RunOptions.Builder builderForValue) { if (runOptionsBuilder_ == null) { runOptions_ = builderForValue.build(); onChanged(); } else { runOptionsBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public Builder mergeRunOptions(org.tensorflow.framework.RunOptions value) { if (runOptionsBuilder_ == null) { if (runOptions_ != null) { runOptions_ = org.tensorflow.framework.RunOptions.newBuilder(runOptions_).mergeFrom(value).buildPartial(); } else { runOptions_ = value; } onChanged(); } else { runOptionsBuilder_.mergeFrom(value); } return this; } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public Builder clearRunOptions() { if (runOptionsBuilder_ == null) { runOptions_ = null; onChanged(); } else { runOptions_ = null; runOptionsBuilder_ = null; } return this; } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public org.tensorflow.framework.RunOptions.Builder getRunOptionsBuilder() { onChanged(); return getRunOptionsFieldBuilder().getBuilder(); } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ public org.tensorflow.framework.RunOptionsOrBuilder getRunOptionsOrBuilder() { if (runOptionsBuilder_ != null) { return runOptionsBuilder_.getMessageOrBuilder(); } else { return runOptions_ == null ? org.tensorflow.framework.RunOptions.getDefaultInstance() : runOptions_; } } /** *
     * Options that will be applied to each run.
     * 
* * .tensorflow.RunOptions run_options = 4; */ private com.google.protobuf.SingleFieldBuilderV3< org.tensorflow.framework.RunOptions, org.tensorflow.framework.RunOptions.Builder, org.tensorflow.framework.RunOptionsOrBuilder> getRunOptionsFieldBuilder() { if (runOptionsBuilder_ == null) { runOptionsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< org.tensorflow.framework.RunOptions, org.tensorflow.framework.RunOptions.Builder, org.tensorflow.framework.RunOptionsOrBuilder>( getRunOptions(), getParentForChildren(), isClean()); runOptions_ = null; } return runOptionsBuilder_; } private java.util.List tensorConnection_ = java.util.Collections.emptyList(); private void ensureTensorConnectionIsMutable() { if (!((bitField0_ & 0x00000010) == 0x00000010)) { tensorConnection_ = new java.util.ArrayList(tensorConnection_); bitField0_ |= 0x00000010; } } private com.google.protobuf.RepeatedFieldBuilderV3< org.tensorflow.framework.TensorConnection, org.tensorflow.framework.TensorConnection.Builder, org.tensorflow.framework.TensorConnectionOrBuilder> tensorConnectionBuilder_; /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public java.util.List getTensorConnectionList() { if (tensorConnectionBuilder_ == null) { return java.util.Collections.unmodifiableList(tensorConnection_); } else { return tensorConnectionBuilder_.getMessageList(); } } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public int getTensorConnectionCount() { if (tensorConnectionBuilder_ == null) { return tensorConnection_.size(); } else { return tensorConnectionBuilder_.getCount(); } } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnection getTensorConnection(int index) { if (tensorConnectionBuilder_ == null) { return tensorConnection_.get(index); } else { return tensorConnectionBuilder_.getMessage(index); } } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder setTensorConnection( int index, org.tensorflow.framework.TensorConnection value) { if (tensorConnectionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTensorConnectionIsMutable(); tensorConnection_.set(index, value); onChanged(); } else { tensorConnectionBuilder_.setMessage(index, value); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder setTensorConnection( int index, org.tensorflow.framework.TensorConnection.Builder builderForValue) { if (tensorConnectionBuilder_ == null) { ensureTensorConnectionIsMutable(); tensorConnection_.set(index, builderForValue.build()); onChanged(); } else { tensorConnectionBuilder_.setMessage(index, builderForValue.build()); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder addTensorConnection(org.tensorflow.framework.TensorConnection value) { if (tensorConnectionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTensorConnectionIsMutable(); tensorConnection_.add(value); onChanged(); } else { tensorConnectionBuilder_.addMessage(value); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder addTensorConnection( int index, org.tensorflow.framework.TensorConnection value) { if (tensorConnectionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureTensorConnectionIsMutable(); tensorConnection_.add(index, value); onChanged(); } else { tensorConnectionBuilder_.addMessage(index, value); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder addTensorConnection( org.tensorflow.framework.TensorConnection.Builder builderForValue) { if (tensorConnectionBuilder_ == null) { ensureTensorConnectionIsMutable(); tensorConnection_.add(builderForValue.build()); onChanged(); } else { tensorConnectionBuilder_.addMessage(builderForValue.build()); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder addTensorConnection( int index, org.tensorflow.framework.TensorConnection.Builder builderForValue) { if (tensorConnectionBuilder_ == null) { ensureTensorConnectionIsMutable(); tensorConnection_.add(index, builderForValue.build()); onChanged(); } else { tensorConnectionBuilder_.addMessage(index, builderForValue.build()); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder addAllTensorConnection( java.lang.Iterable values) { if (tensorConnectionBuilder_ == null) { ensureTensorConnectionIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, tensorConnection_); onChanged(); } else { tensorConnectionBuilder_.addAllMessages(values); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder clearTensorConnection() { if (tensorConnectionBuilder_ == null) { tensorConnection_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { tensorConnectionBuilder_.clear(); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public Builder removeTensorConnection(int index) { if (tensorConnectionBuilder_ == null) { ensureTensorConnectionIsMutable(); tensorConnection_.remove(index); onChanged(); } else { tensorConnectionBuilder_.remove(index); } return this; } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnection.Builder getTensorConnectionBuilder( int index) { return getTensorConnectionFieldBuilder().getBuilder(index); } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnectionOrBuilder getTensorConnectionOrBuilder( int index) { if (tensorConnectionBuilder_ == null) { return tensorConnection_.get(index); } else { return tensorConnectionBuilder_.getMessageOrBuilder(index); } } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public java.util.List getTensorConnectionOrBuilderList() { if (tensorConnectionBuilder_ != null) { return tensorConnectionBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(tensorConnection_); } } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnection.Builder addTensorConnectionBuilder() { return getTensorConnectionFieldBuilder().addBuilder( org.tensorflow.framework.TensorConnection.getDefaultInstance()); } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public org.tensorflow.framework.TensorConnection.Builder addTensorConnectionBuilder( int index) { return getTensorConnectionFieldBuilder().addBuilder( index, org.tensorflow.framework.TensorConnection.getDefaultInstance()); } /** *
     * Tensors to be connected in the callable. Each TensorConnection denotes
     * a pair of tensors in the graph, between which an edge will be created
     * in the callable.
     * 
* * repeated .tensorflow.TensorConnection tensor_connection = 5; */ public java.util.List getTensorConnectionBuilderList() { return getTensorConnectionFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< org.tensorflow.framework.TensorConnection, org.tensorflow.framework.TensorConnection.Builder, org.tensorflow.framework.TensorConnectionOrBuilder> getTensorConnectionFieldBuilder() { if (tensorConnectionBuilder_ == null) { tensorConnectionBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< org.tensorflow.framework.TensorConnection, org.tensorflow.framework.TensorConnection.Builder, org.tensorflow.framework.TensorConnectionOrBuilder>( tensorConnection_, ((bitField0_ & 0x00000010) == 0x00000010), getParentForChildren(), isClean()); tensorConnection_ = null; } return tensorConnectionBuilder_; } private com.google.protobuf.MapField< java.lang.String, java.lang.String> feedDevices_; private com.google.protobuf.MapField internalGetFeedDevices() { if (feedDevices_ == null) { return com.google.protobuf.MapField.emptyMapField( FeedDevicesDefaultEntryHolder.defaultEntry); } return feedDevices_; } private com.google.protobuf.MapField internalGetMutableFeedDevices() { onChanged();; if (feedDevices_ == null) { feedDevices_ = com.google.protobuf.MapField.newMapField( FeedDevicesDefaultEntryHolder.defaultEntry); } if (!feedDevices_.isMutable()) { feedDevices_ = feedDevices_.copy(); } return feedDevices_; } public int getFeedDevicesCount() { return internalGetFeedDevices().getMap().size(); } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public boolean containsFeedDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } return internalGetFeedDevices().getMap().containsKey(key); } /** * Use {@link #getFeedDevicesMap()} instead. */ @java.lang.Deprecated public java.util.Map getFeedDevices() { return getFeedDevicesMap(); } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public java.util.Map getFeedDevicesMap() { return internalGetFeedDevices().getMap(); } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public java.lang.String getFeedDevicesOrDefault( java.lang.String key, java.lang.String defaultValue) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFeedDevices().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public java.lang.String getFeedDevicesOrThrow( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFeedDevices().getMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } return map.get(key); } public Builder clearFeedDevices() { internalGetMutableFeedDevices().getMutableMap() .clear(); return this; } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public Builder removeFeedDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } internalGetMutableFeedDevices().getMutableMap() .remove(key); return this; } /** * Use alternate mutation accessors instead. */ @java.lang.Deprecated public java.util.Map getMutableFeedDevices() { return internalGetMutableFeedDevices().getMutableMap(); } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public Builder putFeedDevices( java.lang.String key, java.lang.String value) { if (key == null) { throw new java.lang.NullPointerException(); } if (value == null) { throw new java.lang.NullPointerException(); } internalGetMutableFeedDevices().getMutableMap() .put(key, value); return this; } /** *
     * The Tensor objects fed in the callable and fetched from the callable
     * are expected to be backed by host (CPU) memory by default.
     * The options below allow changing that - feeding tensors backed by
     * device memory, or returning tensors that are backed by device memory.
     * The maps below map the name of a feed/fetch tensor (which appears in
     * 'feed' or 'fetch' fields above), to the fully qualified name of the device
     * owning the memory backing the contents of the tensor.
     * For example, creating a callable with the following options:
     * CallableOptions {
     *   feed: "a:0"
     *   feed: "b:0"
     *   fetch: "x:0"
     *   fetch: "y:0"
     *   feed_devices: {
     *     "a:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *   }
     *   fetch_devices: {
     *     "y:0": "/job:localhost/replica:0/task:0/device:GPU:0"
     *  }
     * }
     * means that the Callable expects:
     * - The first argument ("a:0") is a Tensor backed by GPU memory.
     * - The second argument ("b:0") is a Tensor backed by host memory.
     * and of its return values:
     * - The first output ("x:0") will be backed by host memory.
     * - The second output ("y:0") will be backed by GPU memory.
     * FEEDS:
     * It is the responsibility of the caller to ensure that the memory of the fed
     * tensors will be correctly initialized and synchronized before it is
     * accessed by operations executed during the call to Session::RunCallable().
     * This is typically ensured by using the TensorFlow memory allocators
     * (Device::GetAllocator()) to create the Tensor to be fed.
     * Alternatively, for CUDA-enabled GPU devices, this typically means that the
     * operation that produced the contents of the tensor has completed, i.e., the
     * CUDA stream has been synchronized (e.g., via cuCtxSynchronize() or
     * cuStreamSynchronize()).
     * 
* * map<string, string> feed_devices = 6; */ public Builder putAllFeedDevices( java.util.Map values) { internalGetMutableFeedDevices().getMutableMap() .putAll(values); return this; } private com.google.protobuf.MapField< java.lang.String, java.lang.String> fetchDevices_; private com.google.protobuf.MapField internalGetFetchDevices() { if (fetchDevices_ == null) { return com.google.protobuf.MapField.emptyMapField( FetchDevicesDefaultEntryHolder.defaultEntry); } return fetchDevices_; } private com.google.protobuf.MapField internalGetMutableFetchDevices() { onChanged();; if (fetchDevices_ == null) { fetchDevices_ = com.google.protobuf.MapField.newMapField( FetchDevicesDefaultEntryHolder.defaultEntry); } if (!fetchDevices_.isMutable()) { fetchDevices_ = fetchDevices_.copy(); } return fetchDevices_; } public int getFetchDevicesCount() { return internalGetFetchDevices().getMap().size(); } /** * map<string, string> fetch_devices = 7; */ public boolean containsFetchDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } return internalGetFetchDevices().getMap().containsKey(key); } /** * Use {@link #getFetchDevicesMap()} instead. */ @java.lang.Deprecated public java.util.Map getFetchDevices() { return getFetchDevicesMap(); } /** * map<string, string> fetch_devices = 7; */ public java.util.Map getFetchDevicesMap() { return internalGetFetchDevices().getMap(); } /** * map<string, string> fetch_devices = 7; */ public java.lang.String getFetchDevicesOrDefault( java.lang.String key, java.lang.String defaultValue) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFetchDevices().getMap(); return map.containsKey(key) ? map.get(key) : defaultValue; } /** * map<string, string> fetch_devices = 7; */ public java.lang.String getFetchDevicesOrThrow( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } java.util.Map map = internalGetFetchDevices().getMap(); if (!map.containsKey(key)) { throw new java.lang.IllegalArgumentException(); } return map.get(key); } public Builder clearFetchDevices() { internalGetMutableFetchDevices().getMutableMap() .clear(); return this; } /** * map<string, string> fetch_devices = 7; */ public Builder removeFetchDevices( java.lang.String key) { if (key == null) { throw new java.lang.NullPointerException(); } internalGetMutableFetchDevices().getMutableMap() .remove(key); return this; } /** * Use alternate mutation accessors instead. */ @java.lang.Deprecated public java.util.Map getMutableFetchDevices() { return internalGetMutableFetchDevices().getMutableMap(); } /** * map<string, string> fetch_devices = 7; */ public Builder putFetchDevices( java.lang.String key, java.lang.String value) { if (key == null) { throw new java.lang.NullPointerException(); } if (value == null) { throw new java.lang.NullPointerException(); } internalGetMutableFetchDevices().getMutableMap() .put(key, value); return this; } /** * map<string, string> fetch_devices = 7; */ public Builder putAllFetchDevices( java.util.Map values) { internalGetMutableFetchDevices().getMutableMap() .putAll(values); return this; } private boolean fetchSkipSync_ ; /** *
     * By default, RunCallable() will synchronize the GPU stream before returning
     * fetched tensors on a GPU device, to ensure that the values in those tensors
     * have been produced. This simplifies interacting with the tensors, but
     * potentially incurs a performance hit.
     * If this options is set to true, the caller is responsible for ensuring
     * that the values in the fetched tensors have been produced before they are
     * used. The caller can do this by invoking `Device::Sync()` on the underlying
     * device(s), or by feeding the tensors back to the same Session using
     * `feed_devices` with the same corresponding device name.
     * 
* * bool fetch_skip_sync = 8; */ public boolean getFetchSkipSync() { return fetchSkipSync_; } /** *
     * By default, RunCallable() will synchronize the GPU stream before returning
     * fetched tensors on a GPU device, to ensure that the values in those tensors
     * have been produced. This simplifies interacting with the tensors, but
     * potentially incurs a performance hit.
     * If this options is set to true, the caller is responsible for ensuring
     * that the values in the fetched tensors have been produced before they are
     * used. The caller can do this by invoking `Device::Sync()` on the underlying
     * device(s), or by feeding the tensors back to the same Session using
     * `feed_devices` with the same corresponding device name.
     * 
* * bool fetch_skip_sync = 8; */ public Builder setFetchSkipSync(boolean value) { fetchSkipSync_ = value; onChanged(); return this; } /** *
     * By default, RunCallable() will synchronize the GPU stream before returning
     * fetched tensors on a GPU device, to ensure that the values in those tensors
     * have been produced. This simplifies interacting with the tensors, but
     * potentially incurs a performance hit.
     * If this options is set to true, the caller is responsible for ensuring
     * that the values in the fetched tensors have been produced before they are
     * used. The caller can do this by invoking `Device::Sync()` on the underlying
     * device(s), or by feeding the tensors back to the same Session using
     * `feed_devices` with the same corresponding device name.
     * 
* * bool fetch_skip_sync = 8; */ public Builder clearFetchSkipSync() { fetchSkipSync_ = false; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFieldsProto3(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:tensorflow.CallableOptions) } // @@protoc_insertion_point(class_scope:tensorflow.CallableOptions) private static final org.tensorflow.framework.CallableOptions DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new org.tensorflow.framework.CallableOptions(); } public static org.tensorflow.framework.CallableOptions getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public CallableOptions parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new CallableOptions(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public org.tensorflow.framework.CallableOptions getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy