Loading CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ Please mark all change in change log and use the ticket from JIRA. - \#533 - NSG build failed with MetricType Inner Product - \#543 - client raise exception in shards when search results is empty - \#545 - Avoid dead circle of build index thread when error occurs - \#552 - Server down during building index_type: IVF_PQ using GPU-edition - \#561 - Milvus server should report exception/error message or terminate on mysql metadata backend error ## Feature Loading core/src/index/unittest/test_nsg/test_nsg.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -42,7 +42,8 @@ class NSGInterfaceTest : public DataGen, public ::testing::Test { SetUp() override { // Init_with_default(); #ifdef MILVUS_GPU_VERSION knowhere::FaissGpuResourceMgr::GetInstance().InitDevice(DEVICEID, 1024 * 1024 * 200, 1024 * 1024 * 600, 2); int64_t MB = 1024 * 1024; knowhere::FaissGpuResourceMgr::GetInstance().InitDevice(DEVICEID, MB * 200, MB * 600, 1); #endif Generate(256, 1000000 / 100, 1); index_ = std::make_shared<knowhere::NSG>(); Loading core/src/wrapper/ConfAdapter.cpp +7 −2 Original line number Diff line number Diff line Loading @@ -134,7 +134,7 @@ IVFPQConfAdapter::Match(const TempMetaConf& metaconf) { /* * Faiss 1.6 * Only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-quantizer are currently supporte with * Only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-quantizer are currently supported with * no precomputed codes. Precomputed codes supports any number of dimensions, but will involve memory overheads. */ static std::vector<int64_t> support_dim_per_subquantizer{32, 28, 24, 20, 16, 12, 10, 8, 6, 4, 3, 2, 1}; Loading @@ -152,7 +152,12 @@ IVFPQConfAdapter::Match(const TempMetaConf& metaconf) { if (resset.empty()) { // todo(linxj): throw exception here. return nullptr; WRAPPER_LOG_ERROR << "The dims of PQ is wrong : only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-" "quantizer are currently supported with no precomputed codes."; throw WrapperException( "The dims of PQ is wrong : only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims " "per sub-quantizer are currently supported with no precomputed codes."); // return nullptr; } static int64_t compression_level = 1; // 1:low, 2:high if (compression_level == 1) { Loading core/unittest/wrapper/test_wrapper.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -182,6 +182,7 @@ TEST_P(KnowhereWrapperTest, SERIALIZE_TEST) { TEST(whatever, test_config) { milvus::engine::TempMetaConf conf; conf.nprobe = 16; conf.dim = 128; auto nsg_conf = std::make_shared<milvus::engine::NSGConfAdapter>(); nsg_conf->Match(conf); nsg_conf->MatchSearch(conf, milvus::engine::IndexType::NSG_MIX); Loading Loading
CHANGELOG.md +1 −0 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ Please mark all change in change log and use the ticket from JIRA. - \#533 - NSG build failed with MetricType Inner Product - \#543 - client raise exception in shards when search results is empty - \#545 - Avoid dead circle of build index thread when error occurs - \#552 - Server down during building index_type: IVF_PQ using GPU-edition - \#561 - Milvus server should report exception/error message or terminate on mysql metadata backend error ## Feature Loading
core/src/index/unittest/test_nsg/test_nsg.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -42,7 +42,8 @@ class NSGInterfaceTest : public DataGen, public ::testing::Test { SetUp() override { // Init_with_default(); #ifdef MILVUS_GPU_VERSION knowhere::FaissGpuResourceMgr::GetInstance().InitDevice(DEVICEID, 1024 * 1024 * 200, 1024 * 1024 * 600, 2); int64_t MB = 1024 * 1024; knowhere::FaissGpuResourceMgr::GetInstance().InitDevice(DEVICEID, MB * 200, MB * 600, 1); #endif Generate(256, 1000000 / 100, 1); index_ = std::make_shared<knowhere::NSG>(); Loading
core/src/wrapper/ConfAdapter.cpp +7 −2 Original line number Diff line number Diff line Loading @@ -134,7 +134,7 @@ IVFPQConfAdapter::Match(const TempMetaConf& metaconf) { /* * Faiss 1.6 * Only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-quantizer are currently supporte with * Only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-quantizer are currently supported with * no precomputed codes. Precomputed codes supports any number of dimensions, but will involve memory overheads. */ static std::vector<int64_t> support_dim_per_subquantizer{32, 28, 24, 20, 16, 12, 10, 8, 6, 4, 3, 2, 1}; Loading @@ -152,7 +152,12 @@ IVFPQConfAdapter::Match(const TempMetaConf& metaconf) { if (resset.empty()) { // todo(linxj): throw exception here. return nullptr; WRAPPER_LOG_ERROR << "The dims of PQ is wrong : only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims per sub-" "quantizer are currently supported with no precomputed codes."; throw WrapperException( "The dims of PQ is wrong : only 1, 2, 3, 4, 6, 8, 10, 12, 16, 20, 24, 28, 32 dims " "per sub-quantizer are currently supported with no precomputed codes."); // return nullptr; } static int64_t compression_level = 1; // 1:low, 2:high if (compression_level == 1) { Loading
core/unittest/wrapper/test_wrapper.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -182,6 +182,7 @@ TEST_P(KnowhereWrapperTest, SERIALIZE_TEST) { TEST(whatever, test_config) { milvus::engine::TempMetaConf conf; conf.nprobe = 16; conf.dim = 128; auto nsg_conf = std::make_shared<milvus::engine::NSGConfAdapter>(); nsg_conf->Match(conf); nsg_conf->MatchSearch(conf, milvus::engine::IndexType::NSG_MIX); Loading