Skip to content

Commit 642083d

Browse files
committed
Clarifies behavior of using Direct IO for vector data.
1 parent d79d337 commit 642083d

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

deploy-manage/production-guidance/optimize-performance/approximate-knn-search.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,14 +121,18 @@ You can check the current value in `KiB` using `lsblk -o NAME,RA,MOUNTPOINT,TYPE
121121
`blockdev` expects values in 512 byte sectors whereas `lsblk` reports values in `KiB`. As an example, to temporarily set readahead to `128KiB` for `/dev/nvme0n1`, specify `blockdev --setra 256 /dev/nvme0n1`.
122122
::::
123123

124-
125124
## Use Direct IO when the vector data does not fit in RAM
125+
126126
```{applies_to}
127127
stack: preview 9.1
128128
serverless: unavailable
129129
```
130+
130131
If your indices are of type `bbq_hnsw` and your nodes don't have enough off-heap RAM to store all vector data in memory, you may see very high query latencies. Vector data includes the HNSW graph, quantized vectors, and raw float32 vectors.
131132

132-
In these scenarios, direct IO can significantly reduce query latency. Enable it by setting the JVM option `vector.rescoring.directio=true` on all vector search nodes in your cluster.
133+
In these scenarios, direct IO can significantly reduce query latency.
134+
Enable it by setting the JVM option `vector.rescoring.directio=true` on all vector search nodes in your cluster. {applies_to}`stack: preview 9.1.1`
135+
136+
`vector.rescoring.directio` is enabled by default. {applies_to}`stack: preview 9.1.0`
133137

134138
Only use this option if you're experiencing very high query latencies on indices of type `bbq_hnsw`. Otherwise, enabling direct IO may increase your query latencies.

0 commit comments

Comments
 (0)