diff options
Diffstat (limited to 'runtime/neurun/backend/cpu/TensorManager.cc')
-rw-r--r-- | runtime/neurun/backend/cpu/TensorManager.cc | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/runtime/neurun/backend/cpu/TensorManager.cc b/runtime/neurun/backend/cpu/TensorManager.cc deleted file mode 100644 index a346e2cb4..000000000 --- a/runtime/neurun/backend/cpu/TensorManager.cc +++ /dev/null @@ -1,95 +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. - */ - -#include "TensorManager.h" - -namespace neurun -{ -namespace backend -{ -namespace cpu -{ - -TensorManager::TensorManager() - : _const_mgr{new MemoryManager("Bump")}, _nonconst_mgr{new MemoryManager()} -{ - // DO NOTHING -} - -void TensorManager::allocateConsts(void) { _const_mgr->allocate(); } - -void TensorManager::allocateNonconsts(void) { _nonconst_mgr->allocate(); } - -void TensorManager::deallocateConsts(void) { _const_mgr->deallocate(); } - -void TensorManager::deallocateNonconsts(void) { _nonconst_mgr->deallocate(); } - -void TensorManager::buildTensor(const ir::OperandIndex &ind, const ir::OperandInfo &tensor_info, - bool as_const) -{ - assert(_ind_to_mgr.find(ind) == _ind_to_mgr.end()); - if (as_const) - { - _const_mgr->buildTensor(ind, tensor_info); - _ind_to_mgr.insert({ind, *_const_mgr}); - } - else - { - _nonconst_mgr->buildTensor(ind, tensor_info); - _ind_to_mgr.insert({ind, *_nonconst_mgr}); - } -} - -void TensorManager::claimPlan(const ir::OperandIndex &ind, uint32_t size) -{ - assert(_ind_to_mgr.find(ind) != _ind_to_mgr.end()); - _ind_to_mgr.at(ind).claimPlan(ind, size); -} - -void TensorManager::releasePlan(const ir::OperandIndex &ind) -{ - assert(_ind_to_mgr.find(ind) != _ind_to_mgr.end()); - _ind_to_mgr.at(ind).releasePlan(ind); -} - -std::shared_ptr<operand::Tensor> TensorManager::at(const ir::OperandIndex &ind) -{ - assert(_ind_to_mgr.find(ind) != _ind_to_mgr.end()); - return _ind_to_mgr.at(ind).tensors().at(ind); -} - -ir::OperandIndexMap<std::shared_ptr<operand::Tensor>> &TensorManager::constTensors(void) -{ - return _const_mgr->tensors(); -} - -ir::OperandIndexMap<std::shared_ptr<operand::Tensor>> &TensorManager::nonconstTensors(void) -{ - return _nonconst_mgr->tensors(); -} - -void TensorManager::iterate(const std::function<void(const ir::OperandIndex &)> &fn) -{ - for (auto it : _nonconst_mgr->tensors()) - fn(it.first); - - for (auto it : _const_mgr->tensors()) - fn(it.first); -} - -} // namespace cpu -} // namespace backend -} // namespace neurun |