message: Identify when an engine has outputs that are unchanged inputs
diff: @@ -122,10 +122,13 @@ public:
  }
  }
  + all_outputs_are_inputs = (num == output_map.size());
  +
  return Status::OK();
  }
  std::map<int64,int64> output_map;
  + bool all_outputs_are_inputs;
  private:
  std::vector<poplar::Tensor> parameters_;
  @@ -199,6 +202,9 @@ StatusOr<std::unique_ptr<Executable>> PoplarCompiler::Compile(
  std::vector<poplar::program::Program> progs;
  progs.push_back(visitor.sequence);
  + if (visitor.all_outputs_are_inputs) {
  + VLOG(1) << "Skip engine compilation - all outputs are inputs";
  + } else {
  try {
  VLOG(1) << "Compile engine " << hlo_module->name();
  @@ -209,6 +215,7 @@ StatusOr<std::unique_ptr<Executable>> PoplarCompiler::Compile(
  port::StrCat("[Poplar Engine] ",
  e.what()));
  }
  + }
  std::unique_ptr<Executable> executable;
  executable.reset(
  