diff options
Diffstat (limited to 'runtime/neurun/core/src/exec/ParallelExecutor.h')
-rw-r--r-- | runtime/neurun/core/src/exec/ParallelExecutor.h | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/runtime/neurun/core/src/exec/ParallelExecutor.h b/runtime/neurun/core/src/exec/ParallelExecutor.h deleted file mode 100644 index 54377fd9e..000000000 --- a/runtime/neurun/core/src/exec/ParallelExecutor.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2019 Samsung Electronics Co., Ltd. All Rights Reserved - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __NEURUN_EXEC_PARALLEL_EXECUTOR_H__ -#define __NEURUN_EXEC_PARALLEL_EXECUTOR_H__ - -#include <list> -#include <queue> -#include <unordered_map> - -#include "FunctionSequence.h" -#include "Job.h" -#include "ir/OperandIndexSequence.h" -#include "ir/Index.h" -#include "cpp14/memory.h" -#include "exec/DataflowExecutor.h" -#include "ParallelScheduler.h" - -namespace neurun -{ -namespace exec -{ - -/** - * @brief Class to execute Graph in parallel - */ -class ParallelExecutor : public DataflowExecutor -{ -protected: - void notify(uint32_t finished_job_id) override; - -public: - /** - * @brief Constructs a ParallelExecutor object - * - * @param graph Graph object - * @param operand_context (Only for input/output operand data access) - * @param code_map Compiled code map - * @param ranks Operation ranks for ordering execution - */ - ParallelExecutor(const ir::Graph &graph, - const std::shared_ptr<compiler::OperandContext> &operand_context, - std::unique_ptr<backend::TensorManagerSet> tensor_mgrs, CodeMap &&code_map); - - void executeImpl() override; - -private: - std::condition_variable _cv_jobs; - std::mutex _mu_jobs; - std::unique_ptr<ParallelScheduler> _scheduler; -}; - -} // namespace exec -} // namespace neurun - -#endif // __NEURUN_EXEC_PARALLEL_EXECUTOR_H__ |