Investigate, implement and benchmark Vamana graph builder batch sizes reordering
Maintainer antworten meist innerhalb von 5 Tagen
@razdoburdin arbeitet bereits daran.
Seit 09.10.2026.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Claude suggested the following to address Dmitry's comment. It also requires <numeric>.
// Grow batches geometrically so early inserts can see each other in the sparse
// graph; otherwise a batch collapses onto one hub whose pruning orphans nodes.
// Holds batch sizes until the prefix sum below turns them into bounds.
std::vector<size_t> batch_bounds;
// Bound: ramp-up batches + full-size batches + leading 0.
batch_bounds.reserve(std::bit_width(batchsize) + num_batches + 1);
batch_bounds.push_back(0);
for (size_t size = 1, inserted = 0; inserted < num_nodes;
size = std::min(2 * size, batchsize)) {
batch_bounds.push_back(std::min(num_nodes - inserted, size));
inserted += batch_bounds.back();
}
// Only the final remainder batch can be smaller than its predecessor. Moving it
// into the ramp keeps sizes non-decreasing.
auto last = std::prev(batch_bounds.end());
std::rotate(
std::upper_bound(batch_bounds.begin(), last, *last), last, batch_bounds.end()
);
std::partial_sum(batch_bounds.begin(), batch_bounds.end(), batch_bounds.begin());
Originally posted by @mihaic in https://github.com/intel/ScalableVectorSearch/pull/405#discussion_r4189842666
- Vorherrschende Sprache
- C++
- Sterne
- 241
- Forks
- 48
- Ø Merge
- 4 T. 21 Std.
- Gemergte PRs (30 T.)
- 11
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus intel/ScalableVectorSearch
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
intel/ScalableVectorSearch#356 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
intel/ScalableVectorSearch#469 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
enhancement
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 32/100
intel/ScalableVectorSearch#460 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
intel/ScalableVectorSearch#438 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
CI: tier the test matrix into PR / main / nightly to cut Actions minutesEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 32/100
intel/ScalableVectorSearch#432 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 5 Tagen
Alle Issues in intel/ScalableVectorSearch
Ähnliche Issues
-
runtime: lf_f128_mod is documented as fmodq (truncating) but implements floor-based modulo; unusedOffeninternal correctness low priority rt_lib
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 87/100
-
PriorityNotificationQueue::wakeUpAll() loses the wake-up for a thread that is not waiting yetEvtl. vergeben @matejk hat das heute übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
pocoproject/poco#5674 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
bug docs GUI
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
sonic-pi-net/sonic-pi#3609 ·
-
Unreachable code warningOffenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
SanderMertens/flecs#2395 ·
Maintainer antworten meist innerhalb von 1 Tag