배경개인프로젝트로 faiss를 쓰면서, 많은 벡터의 연산을 처리하는데 IndexFlatIP가 GPU기반이 아닌 CPU 기반이라는걸 알았다.CPU 기반이고 멀티 스레드도 안쓰는데 어찌 그렇게 빠를까?― 내부 연산 원리·메모리 구조·SIMD‧멀티스레드까지 한눈에 정리 ―0. TL;DRIndexFlatIP는벡터를 연속 메모리에 “줄세우고”SIMD(AVX2/AVX-512) + OpenMP 멀티코어 로 내적을 계산한 뒤힙(Heap) 기반 partial-sort 로 Top-k 결과만 반환한다.이 세 가지를 C++ 레벨에서 한 번에 수행하기 때문에,동일 작업을 파이썬 루프(혹은 단순 NumPy)로 돌릴 때보다 10¹~10³ 배 빠르다.1. 함수 스냅숏으로 흐름 잡기idx = faiss.IndexFlatIP(dim) ..