On 12/02/2016 10:49 PM, Jorge Ramirez wrote: > On 12/02/2016 01:33 PM, Philippe Gerum wrote: >> I plan to phase out TLSF entirely, which has poor performances with >> respect to memory fragmentation (the numbers are actually pretty ugly). >> So either we live with the current state of affairs until TLSF is >> replaced, or a trivial patch preventing the extension will do. > > the TLSF website [1] claims an average fragmentation lower than 15% an > a maximum of 25%.
Which is not that great. Besides, I suspect those figures to have been obtained on a 32bit CPU architecture. Trying on a 64bit one, e.g. allocating 24 byte blocks or less from a 8Mb pool, I can see the worst case doubling. The Xenomai core typically allocates small blocks. Some attempts to fix this issue with the original TLSF exist: https://github.com/mattconte/tlsf. However, I don't think TLSF best matches the allocation pattern we have in kernel space. > What do you hope the replacement algorithm will provide? > > [1] http://www.gii.upv.es/tlsf/ > Less than 10%. In addition, the cobalt core allocator direly needs improvements on the block release path, either by adding it a free page bitmap like the pshared allocator now has, or by going for the drop in replacement Gilles wrote. There is also the option of unifying the implementation on the latter, replacing both the current cobalt allocator and tlsf in the same move. -- Philippe. _______________________________________________ Xenomai mailing list [email protected] https://xenomai.org/mailman/listinfo/xenomai
