Re: kswapd continuously active

From: Jan Engelhardt
Date: Wed Feb 10 2010 - 10:23:56 EST


Hi,


>On Mon, Feb 08 2010, Jan Engelhardt wrote:
>
>> Could it be that there is something synchronize_rcu()-like in the
>> game that-- as a result of how RCU works-- just takes ages with 24
>> VCPUs?
>
>The only synchronize_rcu() involved in the writeback code happens when
>a bdi exits, so you should not hit that. It'll do call_rcu() for work
>completions, but 1) you should not see a lot of work entries, and 2)
>lots of other kernel code will do that, too.
>
>Are you seeing a lot of CPU usage? What does eg perf top -a say?

top - 16:19:42 up 1:02, 3 users, load average: 3.05, 3.87, 3.51
Cpu(s): 0.0%us, 0.2%sy, 0.0%ni, 98.2%id, 1.6%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 8063800k total, 6676472k used, 1387328k free, 767040k buffers
Swap: 0k total, 0k used, 0k free, 4775464k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
26354 root 20 0 3472 1704 1184 R 4 0.0 0:00.33 top
26198 jengelh 20 0 2864 1368 1152 S 4 0.0 0:03.72 watch
574 root 20 0 0 0 0 D 3 0.0 0:52.20 jbd2/sda6-8
312 root 20 0 0 0 0 R 1 0.0 0:29.29 flush-8:0
1 root 20 0 2408 936 808 S 0 0.0 0:01.13 init


When it comes down hard, i.e. when there is always new data arriving
while sys_sync is working, the loadavg is usually in the range of
1.0*CPUs up to 2.0*CPUs. The top dump shown here is after quiescing
writers.

>And what setup is this, I didn't realize you were running a virtualized
>setup?

It is real; but I usually use the term VCPU because this iron has
1 CPU with 6 cores with 24 threads, not 24 CPU (packages).

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/