Google
  Web www.spinics.net

Q: (2.6.16 & ext3) bad SMP load balancing when writing to ext3 on slow device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Hi,

while copying large remote files for an USB memory stick formatted with ext3 using 
scp, I noticed a stall in wrie speed. Looking at the system with top I saw:
top - 09:25:25 up 55 days, 23:49,  2 users,  load average: 11.09, 7.41, 4.43
Tasks: 128 total,   1 running, 127 sleeping,   0 stopped,   0 zombie
Cpu0  :  7.6%us,  0.3%sy,  0.0%ni,  0.0%id, 90.4%wa,  0.3%hi,  1.3%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,  0.0%id,100.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.0%us,  0.0%sy,  0.0%ni,  0.0%id,100.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  1.7%sy,  0.0%ni,  0.0%id, 98.3%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1028044k total,  1017956k used,    10088k free,    34784k buffers
Swap:  2097140k total,      616k used,  2096524k free,   733100k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11284 root      18   0 29168 1960 1504 D    2  0.2   0:11.81 scp
  137 root      15   0     0    0    0 D    0  0.0  14:16.59 pdflush
10865 root      15   0     0    0    0 D    0  0.0   0:00.50 kjournald
11355 root      15   0     0    0    0 D    0  0.0   0:00.09 pdflush
11396 root      15   0     0    0    0 D    0  0.0   0:00.12 pdflush
11397 root      15   0     0    0    0 D    0  0.0   0:00.06 pdflush
12007 root      15   0     0    0    0 D    0  0.0   0:00.02 pdflush
12070 root      16   0 23976 2376 1744 R    0  0.2   0:00.28 top
12294 root      15   0     0    0    0 D    0  0.0   0:00.00 pdflush
12295 root      15   0     0    0    0 D    0  0.0   0:00.02 pdflush
12296 root      15   0     0    0    0 D    0  0.0   0:00.02 pdflush
27490 root      10  -5     0    0    0 D    0  0.0   0:02.93 usb-storage

First, it's impressive that a singly copy job can raise the load to above 10, and 
the next thing is that writing to a slow device can make 4 CPUs (actually two with 
hyperthreading) busy. The pdflush daemons are expected to bring dirty blocks onto 
the device, I guess. Does it make any sense to make four CPUs busy with doing so?

Here's another snapshot showing the assigned CPU also:

top - 09:32:18 up 55 days, 23:56,  2 users,  load average: 10.63, 9.99, 6.78
Tasks: 127 total,   1 running, 126 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0%us,  0.0%sy,  0.0%ni,  0.0%id,100.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,  0.0%id,100.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.0%us,  0.0%sy,  0.0%ni,  1.7%id, 98.3%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.0%sy,  0.0%ni,  0.0%id,100.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1028044k total,  1017896k used,    10148k free,    18044k buffers
Swap:  2097140k total,      616k used,  2096524k free,   741616k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  P COMMAND
  137 root      15   0     0    0    0 D    0  0.0  14:16.71 1 pdflush
 4299 root      17   0  5860  752  596 D    0  0.1   9:36.19 1 syslogd
10865 root      15   0     0    0    0 D    0  0.0   0:00.62 1 kjournald
11284 root      18   0 29168 1960 1504 D    0  0.2   0:14.76 3 scp
11355 root      15   0     0    0    0 D    0  0.0   0:00.19 0 pdflush
11396 root      15   0     0    0    0 D    0  0.0   0:00.24 1 pdflush
11397 root      15   0     0    0    0 D    0  0.0   0:00.22 1 pdflush
12294 root      15   0     0    0    0 D    0  0.0   0:00.11 1 pdflush
12295 root      15   0     0    0    0 D    0  0.0   0:00.14 1 pdflush
12296 root      15   0     0    0    0 D    0  0.0   0:00.13 1 pdflush
12591 root      16   0 23976 2376 1744 R    0  0.2   0:00.07 3 top
27490 root      10  -5     0    0    0 D    0  0.0   0:03.13 3 usb-storage

At times like shown, the scp seems to come to a complete halt. (Previously I had 
been using VFAT filesystem on the stick, and copy went much smoother, but the 
filesystem was full, so I tried another filesystem.)

Would anybody bee so kind to explain why the system looks like that? I'm not 
subscribed, so please honor the CC:.

Regards,
Ulrich Windl

--
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/

[Site Home]     [Other Archives]     [Linux Kernel Newbies]     [Linux Kernel Testers]     [Linux SH]     [Linux Omap]     [Linux Kbuild]     [Linux Tape]     [Linux Input]     [Linux Kernel Janitors]     [Linux Doc]     [Linux Man Pages]     [Linux Standards]     [Kernel Announce]     [Memory]     [Netdev]     [Git]     [Linux PCI]     [NUMA]     [Netfilter]     [Netfilter Devel]     [SELinux]     [Bugtraq]     [Writing Drivers]     [Linux Serial]     [Linux PPP]     [Linux ISDN]     [Linux Next]     [Kernel Stable Commits]     [Kernel MM Commits]     [Linux Security Module]     [Ext4]     [Linux BTRFS]     [Linux NFS]     [Linux Cachefs]     [Reiser FS]     [Fastboot]     [Linux RT Users]     [Linux Virtualization]     [LVS Devel]     [KVM]     [KVM PPC]     [KVM ia64]     [Linux Containers]     [Util Linux NG]     [Sk Drivers]     [Wireless]     [Linux Bluetooth]     [Ethernet Bridging]     [Embedded Linux]     [Sparse]     [Linux Arch]     [Linux ACPI]     [Linux IBM ACPI]     [Linux OpenGL]     [CPU Freq]     [Linux Power Management]     [Linux DCCP]     [ALSA Devel]     [Linux USB]     [Large Format Photos]     [DVD Store]     [Tux]     [Gimp]     [Yosemite News]     [Linux PA RISC]     [MIPS Linux]     [S390 Linux]     [ARM Linux]     [ARM Kernel]     [Sparc Linux]     [Linux Security]     [Linux Sound]     [Video 4 Linux]     [Linux for the blind]     [Linux IDE]     [Linux RAID]     [Linux SCSI]     [Linux SCSI Target Infrastructure]     [Linux SMP]     [Linux AXP]     [Linux Alpha]     [Linux M68K]     [Linux ia64]     [Linux 8086]     [Linux x86_64]     [Linux Apps]     [Linux X.25]     [Linux Crypto]     [DM Crypt]     [LInux Btrace]     [Utrace Devel]     [Yosemite Photos]     [Linux Resources]     [Older Kernel Mail]

Add to Google Powered by Linux

Google PageRank Checking tool