diff --git a/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.cc b/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.cc index ef9201596f..ccd2093f53 100644 --- a/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.cc +++ b/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.cc @@ -28,8 +28,8 @@ namespace mindspore { namespace somas { constexpr auto kSolNumThresholdMultiThread = 8; -Status SomasSolverPre::checkTensors(TensorsDescMap *pTensors, uint32_t index1, uint32_t index2) { - auto &tensors = *pTensors; +Status SomasSolverPre::CheckTensors(const TensorsDescMap *pTensors, uint32_t index1, uint32_t index2) { + auto tensors = *pTensors; if (nullptr == tensors[index1]) { MS_LOG(WARNING) << "NULL tensor received in continuous constraint (tensor index " << index1 << ")"; return FAILED; @@ -47,14 +47,14 @@ Status SomasSolverPre::checkTensors(TensorsDescMap *pTensors, uint32_t index1, u << " already has a left tensor (id: " << tensors[index2]->left_->index_; return SUCCESS; } -Status SomasSolverPre::addContiguousInfoInMap(const vector> &continuous_v, TensorsDescMap *pTensors) { +Status SomasSolverPre::AddContiguousInfoInMap(const vector> &continuous_v, TensorsDescMap *pTensors) { auto &tensors = *pTensors; // creating S Lists for (auto &aux : continuous_v) { for (uint32_t i = 0; i < aux.size() - 1; i++) { uint32_t index1 = aux[i]; uint32_t index2 = aux[i + 1]; - if (checkTensors(pTensors, index1, index2) == FAILED) { + if (CheckTensors(pTensors, index1, index2) == FAILED) { return FAILED; } tensors[index1]->right_ = tensors[index2]; @@ -63,14 +63,15 @@ Status SomasSolverPre::addContiguousInfoInMap(const vector> &cont } return SUCCESS; } -Status SomasSolverPre::addContiguousInfoInMultiMaps(const vector> &continuous_v, - vector *vecTensorsMap, TensorsDescMap *pTensors) { +Status SomasSolverPre::AddContiguousInfoInMultiMaps(const vector> &continuous_v, + vector *vecTensorsMap, + const TensorsDescMap *pTensors) { // creating S Lists for (auto &aux : continuous_v) { for (uint32_t i = 0; i < aux.size() - 1; i++) { uint32_t index1 = aux[i]; uint32_t index2 = aux[i + 1]; - if (checkTensors(pTensors, index1, index2) == FAILED) { + if (CheckTensors(pTensors, index1, index2) == FAILED) { return FAILED; } for (size_t sol = 0; sol < vecTensorsMap->size(); sol++) { @@ -82,7 +83,7 @@ Status SomasSolverPre::addContiguousInfoInMultiMaps(const vector> } return SUCCESS; } -vector SomasSolverPre::createTensorsMaps(const TensorsDescMap &tensors, size_t total_sol) { +vector SomasSolverPre::CreateTensorsMaps(const TensorsDescMap &tensors, size_t total_sol) { vector vecTensorsMap(total_sol); vecTensorsMap[0] = tensors; for (auto &pairT : tensors) { @@ -92,7 +93,7 @@ vector SomasSolverPre::createTensorsMaps(const TensorsDescMap &t vecTensorsMap[sol].insert(std::make_pair(pairT.first, newDescPtr)); } } - return std::move(vecTensorsMap); + return vecTensorsMap; } Status SomasSolverPre::Solving(const session::KernelGraph *graph, TensorsDescMap *ptensors, const std::vector *pConstraints, @@ -110,8 +111,8 @@ Status SomasSolverPre::Solving(const session::KernelGraph *graph, TensorsDescMap if (isMultiThreadValid) { vector> solvers; std::vector tasks; - vector vecTensorsMap = createTensorsMaps(tensors, total_sol); - if (addContiguousInfoInMultiMaps(continuous_v, &vecTensorsMap, ptensors) == FAILED) { + vector vecTensorsMap = CreateTensorsMaps(tensors, total_sol); + if (AddContiguousInfoInMultiMaps(continuous_v, &vecTensorsMap, ptensors) == FAILED) { return FAILED; } auto start = std::chrono::system_clock::now(); @@ -167,7 +168,7 @@ Status SomasSolverPre::Solving(const session::KernelGraph *graph, TensorsDescMap MS_LOG(INFO) << "Time elapsed: " << total_time << " ms"; MS_LOG(INFO) << "Spread:" << static_cast((worst - best) / static_cast(best * 100.0)) << " %%"; } else { - if (addContiguousInfoInMap(continuous_v, ptensors) == FAILED) { + if (AddContiguousInfoInMap(continuous_v, ptensors) == FAILED) { return FAILED; } std::shared_ptr pSolver = std::make_shared(tensors, pConstraints, 0, false); diff --git a/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.h b/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.h index f418ead759..b920ef5dd6 100644 --- a/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.h +++ b/mindspore/ccsrc/backend/optimizer/somas/somas_solver_pre.h @@ -196,17 +196,17 @@ class SomasSolverPre { void Log(const session::KernelGraph *graph, const TensorsDescMap &tensors, const std::vector *pConstraints_v, const vector> &continuous_v); - Status checkTensors(TensorsDescMap *tensors, uint32_t index1, uint32_t index2); - Status addContiguousInfoInMap(const vector> &continuous_v, TensorsDescMap *tensors); - Status addContiguousInfoInMultiMaps(const vector> &continuous_v, vector *vecTensorsMap, - TensorsDescMap *tensors); + Status CheckTensors(const TensorsDescMap *pTensors, uint32_t index1, uint32_t index2); + Status AddContiguousInfoInMap(const vector> &continuous_v, TensorsDescMap *pTensors); + Status AddContiguousInfoInMultiMaps(const vector> &continuous_v, vector *vecTensorsMap, + const TensorsDescMap *pTensors); private: size_t max_offset_; void SolverInputLog(const session::KernelGraph *graph, const TensorsDescMap &tensors, const std::vector *pConstraints_v, const vector> &continuous_v); void SolverOutputLog(const session::KernelGraph *graph, const TensorsDescMap &tensors) const; - vector createTensorsMaps(const TensorsDescMap &tensors, size_t total_sol); + vector CreateTensorsMaps(const TensorsDescMap &tensors, size_t total_sol); void TensorRelationLog(const std::vector *pConstraints, const session::KernelGraph *graph); }; using SomasSolverPrePtr = std::shared_ptr;