#10 fine-tune features

Open
opened 1 year ago by j3tracey · 0 comments

We currently aren't paying that much attention to the features we have enabled in our dependencies. Notably, right now we're using the "full" feature from tokio, for both the client and server. Since we have LTO enabled for release builds now, if LLVM is doing its job, it shouldn't make a performance or size difference, but trimming things down to only the features we need should at least help build times. Alternatively, if there are features that enable optimized code paths, like SIMD support, we should consider enabling those (though that particular flag seems to require nightly rust, which is a non-starter).

We currently aren't paying that much attention to the features we have enabled in our dependencies. Notably, right now we're [using the "full" feature from tokio](https://git-crysp.uwaterloo.ca/j3tracey/MGen/src/78e76feb2cf05a04014e4f2741937918462161d6/Cargo.toml#L12), for both the client and server. Since we have [LTO enabled for release builds now](https://git-crysp.uwaterloo.ca/j3tracey/MGen/commit/c0ee99a1349ae33e0a17e2ebdc9e129f92af79cc), if LLVM is doing its job, it shouldn't make a performance or size difference, but trimming things down to only the features we need should at least help build times. Alternatively, if there are features that enable optimized code paths, like [SIMD support](https://docs.rs/crate/rand/latest/features#simd_support), we should consider enabling those (though that particular flag seems to require nightly rust, which is a non-starter).
Sign in to join this conversation.
No Milestone
No assignee
1 Participants
Loading...
Cancel
Save
There is no content yet.