USB block device performance on MPC8349

From SecretLab

Jump to: navigation, search

Results of speed testing

Contents

Summary

Kernel Version Device Allocator IO Scheduler Block Write Block Read
2.6.22-g1f2a63bd-dirty SanDisk 256MB flash SLAB  ? 5034 17103
2.6.22-g1f2a63bd-dirty Maxtor 300GB SLAB  ? 28767 26813
2.6.22-g90b6924e-dirty Maxtor 300GB SLAB CFQ 28974 27092
2.6.22-g90b6924e-dirty NFS/100baseT SLAB CFQ 1675 11376
2.6.22-g90b6924e-dirty Maxtor 300GB SLUB CFQ 28670 27240
2.6.22-g90b6924e-dirty Maxtor 300GB SLUB AS 30967 28099
2.6.22-g90b6924e-dirty Maxtor 300GB SLUB AS 29064 28169
2.6.22-g90b6924e-dirty Maxtor 300GB SLOB CFQ 3281 21857

Tests performed by Grant

Here are the full logs of system performance testing. Relevant numbers are in bold typeface.

Linux PowerQUICC 2.6.22-g1f2a63bd-dirty #825 Tue Jul 17 13:47:04 MDT 2007 ppc GNU/Linux

All tests performed with SLAB allocator

Sandisk Cruiser 256MB thumb drive

/dev/sda1 /mnt/sda1 vfat rw,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1 0 0

root@PowerQUICC:/mnt/sda1# bonnie++ -d /mnt/sda1/ -s 256 -u root:root
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
PowerQUICC     256M  3429  69  5034   5  2806   5  4739  93 17103  12  1119  12
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16    15  99    31  99   198  99    23  99    31  99    53  99

Maxtor OneTouch II 300GB USB hard drive

Note: dropped file create/stat tests because they are irrelevant to our problem.

/dev/sdb1 /mnt/sdb1 vfat rw,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1 0 0

root@PowerQUICC:/mnt/sdb1# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
PowerQUICC     256M  4724  96 28767  27 13567  24  4960  91 26813  21 277.0   2
root@PowerQUICC:/mnt/sdb1# bonnie++ -d /mnt/sdb1/ -s 512 -n 0 -u root:root 
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
PowerQUICC     512M  4700  96 28386  28 12650  22  4960  91 27010  22 172.1   2

Linux powerpc 2.6.22-g90b6924e-dirty #827 ppc GNU/Linux

Here are some tests of the different memory allocators. SLAB is the original Linux allocator; SLOB is space conservative, but it doesn't scale well. SLUB is the new allocation which is intended to replace SLAB for most systems. All these tests are performed on an external USB hard drive.

SLAB Allocator

root@powerpc:/dev# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M           28974  28 12700  22           27092  22 258.4   3

Another test: Something is wrong here; numbers are way low. Going to run it again... Oops, forgot to mount the filesystem, these are results for NFS.

root@powerpc:/dev# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M            1675   0  1596   4           11376  18 935.6  24

SLUB Allocator

Using the CFQ IO scheduler:

root@powerpc:/dev# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M           28670  28 13554  24           27240  22 261.5   3

Using the AS scheduler:

root@powerpc:/mnt/sdb1# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M           30967  32 12797  23           28099  22 288.2   3

Another w/ the AS scheduler:

root@powerpc:/mnt/sdb1# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M           29064  28 14174  24           28169  22 286.7   3

SLOB Allocator

root@powerpc:/dev# bonnie++ -d /mnt/sdb1/ -s 256 -n 0 -u root:root -f
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
powerpc        256M            3281  91   851  90           21857  20 211.4  18
Personal tools