Hi!
On apt-get dist-upgrading my Amarok ThinkPad T23 with BTRFS as /
and as /home I get extremely slow operation - my ThinkPad T42 with Ext4
is running circles around it and thats likely not only due to the faster CPU.
vmstat 1 shows:
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
0 4 151452 75016 68 382084 0 0 1164 28 595 1959 31 19 0 50
0 3 151452 74272 68 382560 0 0 488 0 538 1735 10 9 0 81
4 2 151452 71644 68 385776 0 0 3804 0 663 1886 56 38 0 6
3 2 151452 66916 68 387192 0 0 1264 0 633 1018 74 24 0 2
1 3 151452 63296 68 389336 0 0 1580 0 656 4095 80 20 0 0
2 3 151452 66272 68 390028 8 0 572 0 601 3449 40 17 0 43
3 2 151452 65032 68 390828 0 0 760 0 673 2364 42 25 0 32
3 2 151452 61816 68 393508 0 0 2672 0 748 2203 52 29 0 19
2 2 151452 60824 68 394236 0 0 724 0 660 2338 51 22 0 27
4 2 151452 59832 68 395024 0 0 808 0 662 2309 40 20 0 40
0 2 151452 58708 68 395856 0 0 812 12 683 2217 46 23 0 30
0 2 151452 57964 68 396416 0 0 512 0 619 2196 41 24 0 35
I know laptop harddisks aren´t the fastest, but AFAIR the T23 felt way faster
with Ext3/4.
I get quite some stalles when opening a new window in "screen". It can take
10-20 seconds to load the new Z-Shell into it. Also Amarok stops playing
music for a while sometimes which it didn´t with Ext3/4. I suspect that the
kernel does not service an I/O request of Amarok quickly enough.
Surprisingly I do not see an excessive amount of CPU usage of brtfs kernel
threads with atop. But the disk seems to be quite busy with block out rates
in vmstat of merely a few thousands at maximum.
Thus I suspect fragmentation of btrfs trees or files.
The filesystems has the following specifics - apt-get will work on / only
obviously:
deepdance:~> btrfs filesystem show
failed to read /dev/sr0
Label: 'debian' uuid: 2bf5b1dc-1d89-4f0d-a561-1a5551a27275
Total devices 1 FS bytes used 7.34GB
devid 1 size 15.00GB used 14.97GB path /dev/dm-0
Label: 'home' uuid: a600de65-e1ab-4cbf-b150-bbaeaf9fa98d
Total devices 1 FS bytes used 28.13GB
devid 1 size 80.00GB used 40.54GB path /dev/dm-2
Btrfs Btrfs v0.19
deepdance:~> btrfs filesystem df /
Data: total=11.23GB, used=6.84GB
System, DUP: total=8.00MB, used=4.00KB
System: total=4.00MB, used=0.00
Metadata, DUP: total=1.86GB, used=510.99MB
I cleaned out a lot of packages due to the slow dist-upgrades already
and also cause I do not need them on that laptop anymore. Thus the
data tree only uses half of the allocated space. BTRFS doesn´t seem
to give space back to the pool for all trees. Maybe it will do that
on btrfs filesystem balance?
home is:
deepdance:~> btrfs filesystem df /home
Data: total=37.01GB, used=27.54GB
System, DUP: total=8.00MB, used=12.00KB
System: total=4.00MB, used=0.00
Metadata, DUP: total=1.75GB, used=598.76MB
Metadata: total=8.00MB, used=0.00
deepdance:~>
BTW why does it have two metadata and systems trees while /
only have one?
Currently I have:
deepdance:~> cat /proc/version
Linux version 3.0.0-2-686-pae (Debian 3.0.0-6) (ben@xxxxxxxxxxxxxxx)
(gcc version 4.5.3 (Debian 4.5.3-9) ) #1 SMP Wed Nov 2 05:29:50
UTC 2011
from Debian Wheezy.
Free memory is quite okay:
deepdance:~> free -m
total used free shared buffers cached
Mem: 755 699 55 0 0 347
-/+ buffers/cache: 352 402
Swap: 2047 148 1899
I am wondering on how to optimize performance on the /
BTRFS filesystem.
I am not sure whether to try btrfs filesystem balance or
btrfs filesystem defragment /.
I also wonder whether some Debian package management related
file might be fragmented. But the ones I tested do not seem to be:
deepdance:/var/lib/dpkg> filefrag available
available: 1 extent found
deepdance:/var/lib/dpkg> filefrag status
status: 1 extent found
deepdance:/var/lib/dpkg>
But then I also do not know whether "filefrag" from "e2fsprogs"
1.42~WIP-2011-10-16-1 will work with BTRFS.
Any advice?
Its not critical for me to fix these issues (soon), but I am curious
whether its possible to get the filesystem speedier by some
maintenance.
Thanks,
--
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA B82F 991B EAAC A599 84C7
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html