Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mutability/mlat-server
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: mutability/mlat-server
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: clock-sync-improvements
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 8 commits
  • 6 files changed
  • 1 contributor

Commits on Jul 7, 2015

  1. Configuration menu
    Copy the full SHA
    28ead03 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2015

  1. Configuration menu
    Copy the full SHA
    f65aaf6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    26ae6f5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9998433 View commit details
    Browse the repository at this point in the history
  4. Fix up clock state dump.

    mutability committed Jul 9, 2015
    Configuration menu
    Copy the full SHA
    f70d5c3 View commit details
    Browse the repository at this point in the history
  5. Teach clocknorm about scale/offset based prediction.

    Make _Predictor directly predict.
    
    When walking the tree, as we know the prediction function, combine each new
    step with the existing predictor to produce a single predictor for the whole
    conversion, rather than maintaining a list of predictors that need to be
    applied in turn.
    mutability committed Jul 9, 2015
    Configuration menu
    Copy the full SHA
    ee320c1 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2015

  1. Append to CPU profiles.

    mutability committed Jul 10, 2015
    Configuration menu
    Copy the full SHA
    5c72775 View commit details
    Browse the repository at this point in the history
  2. Build and use a clock normalization map.

    This finds a spanning forest that covers all receivers that have
    sync, and crunches the timestamp predictors that make up the edges
    so that there is a single predictor per receiver that knows how to
    convert timestamps from that receiver to a shared timescale per
    spanning tree.
    
    We can then use that mapping to do clock normalization much faster.
    
    The map has to be recomputed often as it will get stale fast, but even
    if we recompute once a second, it works out much cheaper than doing
    spanning-tree work on every mlat resolve.
    
    It also has some interesting side benefits due to having a more
    global view beyond the receivers that directly receiver a particular
    mlat result:
    
     * We can use a spanning path for conversion of a mlat result that
       includes receivers that did not see the mlat result.
     * If a receiver is synchronized with a Radarcape, it is also
       effectively synchronized with all receivers synchronized with
       _any_ Radarcape.
    
    The spanning tree in the UK testbed often ends up spanning Ireland through
    Germany, with all those receivers tied into a single clockbase and able
    to contribute useful timings to any mlat-able message they see.
    
    Also, the resulting map is compact (something like 4 values per receiver)
    and does not require any additional information to be able to do
    clock conversion. So it will make life easier when we start to
    want to split up mlat solving between processes: rather than having each
    subprocess have to do clock sync, we can do it once and push the results
    out to all subprocesses.
    mutability committed Jul 10, 2015
    Configuration menu
    Copy the full SHA
    1a95c60 View commit details
    Browse the repository at this point in the history
Loading