Separately will need to evaluate impact on small cloud instances. They may have multiple cpu cores, x86, low memory, and many snap revisions. I.e. 4-5 snaps, with 2-3 revisions of each.
I wonder if it will make sense to set multi_percpu on x86/arm64/s390x/ppc64el (generic+cloud), but not on armhf/arm64 (pi) nor on riscv64 (generic/oem).
On a different tangent, it might be possible to improve _MULTI strategy to implement dynamic decompressor allocation, but also cap it based on available RAM. Such that it behaves closer to _SINGLE when there isn't enough spare RAM.
@waveform thanks for this.
Separately will need to evaluate impact on small cloud instances. They may have multiple cpu cores, x86, low memory, and many snap revisions. I.e. 4-5 snaps, with 2-3 revisions of each.
I wonder if it will make sense to set multi_percpu on x86/arm64/ s390x/ppc64el (generic+cloud), but not on armhf/arm64 (pi) nor on riscv64 (generic/oem).
On a different tangent, it might be possible to improve _MULTI strategy to implement dynamic decompressor allocation, but also cap it based on available RAM. Such that it behaves closer to _SINGLE when there isn't enough spare RAM.