2
0
mirror of synced 2025-02-24 06:38:14 +00:00

9 Commits

Author SHA1 Message Date
Matt Joiner
934944e498 Add AjwernerBtree as an alternative btree backing for piece request order
Also add some scans to benchmarks. Make a few changes to reduce allocations using piece request order.
2022-01-22 18:40:33 +11:00
Matt Joiner
c54dc22592 Benchmark PieceRequestOrder with varying styles of path hint usage
Add per-piece piece request order path hints
2022-01-22 18:39:36 +11:00
Matt Joiner
62060fb897 Use tidwall/btree generics for piece request ordering 2022-01-22 18:39:36 +11:00
Matt Joiner
506ff8d037 Use relative availabilities to determine piece request order
Most overhead comes from peers that connect that have everything, and we just increment every single piece's availability. There may be some unresolved determinism with torrents that share the same ordering.
2021-12-23 14:00:00 +11:00
Matt Joiner
1668a18859 Some optimizations in PieceRequestOrder.Update and item comparisons 2021-12-15 19:18:16 +11:00
Matt Joiner
1bc84e316f Don't group Torrent piece request orders without a storage capacity together 2021-12-12 18:35:02 +11:00
Matt Joiner
8c5df03e14 Minimize allocations due to heap escapes 2021-12-12 18:35:01 +11:00
Matt Joiner
1b92249f2a Improve panic message 2021-12-12 18:35:01 +11:00
Matt Joiner
94bb5d40ba Implement piece request ordering with retained state 2021-12-12 18:35:01 +11:00