Skip to content
Snippets Groups Projects
Closed Core Services: 3.7 Tracking Issue
  • View options
  • Core Services: 3.7 Tracking Issue

  • View options
  • Closed Issue created by Warren Gifford

    Created by: mrnugget

    Goal

    99th percentile latency of indexed search at 42req/s with 20k repos is under 2s.

    Availability

    Team:

    • Hackweek(s) July 22nd - Aug 2nd (see details here)
    • @tsenart & @mrnugget in San Diego for GopherCon from July 22th-27th
    • @tsenart, @mrnugget & @keegancsmith in Berlin for Core Meetup August 5th-10th

    Invidividuals:

    • @mrnugget: Not working August 12th-16th
    • @tsenart Available
    • @keegancsmith Available

    Background

    A requirement for future work on Zoekt performance is to define a performance model of Zoekt's current architecture that allows us to predict Zoekt's performance to a certain extent.

    After doing back-of-the-napkin math, we came up with the following formula:

    "With N cores and M shards it can take up to X to search a single shard when aiming to do 42req/s (T)"

    IMG_4654

    With variables plugged in, that gives us:

    • "With 384 cores and 30000 shards and 42 req/s it can take a maximum of 300us to search a single shard"
    • "With 1 core and 30000 shards and 42 req/s it can take a maximum of 0.79us to search a single shard"

    Planned work

    Moar Ideas

    • Reduce contention in Zoekt
    • Improve indexData.simplify in Zoekt
    • Improve parsing of newlines in Zoekt
    • Shard compaction
    • Shard compression (are we I/O bound?)
    0 of 10 checklist items completed

    Linked items 0

  • Link items together to show that they're related.

    Activity

    • All activity
    • Comments only
    • History only
    • Newest first
    • Oldest first
    Loading Loading Loading Loading Loading Loading Loading Loading Loading Loading