You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
asyncfncombining_future(compute:implFuture<Output = ()>){async{}.await;
compute.await;}fnmain(){let blob = [0u8;65536];let monster = combining_future(combining_future(combining_future(combining_future(asyncmove{async{}.await;println!("{:?}", blob)}))));println!("{}", std::mem::size_of_val(&monster));//~^ prints at least 1000000 bytes}
We would like to deliver the first async-future memory packing scheme -Zpack-coroutine-layout as a nightly-only compiler flag, followed by a more aggressive memory packing scheme built on top of the foundation of the first pack-coroutine-layout support. Meanwhile, we would like to conduct two experiments in two possible approaches that could further improve the memory economy of async-futures.
Explore the memory layout optimisation by enabling coroutine state inlining.
Explore direct lowering of Rust async-futures, and coroutines in particular, into native LLVM coroutine intrinsics.
This issue is intended for status updates only.
For general questions or comments, please contact a goal owner or post in the Zulip topic.
Activity
tomassedovic commentedon May 5, 2026
This issue is intended for status updates only.
For general questions or comments, please contact the owner(s) directly.