TimelyDataflow / timely-dataflow

A modular implementation of timely dataflow in Rust
MIT License
3.25k stars 273 forks source link

Activate only by channel ID #526

Closed antiguru closed 6 months ago

antiguru commented 1 year ago

This changes activation to avoid an associated event, which is currently not used anymore. It also switches to a Vec to contain the activations, and deduplicates before activating operators.

This improves performance in edge cases:

➜  timely-dataflow git:(activation_no_event) time taskset 1 target/release/examples/pingpong $((2**20)) 64
taskset 1 target/release/examples/pingpong $((2**20)) 64  3.63s user 0.00s system 99% cpu 3.638 total
➜  timely-dataflow-master git:(master) time taskset 1 target/release/examples/pingpong $((2**20)) 64
taskset 1 target/release/examples/pingpong $((2**20)) 64  3.32s user 0.78s system 99% cpu 4.106 total