GNOME Bugzilla – Bug 795828
Drop use of GSlice in GStreamer?
Last modified: 2018-11-03 12:46:20 UTC
Created attachment 371701 [details] [review] Drop use of GSlice allocator in favour of plain g_malloc()/g_free() Just gonna put this here. Enjoy. The "Benchmarks show" bit could probably need more verification, but in the few tests I have run I have found either positive performance impact or no discernable performance impact. It's hard to do proper measurements for our purposes, we need to test alloc from one thread and free in another thread for realistic usage, while at the same time having a test case where allocation/free takes up most of the cycles. I have run some tests on a low-powered windows ec2 machine, that showed GSLice being ridiculously slow compared to the system allocator there (windows server 2006 =~ win10). IIRC main reason to use GSlice was because the sys allocator on ~Windows XP was horrendous, but that doesn't seem to be the case any longer, and on Linux the glibc allocator seems superior nowadays.
Created attachment 371702 [details] [review] sysmem, buffer, bufferlist: no need to store slice_size any more
Created attachment 371707 [details] Results from Fedora 28 on a ThinkPad x230 On my setup, GSlice is appreciably faster than malloc(). Even when using tcmalloc, gslice+tcmalloc is even faster! So I would close this as invalid.
oh I can't read graphics, tcmalloc is a lot faster than gslice.. But GSlice is fsater than plain malloc...
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/291.