hdparm -t stark difference in speed between different partitions on the same disk drive

This is the partitioning of my hard drive in my laptop (sorry for polish) :

Dysk /dev/sda: 320.1 GB, bajtów: 320072933376
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 38913
Jednostka = cylindrów, czyli 16065 * 512 = 8225280 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0x76692ca8

Urządzenie Rozruch   Początek      Koniec   Bloków   ID  System
/dev/sda1               1        1912    15357116   1c  Ukryta W95 FAT32 (LBA)
/dev/sda2   *        1913       11640    78140160    7  HPFS/NTFS
/dev/sda3           11641       38913   219070372+   f  W95 Rozsz. (LBA)
/dev/sda5           11641       37097   204475320    7  HPFS/NTFS
/dev/sda6           37097       37283     1502014+  82  Linux swap / Solaris
/dev/sda7           37284       37997     5735173+  83  Linux
/dev/sda8           37998       38913     7357738+  83  Linux

I get much faster speeds with NTFS partitions than the native ext4.

opensuse:/home/grzes # hdparm -t /dev/sda8

/dev/sda8:
 Timing buffered disk reads:  106 MB in  3.04 seconds =  34.88 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda8

/dev/sda8:
 Timing buffered disk reads:  108 MB in  3.05 seconds =  35.45 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda7

/dev/sda7:
 Timing buffered disk reads:  114 MB in  3.01 seconds =  37.94 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda7

/dev/sda7:
 Timing buffered disk reads:  112 MB in  3.05 seconds =  36.69 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda2

/dev/sda2:
 Timing buffered disk reads:  202 MB in  3.01 seconds =  67.04 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda2

/dev/sda2:
 Timing buffered disk reads:  200 MB in  3.00 seconds =  66.62 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda7

/dev/sda7:
 Timing buffered disk reads:  110 MB in  3.03 seconds =  36.26 MB/sec
opensuse:/home/grzes # hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:  188 MB in  3.02 seconds =  62.26 MB/sec

What is it caused by ? Are the speeds for logical partitions that much slower than for primary ?

Thanks a lot for help in advance.

Best regards,
Greg

Well 2:1 isn’t totally unreasonable for the difference between the outer sectors of the disk and the inner ones, so I am not sure that you need anything else to explain it. Perhaps 2:1 is a bit on the high side, but it does depend on geometry and what block remapping the drive manufacturer does, so this isn’t shocking, if a bit high.

Hmm… I just transferred 1TB (1024GB) of data from two ext3 7200 RPM drives to one ext4 5900 RPM (green, low power, whatever the catch term of the day) 2TB Samsung drive. It took 3h18m, which gives 88 MB/s.

running hdparm in some of the various partitions gives:


/dev/sdb1:
 Timing buffered disk reads:  364 MB in  3.02 seconds = 120.71 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sdb1

/dev/sdb1:
 Timing buffered disk reads:  362 MB in  3.01 seconds = 120.16 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sdd1

/dev/sdd1:
 Timing buffered disk reads:  316 MB in  3.01 seconds = 105.15 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sdd1

/dev/sdd1:
 Timing buffered disk reads:  314 MB in  3.01 seconds = 104.26 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sda5

/dev/sda5:
 Timing buffered disk reads:  218 MB in  3.02 seconds =  72.10 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sda7

/dev/sda7:
 Timing buffered disk reads:  172 MB in  3.03 seconds =  56.72 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sda2

/dev/sda2:
 Timing buffered disk reads:  330 MB in  3.01 seconds = 109.51 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sda7

/dev/sda7:
 Timing buffered disk reads:  172 MB in  3.03 seconds =  56.71 MB/sec
linux-rl05:/home/blimmer # hdparm -t /dev/sda7
                                                                                                                      
/dev/sda7:                                                                                                            
 Timing buffered disk reads:  172 MB in  3.03 seconds =  56.75 MB/sec                                                 
linux-rl05:/home/blimmer # hdparm -t /dev/sda6
                                                                                                                      
/dev/sda6:                                                                                                            
 Timing buffered disk reads:  190 MB in  3.02 seconds =  63.00 MB/sec 

where sdb is one of the ext3 source drives and sdd is the target (5900 RPM) drive.

I thought that this slower 2TB target drive would perform somewhat like a laptop 5200 RPM drive, but perhaps the drive size makes a difference (much higher density and such).

What may be taking a hit in your performance are the journal write mode (I use writeback instead of ordered in non-system partitions), and the noatime/nodiratime options.

Wow I didn’t know that the difference in hard disk access speeds for inner and outer sectors is so large. Thanks a lot for the enlightening comments.

Best regards,
Greg