Hi Nhat, On Tuesday, April 1, 2025 at 8:24:15 pm +02:00, Nhat Pham wrote: >> With zblock, it is possible to densely arrange objects of various sizes >> resulting in low internal fragmentation. Also this allocator tries to >> fill incomplete blocks instead of adding new ones, in many cases >> providing a compression ratio substantially higher than z3fold and zbud >> (though lower than zmalloc's). >> Do we have data for comparison here? Yeah, for instance we normally run *stress-ng --vm 4 --vm-bytes 4G --vm-keep --timeout 10m --metrics-brief* zblock: stress-ng: metrc: [499] stressor bogo ops real time usr time sys time bogo ops/s bogo ops/s stress-ng: metrc: [499] (secs) (secs) (secs) (real time) (usr+sys time) stress-ng: metrc: [499] vm 43755994 600.53 2382.34 15.19 72861.92 18250.50 zsmalloc: stress-ng: metrc: [491] stressor bogo ops real time usr time sys time bogo ops/s bogo ops/s stress-ng: metrc: [491] (secs) (secs) (secs) (real time) (usr+sys time) stress-ng: metrc: [491] vm 41769859 601.37 2381.85 16.56 69457.56 17415.62 which gives just a little short of 5% of advantage for zblock. >> with regard to average performance and worst execution times, thus >> allowing for better response time and real-time characteristics of the >> whole system. >> By performance, do you mean latency or throughput or storage density? Latency and throughput. It's hard to compete with zsmalloc in storage density indeed. ~Vitaly