-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
faiss crash when doing the search #596
Comments
Can you rerun this using the |
|
I have find the work around, close comments |
Hi author of faiss:
The cuda-memcheck takes a really long time to run, I run 3 days and do not finished.
But I find a workaround to avoid this errors. thanks for your support.
I have another issues if you can help me:
1. Current faiss support PQ<=96, in PQScanMultiPassNoPrecomputed.cu it has the switch RUN_PQ(96);
2. The current k(nprobe) only support less or equal than 1024
Is it possible if I want to break these two limits? Do you have the code? If you do not have the code , could you please give me some guide to me(how to do it easily)? and how long it might takes to change the code in your estimation.
…------------------------------------------------------------------
发件人:Jeff Johnson <notifications@github.com>
发送时间:2018年9月26日(星期三) 08:07
收件人:facebookresearch/faiss <faiss@noreply.github.com>
抄 送:GitHubProgress3 <seal_w2000@aliyun.com>; Author <author@noreply.github.com>
主 题:Re: [facebookresearch/faiss] faiss crash when doing the search (#596)
Can you rerun this using the cuda-memcheck program to see what errors it reports?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
k or nprobe > 1024 will not be supported any time soon, if ever, for the GPU. |
The vector dimension is 512. currently I use PQ 64, I wonder if PQ 128/256 can make the search accuracy better
------------------------------------------------------------------
发件人:Jeff Johnson <notifications@github.com>
发送时间:2018年10月16日(星期二) 11:20
收件人:facebookresearch/faiss <faiss@noreply.github.com>
抄 送:GitHubProgress3 <seal_w2000@aliyun.com>; State change <state_change@noreply.github.com>
主 题:Re: [facebookresearch/faiss] faiss crash when doing the search (#596)
k or nprobe > 1024 will not be supported any time soon, if ever, for the GPU.
What dimension are your vectors? What PQ size do you want? The max PQ size may not change either, but this is easier to implement. I'm wondering if it is in fact useful for your case.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.
|
PCA reduction to, say, 128 or 256 dimensions might be a better strategy than PQ on such a high dimensional vector. It is likely that the variation across the dimensions is very non-uniform anyways. |
float16 IVF flat would also be more efficient, faster and take the same amount of memory as PQ 256 on a 512 dimensional vector. PQ is a form of lossy compression of the vectors anyways. |
hi, i have the same problem, have you fixed it? how? i need your help |
Hi @GitHubProgress3, how did you solve issue in question? Thanks. |
I have 8 tesla P4 cards in my machine, each GPU contain three
faiss::gpu::GpuIndexIVFPQ
objects working on three databases, each data base size is6250000(number of features)*128(each feature have 128 dimensions)*sizeof(float)
.During training:the parameters are
2.The searching code is
During searching: the paramenters are:
during searching, the code crash, it crash when the second
faiss::gpu::GpuIndexIVFPQ
object is doing the searching.3.The gdb information is:
a) program do not crash when I using only 1 GPU or 2 GPUs.
b) I have checked the memory on the CPU size when doing the cudaMemcpy(device to host), the memory on the CPU side do not have any error. I can read the each memory address on the CPU side.
c) Sometime the program success in running,if it success on the first search, it will keep on running on the following loop search. Sometime it failed on the first time, the debug information is on the above.
d) If I only use two faiss::gpu::GpuIndexIVFPQ objects, each data base have 9375000 features. the program never crash
e) I check the GPU memory when doing search, each GPU have about 1GB sizes left when doing searching.
Platform
OS: Ubuntu 14.04
cuda 8.0
gcc 4.8.4
Running on:
The text was updated successfully, but these errors were encountered: