You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
when saving/loading a graph of 100 vectors with 256 dimensions.
@@ -130,18 +130,18 @@ $$
130
130
131
131
where:
132
132
* $n$ is the number of vectors in the graph
133
-
* $\text{size(id)}$ is the average size of the ID in bytes
133
+
* $\text{size(key)}$ is the average size of the key in bytes
134
134
* $M$ is the maximum number of neighbors each node can have
135
135
* $d$ is the dimensionality of the vectors
136
136
* $mem_{graph}$ is the memory used by the graph structure across all layers
137
137
* $mem_{base}$ is the memory used by the vectors themselves in the base or 0th layer
138
138
139
139
You can infer that:
140
-
* Connectivity ($M$) is very expensive if IDs are large
141
-
* If $d \cdot 4$ is far larger than $M \cdot \text{size(id)}$, you should expect linear memory usage spent on representing vector data
142
-
* If $d \cdot 4$ is far smaller than $M \cdot \text{size(id)}$, you should expect $n \cdot \log(n)$ memory usage spent on representing graph structure
140
+
* Connectivity ($M$) is very expensive if keys are large
141
+
* If $d \cdot 4$ is far larger than $M \cdot \text{size(key)}$, you should expect linear memory usage spent on representing vector data
142
+
* If $d \cdot 4$ is far smaller than $M \cdot \text{size(key)}$, you should expect $n \cdot \log(n)$ memory usage spent on representing graph structure
143
143
144
-
In the example of a graph with 256 dimensions, and $M = 16$, with 8 byte IDs, you would see that each vector takes:
144
+
In the example of a graph with 256 dimensions, and $M = 16$, with 8 byte keys, you would see that each vector takes:
0 commit comments