Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf(query): Update CompressedBin IntersectionAlgo (#9000)
Updated algo to intersect. Getting upto 175% improvment overall ``` goos: linux goarch: amd64 pkg: github.com/dgraph-io/dgraph/algo cpu: 11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz │ in1 │ main_in │ │ sec/op │ sec/op vs base │ ListIntersectCompressBin/compressed:IntersectWith:ratio=0.01:size=100:overlap=0.01:-8 91.21n ± ∞ ¹ 387.70n ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.1:size=100:overlap=0.01:-8 336.0n ± ∞ ¹ 1733.0n ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=1:size=100:overlap=0.01:-8 1.093µ ± ∞ ¹ 3.481µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=10:size=100:overlap=0.01:-8 4.719µ ± ∞ ¹ 8.600µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=100:size=100:overlap=0.01:-8 19.76µ ± ∞ ¹ 44.32µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.01:size=1000:overlap=0.01:-8 481.7n ± ∞ ¹ 784.2n ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.1:size=1000:overlap=0.01:-8 1.502µ ± ∞ ¹ 3.667µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=1:size=1000:overlap=0.01:-8 5.454µ ± ∞ ¹ 36.977µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=10:size=1000:overlap=0.01:-8 33.14µ ± ∞ ¹ 70.73µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=100:size=1000:overlap=0.01:-8 179.8µ ± ∞ ¹ 485.1µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.01:size=10000:overlap=0.01:-8 3.214µ ± ∞ ¹ 4.459µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.1:size=10000:overlap=0.01:-8 12.00µ ± ∞ ¹ 32.78µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=1:size=10000:overlap=0.01:-8 76.90µ ± ∞ ¹ 356.05µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=10:size=10000:overlap=0.01:-8 371.6µ ± ∞ ¹ 923.1µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=100:size=10000:overlap=0.01:-8 1.894m ± ∞ ¹ 5.141m ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.01:size=100000:overlap=0.01:-8 48.13µ ± ∞ ¹ 60.59µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.1:size=100000:overlap=0.01:-8 146.7µ ± ∞ ¹ 611.9µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=1:size=100000:overlap=0.01:-8 943.7µ ± ∞ ¹ 3359.6µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=10:size=100000:overlap=0.01:-8 3.926m ± ∞ ¹ 8.849m ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=100:size=100000:overlap=0.01:-8 20.78m ± ∞ ¹ ListIntersectCompressBin/compressed:IntersectWith:ratio=0.01:size=1000000:overlap=0.01:-8 862.4µ ± ∞ ¹ 1142.5µ ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=0.1:size=1000000:overlap=0.01:-8 1.599m ± ∞ ¹ 7.878m ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=1:size=1000000:overlap=0.01:-8 9.791m ± ∞ ¹ 33.871m ± ∞ ¹ ~ (p=1.000 n=1) ² ListIntersectCompressBin/compressed:IntersectWith:ratio=10:size=1000000:overlap=0.01:-8 44.40m ± ∞ ¹ geomean 66.19µ 104.6µ +175.93% ³ ```
- Loading branch information