Hi,
I got 4 new SATA disks (WD Green, 1TB, WD10EADS) I want to use to replace
my old 250GB disks attached to my 3ware controller.
I want to reuse the old 250GB disks in some systems running old PATA disks
ight now as system drives. So what I did now was gathering SATA performance
tatistics with the new 1TB drive to just find out what would be the maximum
performance I would get out of these disks to compare them later with my
3ware when they are configured as RAID-5. 
A colleague of mine has the same disks in a new Nvidia Atom 330 system and
he told me that he reaches around 70MB/sec write speed with a single large
file on a single disk running linux 2.6. 
I hooked the disk up to my client: 
FreeBSD 7.2-STABLE #0: Tue Jul 28 12:59:47 CEST 2009
CPU: AMD Athlon(tm) 64 Processor 3500+ (2200.10-MHz K8-class CPU)
usable memory = 2138615808 (2039 MB)
atapci0: <VIA 6420 SATA150 controller> port 
0xd000-0xd007,0xc800-0xc803,0xc400-0xc407,0xc000-0xc003,0xb800-0xb80f,0xb400
 -0xb4ff irq 20 at device 15.0 on pci0
ad4: 953869MB <WDC WD10EADS-00L5B1 01.01A01> at ata2-master SATA150 
because the on-board controller is a VIA 6420 I had to set the SATA150
Jumper on the harddisk to have the controller detect the drive. 
On FreeBSD I used gpart+gpt to create a 1TB partition and then simply ran
newfs /dev/ad4p1 and mounted the new filesystem afterwards.
I then ran a dd in=/dev/zero of=/mnt/tmp/test.dd bs=1M count=4069 and dd
reported me a write speed of around 25MB/sec. This made me feel kinda bad
so I gave bonnie++ a try. The result was: 
Version  1.96       ------Sequential Output------ --Sequential Input- 
 --Random-
Concurrency   1     -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
kartoffel.salats 4G   548  96 28924   3 14617   2  1141  96 36869   3 199.7 
2
Latency               167ms   71702us    1759ms   23957us   75351us   2286ms
Version  1.96       ------Sequential Create------ --------Random 
Create--------
kartoffel.salatschu -Create-- --Read--- -Delete-- -Create-- --Read--- 
 -Delete--
             files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec 
%CP
                16   552   1 +++++ +++  1486   2   531   1 +++++ +++  1278 1
Latency             91403us     156us   28424us   22901us      87us  22820us
1.96,1.96,kartoffel.salatschuessel.net,1,1254282805,4G,,548,96,28924,3,14617
,2,1141,96,36869,3,199.7,2,16,,,,,552,1,+++++,+++,1486,2,531,1,+++++,+++,127
8,1,167ms,71702us,1759ms,23957us,75351us,2286ms,91403us,156us,28424us,22901u
s,87us,22820us 
This also did not look that good comparing to the bonnie output the
colleague gave me from his shiny new ION system. 
I then booted the latest knoppix (Also a 2.6.whatever linux kernel),
created a filesystem on /dev/sd1a (mkfs.ext3 /dev/sd1a) and mounted the
filesystem as well. The same dd I ran on FreeBSD I also ran on Knoppix
and this gave me 57.3MB/sec (wow compared to 25MB/sec). I then also
started bonnie++ just to see that this one is also much better: 
Version  1.96       ------Sequential Output------ --Sequential Input- 
 --Random-
Concurrency   1     -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
Microknoppix     4G   305  99 55905  18 31896   9   959  98 80414  10 211.7 
3
Latency             28579us    1075ms    1046ms   26376us   20962us    272ms
Version  1.96       ------Sequential Create------ --------Random 
Create--------
Microknoppix        -Create-- --Read--- -Delete-- -Create-- --Read--- 
 -Delete--
             files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec 
%CP
                16 27135  59 +++++ +++ +++++ +++ 29369  62 +++++ +++ +++++ 
+++
Latency             23535us    9969us    9927us   11680us    1182us   9985us
1.96,1.96,Microknoppix,1,1254262392,4G,,305,99,55905,18,31896,9,959,98,80414
,10,211.7,3,16,,,,,27135,59,+++++,+++,+++++,+++,29369,62,+++++,+++,+++++,+++
,28579us,1075ms,1046ms,26376us,20962us,272ms,23535us,9969us,9927us,11680us,1
182us,9985us 
Does anyone know if there is something I can tune on FreeBSD to get more
speed? hw.ata.wc is enabled of course. 
hw.ata.wc: 1
hw.ata.atapi_dma: 1
hw.ata.ata_dma_check_80pin: 1
hw.ata.ata_dma: 1 
I'll retest both setups with a plugged in Promise SATA300 PCI controller
but I doubt that it will get faster. I tried the controller before, and
on an dual PIII-850 system with L440GX chipset and 2GB of RAM the
controller gave me around 40MB/sec on write and on my amd64 system I also
only got around 25MB/sec (even this makes no sense to me why my old PIII
is faster then my much newer amd64) but I'll come back with better
numbers for this controller later.