Closed Stebalien closed 2 years ago
Twiggy says that serde is the biggest problem, mostly due to monomorphization (which is also where it gets its speed).
@Stebalien where are with this? Can we scope what is indispensable for M1 and what we can push to M2?
I think we're going to need to compress, but we can punt to M2 if we really need to.
Although one thing that would be really nice is https://github.com/filecoin-project/ref-fvm/issues/321, of someone ends up having time.
Unchecked issues are not in scope of Phase 1 (nv16) and are now being tracked as individual issues targeting Phase 2.
No point in keeping this meta issue open.
Wherein I record my attempts to optimize wasm actors for size. To start with, the miner actor weighs 2.3MiB uncompressed, ~520KiB compressed (zstd).
wee_alloc
. Unfortunately, at these sizes, switching to the wee allocator doesn't really matter.lto=full
. Doesn't change anything.wasm-strip -Oz
. Brings it down to 2.1MiB uncompressed, doesn't help with compression.wasm-opt -Oz
(from binaryen). Brings it down to 2.0MiB uncompressed, reduces effectiveness of compression.