James Liu
James Liu
@hymm @cart I've successfully forked `async_executor` and augmented it to internally keep track of different priority task queues This likely has even better utilization (and potentially lower overhead) as it...
Noticed we could strip out all of the `RwLock`s in the implementation if we provided the executor full information about the thread distribution at initialization: something we can easily do....
Another thought I'll try out tonight: removing the locks on the local queues makes directly assigning to them "free". We can afford to skip the global queue entirely when scheduling...
Added a number of optimizations: - Removed the local queue Arcs, and replaced them with a lifetimed borrow. Should avoid pointer chasing while workstealing and spawning tasks. - Split Sleepers...
> Taking a look now. Excited to see what you've been cooking up :) > > > Added a number of optimizations: > > How certain are you that each...
IMO we should merge #2250 first. This particular change is pretty heavily involved, and while the merge conflicts are going to be bad in either direction, going #2250 first then...
A bit more digging, and it seems like the local `Option
Upstreamed an issue for this https://github.com/rust-lang/rust/issues/98468
This seems to be fixed in the latest nightly: https://godbolt.org/z/9PzKWfY1K. Probably can close this when Rust 1.64 lands.
This seems to have been fixed as of 1.64's release.