W zeszły piątek zaktualizowałem mój serwer Ubuntu do wersji 11.10, która teraz działa z jądrem serwera 3.0.0-12. Od tego czasu ogólna wydajność dramatycznie spadła. Przed aktualizacją obciążenie systemu wynosiło około 0,3, ale obecnie jest na poziomie 22-30 w 8-rdzeniowym systemie CPU z 16 GB pamięci RAM (10 GB za darmo, bez zamiany).
Miałem winić sterownik systemu plików BTRFS i podkładającą się tablicę MD, ponieważ [md1_raid1] i [btrfs-transacti] zużywały dużo zasobów. Ale wszystkie [kworker / *: *] zużywają znacznie więcej.
sar
ciągle produkuje coś podobnego do tego od piątku:
11:25:01 CPU %user %nice %system %iowait %steal %idle
11:35:01 all 1,55 0,00 70,98 8,99 0,00 18,48
11:45:01 all 1,51 0,00 68,29 10,67 0,00 19,53
11:55:01 all 1,40 0,00 65,52 13,53 0,00 19,55
12:05:01 all 0,95 0,00 66,23 10,73 0,00 22,10
I iostat
potwierdza bardzo niską szybkość zapisu:
sda 129,26 3059,12 614,31 258226022 51855269
sdb 98,78 24,28 3495,05 2049471 295023077
md1 191,96 202,63 611,95 17104003 51656068
md0 0,01 0,02 0,00 1980 109
Pytanie brzmi: w jaki sposób mogę ustalić, dlaczego wątki kworker zużywają tak wiele zasobów (i które)? Lub lepiej: Czy jest to znany problem z jądrem 3.0 i czy mogę go poprawić za pomocą parametrów jądra?
Edytować:
Zaktualizowałem jądro do nowej wersji 3.1 zgodnie z zaleceniami programistów BTRFS. Ale niestety nic to nie zmieniło.
pcie_ports=compat
lub pcie_ports=native
. (Spróbuj „rodzimy” pierwszy To mniej prawdopodobne, aby rozwiązać ten problem, ale mniej prawdopodobne, aby powodować inne problemy..)