Interesting results. Note that you will lose perhaps 40% of the media
speed as you go from the outside cylinders to the inside cylinders. The
max sustaing media speed for that disk is about 72 MBytes/s, so you're doing
pretty good, all things considered.
-- richard
Nicholas Lee wrote:
On 4/13/07, *Robert Milkowski* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:
Only if you turn a compression on in ZFS.
Other than that 0s are stored as any other data.
There is some difference, but its marginal as the files get larger. The
disks in mtank are SATA2 ES 500Gb Seagates in a Intel V5000 system. The
system is a default b61 install and totally untuned.
[EMAIL PROTECTED]:~# zpool status
pool: mtank
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
mtank ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t2d0 ONLINE 0 0 0
c1t2d0 ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t5d0 ONLINE 0 0 0
c1t5d0 ONLINE 0 0 0
[EMAIL PROTECTED]:~# time mkfile 1g /mtank/file_1g 2048Mb/s
real 0m0.518s
user 0m0.004s
sys 0m0.513s
[EMAIL PROTECTED]:~# dd if=/dev/urandom of=/tmp/1meg bs=512 count=2048; i=0
; time while [ $i -lt 1024 ] ; do cat /tmp/1meg ; i=`expr $i + 1` ; done
> /mtank/1g_ran
2048+0 records in
2048+0 records out
real 0m6.876s
user 0m1.205s
sys 0m5.792s
[EMAIL PROTECTED]:~# time mkfile 2g /mtank/file_2g - 182Mb/s
real 0m11.223s
user 0m0.008s
sys 0m1.178s
[EMAIL PROTECTED]:~# time mkfile 5g /mtank/file_5g - 147Mb/s
real 0m34.721s
user 0m0.019s
sys 0m2.841s
[EMAIL PROTECTED]:~# dd if=/dev/urandom of=/tmp/1meg bs=512 count=2048; i=0 ;
time while [ $i -lt 5120 ] ; do cat /tmp/1meg ; i=`expr $i + 1` ; done >
/mtank/5g_ran
2048+0 records in
2048+0 records out
real 0m38.928s
user 0m6.442s
sys 0m32.911s
[EMAIL PROTECTED]:~# time mkfile 10g /mtank/file_10g
real 1m15.185s
user 0m0.037s
sys 0m5.885s
[EMAIL PROTECTED]:~# time mkfile 10g /mtank/file_10g.2 - 134MB/s
real 1m16.490s
user 0m0.038s
sys 0m5.723s
[EMAIL PROTECTED]:~# time mkfile 50g /mtank/file_50g - (132Mb/s)
real 6m27.673s
user 0m0.178s
sys 0m27.549s
Even with 155Gb the snaps are pretty quick:
[EMAIL PROTECTED]:~# ls -l /mtank/
total 162403552
-rw-r--r-- 1 root 1073741824 Apr 13 15:50 1g_ran
-rw-r--r-- 1 root 5368709120 Apr 13 15:52 5g_ran
-rw------- 1 root 107374182400 Apr 9 15:18 file_100g
-rw------T 1 root 10737418240 Apr 9 15:20 file_10g
-rw------T 1 root 10737418240 Apr 9 15:22 file_10g.2
-rw------T 1 root 1073741824 Apr 9 15:19 file_1g
-rw------T 1 root 2147483648 Apr 9 15:30 file_2g
-rw------T 1 root 53687091200 Apr 9 15:29 file_50g
-rw------T 1 root 5368709120 Apr 9 15:31 file_5g
[EMAIL PROTECTED]:~# zfs list | grep mtank
mtank 155G 759G 155G /mtank
[EMAIL PROTECTED]:~# time zfs snapshot [EMAIL PROTECTED]
real 0m0.204s
user 0m0.004s
sys 0m0.006s
[EMAIL PROTECTED]:/mtank# time zfs clone [EMAIL PROTECTED] mtank/test
real 0m0.299s
user 0m0.004s
sys 0m0.008s
Which is 375GB/s. Much better than:
[EMAIL PROTECTED]:/mtank# time cp file_10g file_10g.b
real 2m15.705s
user 0m0.008s
sys 0m50.084s
Also double because I imagine it has to read and write thru the same
disk io channel.
Between pools is ok as well:
[EMAIL PROTECTED]:/mtank# zpool status ztank
pool: ztank
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
ztank ONLINE 0 0 0
raidz2 ONLINE 0 0 0
c0t3d0 ONLINE 0 0 0
c0t4d0 ONLINE 0 0 0
c1t3d0 ONLINE 0 0 0
c1t4d0 ONLINE 0 0 0
c0t1d0 ONLINE 0 0 0
[EMAIL PROTECTED] :/ztank/isos# time cp sol-nv-b61-x86-dvd.iso /mtank/ - 76MB/s
real 0m49.955s
user 0m0.003s
sys 0m19.676s
[EMAIL PROTECTED]:/ztank/isos# du -sh sol-nv-b61-x86-dvd.iso
3.7G sol-nv-b61-x86-dvd.iso
------------------------------------------------------------------------
_______________________________________________
zfs-discuss mailing list
[EMAIL PROTECTED]
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
_______________________________________________
zfs-discuss mailing list
[EMAIL PROTECTED]
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss