Can't get past 10 mbyte/s with freenas

Status
Not open for further replies.

KalleDK

Cadet
Joined
Jun 8, 2011
Messages
3
Hi

I can't write with more than 10 mbyte/s to my hdd (dd zero to disk 16m)

ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <WDC WD20EARS-00MVWB0 51.0AB51> ATA-8 SATA 2.x device
ada0: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes)
ada0: Command Queueing enabled
ada0: 1907729MB (3907029168 512 byte sectors: 16H 63S/T 16383C)

If I boot in a normal 8.2 fixit shell (from the install media) it doesnt see it as ada0 but da4 - and there I can dd with 150 mbyte/s

I can't seem to grasp why I cant get past the 10 mbyte/s via freenas

The bios is set to ACHI

(windows also gives 100mbyte+/s)

Edit: Tried to make a clean 8.2 install and enable ACHI in that.. and boom they went down to 10mbyte/s seems to be the "driver" or something... (not that good at freebsd yet)
 

KalleDK

Cadet
Joined
Jun 8, 2011
Messages
3
dd if=/dev/zero of=/dev/ada1 bs=16m

Well after some tests today I got following

FreeNAS 8.0 latest binary = 10 mbyte/s with AHCI (ada1)
FreeBSD 8.2 latest binary = 150 mbyte/s without AHCI (ad2)
FreeBSD 8.2 latest binary = 10 mbyte/s with AHCI (ada1)
FreeBSD 8.2 latest src = 150 mbyte/s with AHCI (ada1)

Looks like it is a driver problem (or something) that have been fixed in the latest src of 8.2..

So I just have to wait until FreeNAS comes to that version.
 
Joined
May 27, 2011
Messages
566
so your writing 16MB directly to the device. but it looks like your disk is ada0 and you're writing to ada1. you are also writing a very small file your disk probably has a 16MB cache on-board so your test is invalid. i can read and write a 2 GB file at 6GB/s because it only uses the cache.

create a storage pool first, preferable zfs, then write to it. Instead of your dd command, try this:

dd if=/dev/zero -of=/mnt/YOURPOOL/file.dat bs=1024k count=20k

this will utilize zfs, exceed any cache or buffer and give you a real measure of speed over time. then reverse the process and read from that file and write it to /dev/null

let me know how that works.
 

KalleDK

Cadet
Joined
Jun 8, 2011
Messages
3
No I'm writing in 16mb blocks... (this dd would fill the hdd if I don't stop it with ^c), and I'm always making it run to at least 10 gb

the ada1 and ada0 confusing is due to i got 4 equal drives ada0-3 same disk but all with the same "problem" - forgot to post that


If i make a raidz pool when the disks only can do 10 mbyte/s i get around 30mbyte which seems corecct (4 disks at 10 mbyte/s)

If i make a raidz pool when the disks can do the 150 mbyte/s i get 210 mbyte/s and I think its my processor limiting this due to checksum etc.
 
Joined
May 27, 2011
Messages
566
oops you are so right about that, i haven't used dd that way in a long time.

what are your system specs?
 
Status
Not open for further replies.
Top