Reading EeePC900 battery info causes stalls when using SLUB (was Re: How how latent should non-preemptive scheduling be?)

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Sitsofe Wheeler wrote:

After weeks of head scratching as to why these latencies didn't occur
using the xandros 2.6.21.4 kernel (but keeping the same userspace) when
my own kernels would always show this problem I finally found the answer
after reading
http://tservice.net.ru/~s0mbre/blog/devel/other/2008_10_01 on kernel
planet - SLUB can cause regressions compared to SLAB. Switching from 
SLUB to SLAB made the problem more or less disappear (which I guess 
makes sense given the large number of kmem_* calls that are made when 
reading the battery).

My understanding with the memory allocators is that SLOB is the smallest 
and simplest. Its forté is that it uses very little memory which makes 
it ideal for embedded systems and is the easiest allocator to 
understand. The downside is that it might tend towards memory 
fragmentation the longer a system runs and is apparently a little bit 
slower than SLAB. The SLAB allocator is something that the linux kernel 
has had for many years and was a good performer until the pressures to 
perform with large SMP systems started to come in to play (at which 
point lots of memory would be used up on fixed structures - 
http://lwn.net/Articles/229984/ ). SLUB is the newest allocator, scales 
up well and has finer grained diagnostics that SLAB.

Prior to today my understanding was that SLUB would be able to replace 
SLAB in all scenarios and perform just as well or better. However now 
I'm not so sure (SLAB appears to be less latent than SLUB). Other than 
SLUB's newness are there cases where SLAB should be chosen instead of 
SLUB (e.g. uniprocessor desktop systems with hundreds of megabytes of 
RAM)? Will SLAB exist as an alternative to SLUB for certain setups?

-- 
Sitsofe | http://sucs.org/~sits
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Fri Sep 19, 4:54 am)
Re: How how latent should non-preemptive scheduling be?, Peter Zijlstra, (Fri Sep 19, 7:20 am)
Re: How how latent should non-preemptive scheduling be?, Steven Rostedt, (Mon Sep 22, 5:07 am)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Mon Sep 22, 11:33 pm)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Tue Sep 23, 9:30 am)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Tue Sep 23, 12:39 pm)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Tue Sep 23, 3:01 pm)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Sun Sep 28, 1:56 pm)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Mon Sep 29, 4:11 pm)
Re: How how latent should non-preemptive scheduling be?, Sitsofe Wheeler, (Tue Sep 30, 6:18 am)
Reading EeePC900 battery info causes stalls when using SLU ..., Sitsofe Wheeler, (Sat Oct 4, 3:50 am)