Commit e5e81d68 authored by xiaojun.lin's avatar xiaojun.lin
Browse files

Upgrade Faiss to v1.6


Former-commit-id: 6726b3524bf4a21437255330c14191691de611c7
parent 95d085bc
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -257,7 +257,6 @@ ExecutionEngineImpl::Load(bool to_cache) {
Status
ExecutionEngineImpl::CopyToGpu(uint64_t device_id, bool hybrid) {
    if (hybrid) {
#if 1
        const std::string key = location_ + ".quantizer";
        std::vector<uint64_t> gpus = scheduler::get_gpu_pool();

@@ -306,7 +305,6 @@ ExecutionEngineImpl::CopyToGpu(uint64_t device_id, bool hybrid) {
            auto cached_quantizer = std::make_shared<CachedQuantizer>(pair.second);
            cache::GpuCacheMgr::GetInstance(device_id)->InsertItem(key, cached_quantizer);
        }
#endif
        return Status::OK();
    }

+3 −3
Original line number Diff line number Diff line
@@ -248,8 +248,8 @@ if(CUSTOMIZATION)
         set(FAISS_MD5 "f3b2ce3364c3fa7febd3aa7fdd0fe380") # commit-id 694e03458e6b69ce8a62502f71f69a614af5af8f branch-0.3.0
    endif()
else()
    set(FAISS_SOURCE_URL "https://github.com/facebookresearch/faiss/archive/v1.5.3.tar.gz")
    set(FAISS_MD5 "0bc12737b23def156f6a1eb782050135")
    set(FAISS_SOURCE_URL "https://github.com/milvus-io/faiss/archive/1.6.0.tar.gz")
    set(FAISS_MD5 "eb96d84f98b078a9eec04a796f5c792e")
endif()
message(STATUS "FAISS URL = ${FAISS_SOURCE_URL}")

+2 −1
Original line number Diff line number Diff line
@@ -86,7 +86,8 @@ GPUIVF::SerializeImpl() {
            faiss::Index* index = index_.get();
            faiss::Index* host_index = faiss::gpu::index_gpu_to_cpu(index);

            SealImpl();
            // TODO(linxj): support seal
            // SealImpl();

            faiss::write_index(host_index, &writer);
            delete host_index;
+6 −1
Original line number Diff line number Diff line
@@ -160,7 +160,7 @@ IVFSQHybrid::LoadQuantizer(const Config& conf) {
        index_composition->quantizer = nullptr;
        index_composition->mode = quantizer_conf->mode;  // only 1

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

        auto q = std::make_shared<FaissIVFQuantizer>();
@@ -354,5 +354,10 @@ IVFSQHybrid::LoadImpl(const BinarySet& index_binary) {
    GPUIVF::LoadImpl(index_binary);
}

void
IVFSQHybrid::set_index_model(IndexModelPtr model) {
    GPUIVF::set_index_model(model);
}

#endif
}  // namespace knowhere
+1 −1
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@
// specific language governing permissions and limitations
// under the License.

#include "Job.h"
#include "scheduler/job/Job.h"

namespace milvus {
namespace scheduler {
Loading