-
Notifications
You must be signed in to change notification settings - Fork 358
Description
Hi, thanks for the great project. I'd like to report an issue I encountered.
According to the tutorial from Commandline interface for building and search SSD based indices , I'm trying to learn how diskann works and the execution performance. However, I met the following problems. When I execute the command ./apps/utils/compute_groundtruth --data_type float --dist_fn l2 --base_file data/sift/sift_learn.fbin --query_file data/sift/sift_query.fbin --gt_file data/sift/sift_query_learn_gt100 --K 100, it shows a core dumped shown as below.
Reading bin file data/sift/sift_query.fbin ...
#pts in part = 10000, #dims = 128, size = 5120000B
Finished reading part of the bin file.
Finished converting part data to float.
Reading bin file data/sift/sift_learn.fbin ...
#pts = 100000, #dims = 128
Number of parts: 1
Reading bin file data/sift/sift_learn.fbin ...
#pts in part = 100000, #dims = 128, size = 51200000B
Finished reading part of the bin file.
Finished converting part data to float.
Illegal instruction (core dumped)
When I try to construct the index, it shows the same result. Then I try to debug with gdb, and the result is
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Downloading separate debug info for system-supplied DSO at 0x7ffff7fc3000
Downloading separate debug info for /home/ubuntu/anaconda3/lib/libmkl_intel_ilp64.so
Downloading separate debug info for /home/ubuntu/anaconda3/lib/libmkl_intel_thread.so
Downloading separate debug info for /lib/x86_64-linux-gnu/libomp.so.5
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGILL, Illegal instruction.
0x0000555555567e39 in boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>* boost::program_options::value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) ()
(gdb) bt
#0 0x0000555555567e39 in boost::program_options::typed_value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, char>* boost::program_options::value<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) ()
#1 0x000055555555c031 in main ()
My system architecture is:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 40 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 56
On-line CPU(s) list: 0-55
Vendor ID: GenuineIntel
Model name: QEMU Virtual CPU version 2.5+
CPU family: 15
Model: 107
Thread(s) per core: 1
Core(s) per socket: 56
Socket(s): 1
Stepping: 1
BogoMIPS: 3990.62
Flags: fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc nopl xtopology cpuid tsc_known_freq pni ssse3 cx16 ss
e4_1 sse4_2 x2apic popcnt aes hypervisor lahf_lm cpuid_fault pti
Virtualization features:
Hypervisor vendor: KVM
Virtualization type: full
Caches (sum of all):
L1d: 1.8 MiB (56 instances)
L1i: 1.8 MiB (56 instances)
L2: 224 MiB (56 instances)
L3: 16 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-55
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: KVM: Mitigation: VMX unsupported
L1tf: Mitigation; PTE Inversion
Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown
Meltdown: Mitigation; PTI
Mmio stale data: Unknown: No mitigations
Reg file data sampling: Not affected
Retbleed: Not affected
Spec rstack overflow: Not affected
Spec store bypass: Vulnerable
Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Spectre v2: Mitigation; Retpolines; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Retpoline
Srbds: Not affected
Tsx async abort: Not affected
Vmscape: Not affected
And my cpu may not support AVX2. My problem is that how to successfully run the command. Thanks in advance! I'm looking forward to your reply.