Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ Please mark all change in change log and use the ticket from JIRA. - \#658 - Milvus error out when building SQ8H index without GPU resources - \#668 - Update badge of README - \#670 - Random failure of unittest db_test::SEARCH_TEST - \#674 - Server down in stability test - \#705 - Fix search SQ8H crash without GPU resource ## Feature Loading core/src/db/engine/ExecutionEngineImpl.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -400,10 +400,11 @@ ExecutionEngineImpl::CopyToGpu(uint64_t device_id, bool hybrid) { Status ExecutionEngineImpl::CopyToIndexFileToGpu(uint64_t device_id) { #ifdef MILVUS_GPU_VERSION // the ToIndexData is only a placeholder, cpu-copy-to-gpu action is performed in gpu_num_ = device_id; auto to_index_data = std::make_shared<ToIndexData>(PhysicalSize()); cache::DataObjPtr obj = std::static_pointer_cast<cache::DataObj>(to_index_data); milvus::cache::GpuCacheMgr::GetInstance(device_id)->InsertItem(location_, obj); milvus::cache::GpuCacheMgr::GetInstance(device_id)->InsertItem(location_ + "_placeholder", obj); #endif return Status::OK(); } Loading core/src/scheduler/task/BuildIndexTask.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ XBuildIndexTask::Load(milvus::scheduler::LoadType type, uint8_t device_id) { type_str = "DISK2CPU"; } else if (type == LoadType::CPU2GPU) { stat = to_index_engine_->CopyToIndexFileToGpu(device_id); type_str = "CPU2GPU"; type_str = "CPU2GPU:" + std::to_string(device_id); } else { error_msg = "Wrong load type"; stat = Status(SERVER_UNEXPECTED_ERROR, error_msg); Loading Loading @@ -128,6 +128,7 @@ XBuildIndexTask::Execute() { // step 3: build index try { ENGINE_LOG_DEBUG << "Begin build index for file:" + table_file.location_; index = to_index_engine_->BuildIndex(table_file.location_, (EngineType)table_file.engine_type_); if (index == nullptr) { throw Exception(DB_ERROR, "index NULL"); Loading core/src/scheduler/task/SearchTask.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -125,7 +125,7 @@ XSearchTask::Load(LoadType type, uint8_t device_id) { hybrid = true; } stat = index_engine_->CopyToGpu(device_id, hybrid); type_str = "CPU2GPU"; type_str = "CPU2GPU:" + std::to_string(device_id); } else if (type == LoadType::GPU2CPU) { stat = index_engine_->CopyToCpu(); type_str = "GPU2CPU"; Loading core/src/wrapper/VecImpl.h +1 −1 Original line number Diff line number Diff line Loading @@ -108,7 +108,7 @@ class ToIndexData : public cache::DataObj { } private: int64_t size_; int64_t size_ = 0; }; } // namespace engine Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ Please mark all change in change log and use the ticket from JIRA. - \#658 - Milvus error out when building SQ8H index without GPU resources - \#668 - Update badge of README - \#670 - Random failure of unittest db_test::SEARCH_TEST - \#674 - Server down in stability test - \#705 - Fix search SQ8H crash without GPU resource ## Feature Loading
core/src/db/engine/ExecutionEngineImpl.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -400,10 +400,11 @@ ExecutionEngineImpl::CopyToGpu(uint64_t device_id, bool hybrid) { Status ExecutionEngineImpl::CopyToIndexFileToGpu(uint64_t device_id) { #ifdef MILVUS_GPU_VERSION // the ToIndexData is only a placeholder, cpu-copy-to-gpu action is performed in gpu_num_ = device_id; auto to_index_data = std::make_shared<ToIndexData>(PhysicalSize()); cache::DataObjPtr obj = std::static_pointer_cast<cache::DataObj>(to_index_data); milvus::cache::GpuCacheMgr::GetInstance(device_id)->InsertItem(location_, obj); milvus::cache::GpuCacheMgr::GetInstance(device_id)->InsertItem(location_ + "_placeholder", obj); #endif return Status::OK(); } Loading
core/src/scheduler/task/BuildIndexTask.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ XBuildIndexTask::Load(milvus::scheduler::LoadType type, uint8_t device_id) { type_str = "DISK2CPU"; } else if (type == LoadType::CPU2GPU) { stat = to_index_engine_->CopyToIndexFileToGpu(device_id); type_str = "CPU2GPU"; type_str = "CPU2GPU:" + std::to_string(device_id); } else { error_msg = "Wrong load type"; stat = Status(SERVER_UNEXPECTED_ERROR, error_msg); Loading Loading @@ -128,6 +128,7 @@ XBuildIndexTask::Execute() { // step 3: build index try { ENGINE_LOG_DEBUG << "Begin build index for file:" + table_file.location_; index = to_index_engine_->BuildIndex(table_file.location_, (EngineType)table_file.engine_type_); if (index == nullptr) { throw Exception(DB_ERROR, "index NULL"); Loading
core/src/scheduler/task/SearchTask.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -125,7 +125,7 @@ XSearchTask::Load(LoadType type, uint8_t device_id) { hybrid = true; } stat = index_engine_->CopyToGpu(device_id, hybrid); type_str = "CPU2GPU"; type_str = "CPU2GPU:" + std::to_string(device_id); } else if (type == LoadType::GPU2CPU) { stat = index_engine_->CopyToCpu(); type_str = "GPU2CPU"; Loading
core/src/wrapper/VecImpl.h +1 −1 Original line number Diff line number Diff line Loading @@ -108,7 +108,7 @@ class ToIndexData : public cache::DataObj { } private: int64_t size_; int64_t size_ = 0; }; } // namespace engine Loading