Commit d7994da7 authored by jinhai's avatar jinhai
Browse files

Merge branch 'fix_hybrid' into 'branch-0.5.0'

Fix hybrid

See merge request megasearch/milvus!717

Former-commit-id: 3914bc9a9efca8b3b638856bc4c22f87104a386e
parents 342a986e e0e5ac88
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ Please mark all change in change log and use the ticket from JIRA.
- MS-647 - [monitor] grafana display average cpu-temp
- MS-644 - Search crashed with index-type: flat
- MS-624 - Search vectors failed if time ranges long enough
- MS-652 - IVFSQH quantization double free

## Improvement
- MS-552 - Add and change the easylogging library
+18 −2
Original line number Diff line number Diff line
@@ -79,8 +79,24 @@ IVFSQHybrid::CopyGpuToCpu(const Config& config) {

VectorIndexPtr
IVFSQHybrid::CopyCpuToGpu(const int64_t& device_id, const Config& config) {
    auto p = CopyCpuToGpuWithQuantizer(device_id, config);
    return p.first;
    if (auto res = FaissGpuResourceMgr::GetInstance().GetRes(device_id)) {
        ResScope rs(res, device_id, false);
        faiss::gpu::GpuClonerOptions option;
        option.allInGpu = true;

        faiss::IndexComposition index_composition;
        index_composition.index = index_.get();
        index_composition.quantizer = nullptr;
        index_composition.mode = 0;  // copy all

        auto gpu_index = faiss::gpu::index_cpu_to_gpu(res->faiss_res.get(), device_id, &index_composition, &option);

        std::shared_ptr<faiss::Index> device_index = std::shared_ptr<faiss::Index>(gpu_index);;
        auto new_idx = std::make_shared<IVFSQHybrid>(device_index, device_id, res);
        return new_idx;
    } else {
        KNOWHERE_THROW_MSG("CopyCpuToGpu Error, can't get gpu_resource");
    }
}

void