// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: tensorflow/core/framework/step_stats.proto

package org.tensorflow.proto.framework;

public interface NodeExecStatsOrBuilder extends
    // @@protoc_insertion_point(interface_extends:tensorflow.NodeExecStats)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <pre>
   * TODO(tucker): Use some more compact form of node identity than
   * the full string name.  Either all processes should agree on a
   * global id (cost_id?) for each node, or we should use a hash of
   * the name.
   * </pre>
   *
   * <code>string node_name = 1;</code>
   */
  java.lang.String getNodeName();
  /**
   * <pre>
   * TODO(tucker): Use some more compact form of node identity than
   * the full string name.  Either all processes should agree on a
   * global id (cost_id?) for each node, or we should use a hash of
   * the name.
   * </pre>
   *
   * <code>string node_name = 1;</code>
   */
  com.google.protobuf.ByteString
      getNodeNameBytes();

  /**
   * <code>int64 all_start_micros = 2;</code>
   */
  long getAllStartMicros();

  /**
   * <code>int64 op_start_rel_micros = 3;</code>
   */
  long getOpStartRelMicros();

  /**
   * <code>int64 op_end_rel_micros = 4;</code>
   */
  long getOpEndRelMicros();

  /**
   * <code>int64 all_end_rel_micros = 5;</code>
   */
  long getAllEndRelMicros();

  /**
   * <code>repeated .tensorflow.AllocatorMemoryUsed memory = 6;</code>
   */
  java.util.List<org.tensorflow.proto.framework.AllocatorMemoryUsed> 
      getMemoryList();
  /**
   * <code>repeated .tensorflow.AllocatorMemoryUsed memory = 6;</code>
   */
  org.tensorflow.proto.framework.AllocatorMemoryUsed getMemory(int index);
  /**
   * <code>repeated .tensorflow.AllocatorMemoryUsed memory = 6;</code>
   */
  int getMemoryCount();
  /**
   * <code>repeated .tensorflow.AllocatorMemoryUsed memory = 6;</code>
   */
  java.util.List<? extends org.tensorflow.proto.framework.AllocatorMemoryUsedOrBuilder> 
      getMemoryOrBuilderList();
  /**
   * <code>repeated .tensorflow.AllocatorMemoryUsed memory = 6;</code>
   */
  org.tensorflow.proto.framework.AllocatorMemoryUsedOrBuilder getMemoryOrBuilder(
      int index);

  /**
   * <code>repeated .tensorflow.NodeOutput output = 7;</code>
   */
  java.util.List<org.tensorflow.proto.framework.NodeOutput> 
      getOutputList();
  /**
   * <code>repeated .tensorflow.NodeOutput output = 7;</code>
   */
  org.tensorflow.proto.framework.NodeOutput getOutput(int index);
  /**
   * <code>repeated .tensorflow.NodeOutput output = 7;</code>
   */
  int getOutputCount();
  /**
   * <code>repeated .tensorflow.NodeOutput output = 7;</code>
   */
  java.util.List<? extends org.tensorflow.proto.framework.NodeOutputOrBuilder> 
      getOutputOrBuilderList();
  /**
   * <code>repeated .tensorflow.NodeOutput output = 7;</code>
   */
  org.tensorflow.proto.framework.NodeOutputOrBuilder getOutputOrBuilder(
      int index);

  /**
   * <code>string timeline_label = 8;</code>
   */
  java.lang.String getTimelineLabel();
  /**
   * <code>string timeline_label = 8;</code>
   */
  com.google.protobuf.ByteString
      getTimelineLabelBytes();

  /**
   * <code>int64 scheduled_micros = 9;</code>
   */
  long getScheduledMicros();

  /**
   * <code>uint32 thread_id = 10;</code>
   */
  int getThreadId();

  /**
   * <code>repeated .tensorflow.AllocationDescription referenced_tensor = 11;</code>
   */
  java.util.List<org.tensorflow.proto.framework.AllocationDescription> 
      getReferencedTensorList();
  /**
   * <code>repeated .tensorflow.AllocationDescription referenced_tensor = 11;</code>
   */
  org.tensorflow.proto.framework.AllocationDescription getReferencedTensor(int index);
  /**
   * <code>repeated .tensorflow.AllocationDescription referenced_tensor = 11;</code>
   */
  int getReferencedTensorCount();
  /**
   * <code>repeated .tensorflow.AllocationDescription referenced_tensor = 11;</code>
   */
  java.util.List<? extends org.tensorflow.proto.framework.AllocationDescriptionOrBuilder> 
      getReferencedTensorOrBuilderList();
  /**
   * <code>repeated .tensorflow.AllocationDescription referenced_tensor = 11;</code>
   */
  org.tensorflow.proto.framework.AllocationDescriptionOrBuilder getReferencedTensorOrBuilder(
      int index);

  /**
   * <code>.tensorflow.MemoryStats memory_stats = 12;</code>
   */
  boolean hasMemoryStats();
  /**
   * <code>.tensorflow.MemoryStats memory_stats = 12;</code>
   */
  org.tensorflow.proto.framework.MemoryStats getMemoryStats();
  /**
   * <code>.tensorflow.MemoryStats memory_stats = 12;</code>
   */
  org.tensorflow.proto.framework.MemoryStatsOrBuilder getMemoryStatsOrBuilder();

  /**
   * <code>int64 all_start_nanos = 13;</code>
   */
  long getAllStartNanos();

  /**
   * <code>int64 op_start_rel_nanos = 14;</code>
   */
  long getOpStartRelNanos();

  /**
   * <code>int64 op_end_rel_nanos = 15;</code>
   */
  long getOpEndRelNanos();

  /**
   * <code>int64 all_end_rel_nanos = 16;</code>
   */
  long getAllEndRelNanos();

  /**
   * <code>int64 scheduled_nanos = 17;</code>
   */
  long getScheduledNanos();
}
