sapling/eden/mononoke/bulkops
Mark Juggurnauth-Thomas 33ec4db653 bounded_traversal: require futures to be boxed
Summary:
Bounded traversal's internal book-keeping moves the futures returned from fold and unfold callbacks around while they are being queued to be scheduled.  If these futures are large, then this can result in a significant portion of bounded traversal's CPU time being spent on `memcpy`ing these futures around.

This can be prevented by always boxing the futures that are returned to bounded traversal.  Make this a requirement by changing the type from `impl Future<...>` to `BoxFuture<...>`.

Reviewed By: mitrandir77

Differential Revision: D26997706

fbshipit-source-id: 23a3583adc23c4e7d3607a78e82fc9d1056691c3
2021-03-12 08:12:57 -08:00
..
bench mononoke: add new bulkops benchmark for middle of repo bounds 2021-03-09 09:29:50 -08:00
src bounded_traversal: require futures to be boxed 2021-03-12 08:12:57 -08:00
Cargo.toml third-party/rust: update futures 2021-03-04 06:42:55 -08:00