Skip to content
This repository was archived by the owner on Aug 16, 2023. It is now read-only.
This repository was archived by the owner on Aug 16, 2023. It is now read-only.

Discussion: do we need to keep support SSE42 as minimal requirements for running knowhere #800

Description

@matrixji

I'm integrating embd-milvus with 2.3 branch for the macos, it failed while run test with pymilvus, after a lit bit of investigation, the root cause is Knowhere compiled with avx2+ support: see here and macOS machine on GitHub action is a vm only support sse42. So it crashed with SIGILL, more logs could be fetched here.

SIGILL: illegal instruction
PC=0x10758d966 m=10 sigcode=1
signal arrived during cgo execution
instruction bytes: 0xc4 0xe2 0xf1 0xb9 0x5 0x29 0x83 0x4 0x0 0x48 0x83 0xc4 0x10 0x5d 0xc3 0x66

goroutine 993 [syscall]:
_ZN5faiss12getmillisecsEv
	/Users/runner/.milvus.io/milvus-server/2.3.0-beta.1/bin/libknowhere.dylib:0 pc=0x10758d967
_ZN5faiss10Clustering13train_encodedExPKhPKNS_5IndexERS3_PKf

If we still need to support Milvus run with sse42 as minimal instruction sets, this is should be fixed. Otherwise, If we mark avx2 as minimal supported instructions, I'll move those related verify works offline.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions