summaryrefslogtreecommitdiff
path: root/runtimes/neurun/src/compiler/BackendResolver.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtimes/neurun/src/compiler/BackendResolver.h')
-rw-r--r--runtimes/neurun/src/compiler/BackendResolver.h88
1 files changed, 0 insertions, 88 deletions
diff --git a/runtimes/neurun/src/compiler/BackendResolver.h b/runtimes/neurun/src/compiler/BackendResolver.h
deleted file mode 100644
index 4742b2d94..000000000
--- a/runtimes/neurun/src/compiler/BackendResolver.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2018 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_COMPILER_BACKEND_RESOLVER_H__
-#define __NEURUN_COMPILER_BACKEND_RESOLVER_H__
-
-#include <set>
-#include <unordered_map>
-#include <typeindex>
-
-#include "util/logging.h"
-#include "util/config/ConfigManager.h"
-#include "backend/BackendManager.h"
-#include "backend/interface/IStageGenerator.h"
-
-namespace neurun
-{
-namespace compiler
-{
-
-class BackendResolver
-{
-public:
- BackendResolver(const neurun::model::operand::Set &operands)
- {
- _backend_manager = std::make_shared<backend::BackendManager>(operands);
-
- const auto backend_all_str =
- config::ConfigManager::instance().get<std::string>("OP_BACKEND_ALLOPS");
- if (backend_all_str.compare("none") != 0)
- {
- VERBOSE(BackendResolver) << "Use backend for all ops: " << backend_all_str << std::endl;
-#define OP(InternalName, IsNnApi, NnApiName) \
- if (IsNnApi) \
- { \
- auto backend = _backend_manager->get(backend_all_str); \
- _gen_map[typeid(model::operation::InternalName)] = backend; \
- }
-#include "model/operation/Op.lst"
-#undef OP
- }
- else
- {
-#define OP(InternalName, IsNnApi, NnApiName) \
- if (IsNnApi) \
- { \
- const auto &backend_str = \
- config::ConfigManager::instance().get<std::string>("OP_BACKEND_" #NnApiName); \
- auto backend = _backend_manager->get(backend_str); \
- VERBOSE(BackendResolver) << "backend for " << #NnApiName << ": " << backend_str << std::endl; \
- _gen_map[typeid(model::operation::InternalName)] = backend; \
- }
-
-#include "model/operation/Op.lst"
-#undef OP
- }
- }
-
-public:
- const backend::Backend *getBackend(const std::type_index &type) { return _gen_map[type]; }
- const backend::Backend *getDefaultBackend() const
- {
- backend::Backend *default_backend = _backend_manager->get("cpu");
- return default_backend;
- }
-
-private:
- std::unordered_map<std::type_index, backend::Backend *> _gen_map;
- std::shared_ptr<backend::BackendManager> _backend_manager;
-};
-
-} // namespace compiler
-} // namespace neurun
-
-#endif // __NEURUN_COMPILER_BACKEND_RESOLVER_H__