ExaTN
graph_executor_lazy.hpp
1 
11 #ifndef EXATN_RUNTIME_LAZY_GRAPH_EXECUTOR_HPP_
12 #define EXATN_RUNTIME_LAZY_GRAPH_EXECUTOR_HPP_
13 
14 #include "tensor_graph_executor.hpp"
15 
16 namespace exatn {
17 namespace runtime {
18 
20 
21 public:
22 
23  virtual ~LazyGraphExecutor() = default;
24 
26  void execute(TensorGraph & dag) override;
27 
28  const std::string name() const override {return "lazy-dag-executor";}
29  const std::string description() const override {return "Lazy tensor graph executor";}
30  std::shared_ptr<TensorGraphExecutor> clone() override {return std::make_shared<LazyGraphExecutor>();}
31 
32 protected:
33 
34  VertexIdType nextExecutableNodeId(TensorGraph & dag);
35 };
36 
37 } //namespace runtime
38 } //namespace exatn
39 
40 #endif //EXATN_RUNTIME_LAZY_GRAPH_EXECUTOR_HPP_
exatn
Definition: DriverClient.hpp:10
exatn::runtime::LazyGraphExecutor::execute
void execute(TensorGraph &dag) override
Definition: graph_executor_lazy.cpp:6
exatn::runtime::LazyGraphExecutor::clone
std::shared_ptr< TensorGraphExecutor > clone() override
Definition: graph_executor_lazy.hpp:30
exatn::runtime::LazyGraphExecutor
Definition: graph_executor_lazy.hpp:19
exatn::runtime::TensorGraphExecutor
Definition: tensor_graph_executor.hpp:34
exatn::runtime::TensorGraph
Definition: tensor_graph.hpp:139