tf-encrypted / moose

Secure distributed dataflow framework for encrypted machine learning and data processing
Apache License 2.0
57 stars 15 forks source link

Moose compile: put `rmp_serde` under feature flag #1020

Open mortendahl opened 2 years ago

mortendahl commented 2 years ago

We see that ~7% for the generated LLVM code is related to rmp_serde

357926 (6.1%)     258 (0.2%)  <&mut rmp_serde::decode::Deserializer<R,C> as serde::de::Deserializer>::deserialize_any
139718 (2.4%)    4356 (3.9%)  core::ops::function::FnOnce::call_once
104948 (1.8%)    1484 (1.3%)  alloc::alloc::box_free
 85110 (1.5%)    4177 (3.8%)  core::ops::function::FnOnce::call_once{{vtable.shim}}
 83337 (1.4%)    1651 (1.5%)  <core::result::Result<T,E> as core::ops::try_trait::Try>::branch
 69237 (1.2%)     258 (0.2%)  rmp_serde::decode::Deserializer<R,C>::read_str_data

and it might be worth to see if making it optional gives us much in terms of rustc performance when compiling Moose.