|
|
|
|
|
by londons_explore
228 days ago
|
|
Once sequencing is done, the matching algorithm can run with some parallelism. For example, Order A and order B might interact with eachother... but they also might not. If we assume they do not, we can have them processed totally independently and in parallel, and then only if we later determine they should have interacted with each other then we throw away the results and reprocess. It is very similar to the way speculative execution happens in CPU's. Assume something then throw away the results if your assumption was wrong. |
|
Happy to discuss more, might be off the mark... these optimizations are always very interesting in their theoretical vs actual perf impact.