Analyzing Internal and External Parallelism in Multi-Index FAISS Retrieval: Threads, Processes, OpenMP and the Cost of Concurrency
Abstract
This paper presents a performance-engineering study of a multi-index FAISS retrieval pipeline. Three independent retrieval sources were evaluated using sequential execution, thread-level parallelism through ThreadPoolExecutor, and process-level parallelism through ProcessPoolExecutor. Additional experiments were conducted using OMP_NUM_THREADS=1 to isolate the contribution of FAISS internal parallelism from externally managed concurrency. Execution time measurements and profiling data were collected to understand the performance implications of different execution models. The results demonstrate the relationship between retrieval workload granularity, internal OpenMP parallelism, external concurrency mechanisms, and parallel execution overhead.
Artifacts and Supporting Evidence: Benchmark scripts, raw measurements, profiling statistics, and analysis artifacts are available here.
Notice: This manuscript is a technical report and has not undergone peer review.
Recommended citation: Suwesh Prasad Sah. (2026). Analyzing Internal and External Parallelism in Multi-Index FAISS Retrieval: Threads, Processes, OpenMP and the Cost of Concurrency (Version 1.0). Zenodo. https://doi.org/10.5281/zenodo.22115697
Download Paper
