/usr/local/lib64/python3.6/site-packages/torch/include/caffe2/core
NameSizeModeActions
allocator.h1360644editdlrm
blob.h41680644editdlrm
blob_serialization.h107910644editdlrm
blob_serializer_base.h39050644editdlrm
blob_stats.h11270644editdlrm
common.h43290644editdlrm
common_cudnn.h98930644editdlrm
common_gpu.h214140644editdlrm
common_omp.h1560644editdlrm
context.h61740644editdlrm
context_base.h43820644editdlrm
context_gpu.h110140644editdlrm
cudnn_wrappers.h69560644editdlrm
db.h93520644editdlrm
distributions_stubs.h21610644editdlrm
event.h124200644editdlrm
event_cpu.h11920644editdlrm
export_c10_op_to_caffe2.h94870644editdlrm
export_caffe2_op_to_c10.h111010644editdlrm
flags.h740644editdlrm
graph.h52580644editdlrm
init.h64960644editdlrm
logging.h750644editdlrm
macros.h34260644editdlrm
memonger.h8170644editdlrm
module.h24730644editdlrm
net.h46340644editdlrm
net_async_base.h73970644editdlrm
net_async_scheduling.h9930644editdlrm
net_async_task.h8330644editdlrm
net_async_task_future.h19250644editdlrm
net_async_task_graph.h22530644editdlrm
net_async_tracing.h50930644editdlrm
net_dag_utils.h21460644editdlrm
net_parallel.h21440644editdlrm
net_simple.h26060644editdlrm
net_simple_refcount.h20970644editdlrm
numa.h720644editdlrm
observer.h38090644editdlrm
operator.h588720644editdlrm
operator_gradient.h102220644editdlrm
operator_schema.h184770644editdlrm
plan_executor.h2190644editdlrm
prof_dag_counters.h27510644editdlrm
qtensor.h66150644editdlrm
qtensor_serialization.h26240644editdlrm
scope_guard.h46750644editdlrm
static_tracepoint.h3980644editdlrm
static_tracepoint_elfx86.h55550644editdlrm
stats.h103650644editdlrm
storage.h7330644editdlrm
tensor.h186680644editdlrm
tensor_impl.h3510644editdlrm
tensor_int8.h4500644editdlrm
test_utils.h62850644editdlrm
timer.h12180644editdlrm
transform.h57410644editdlrm
types.h22480644editdlrm
workspace.h113050644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/include/caffe2/core/net_parallel.h (2144B)
#ifndef CAFFE2_CORE_NET_PARALLEL_H #define CAFFE2_CORE_NET_PARALLEL_H #include "caffe2/core/net_async_base.h" #include "caffe2/core/net_async_task_graph.h" C10_DECLARE_string(caffe2_task_graph_engine); namespace caffe2 { class ParallelNetExecutorHelper; class TORCH_API ParallelNet : public NetBase { public: ParallelNet(const std::shared_ptr& net_def, Workspace* ws); bool RunAsync() override; void Wait() override; bool SupportsAsync() override; std::vector GetOperators() const override; TaskThreadPoolBase* Pool(const DeviceOption& device_option); protected: bool handleRunError() override; virtual void finishRun(); virtual void reset(); ExecutionOptions options_; int num_workers_; std::unique_ptr helper_; std::shared_ptr task_graph_; AsyncTaskFuture* run_future_; std::vector operator_nodes_; std::vector operators_; std::mutex pools_mutex_; typedef std::unordered_map< int, std::unordered_map>> PoolsMap; PoolsMap cpu_pools_; PoolsMap gpu_pools_; TaskThreadPoolBase* poolGetter(PoolsMap& pools, int device_type, int device_id, int pool_size); friend class ParallelNetExecutorHelper; C10_DISABLE_COPY_AND_ASSIGN(ParallelNet); }; C10_DECLARE_SHARED_REGISTRY( TaskGraphRegistry, AsyncTaskGraphBase, ExecutorHelper*, const ExecutionOptions&); std::shared_ptr GetAsyncTaskGraph( ExecutorHelper* helper, const ExecutionOptions& options); class ParallelNetExecutorHelper : public ExecutorHelper { public: explicit ParallelNetExecutorHelper(ParallelNet* net) : net_(net) {} TaskThreadPoolBase* GetPool(const DeviceOption& option) const override { return net_->Pool(option); } std::vector GetOperators() const override { return net_->GetOperators(); } int GetNumWorkers() const override { return net_->num_workers_; } private: ParallelNet* net_; }; } // namespace caffe2 #endif // CAFFE2_CORE_NET_PARALLEL_H