Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 May 2001 09:07:22 -0700 (PDT)
From:      Felix Hernandez <felix_hdez@yahoo.com>
To:        Dan Nelson <dnelson@emsphone.com>
Cc:        Bill Moran <wmoran@iowna.com>, freebsd-questions@FreeBSD.ORG, Ian Dowse <iedowse@maths.tcd.ie>
Subject:   Re: Slower tape drive when compression off
Message-ID:  <20010527160722.3092.qmail@web9501.mail.yahoo.com>
In-Reply-To: <20010526220733.A21021@dan.emsphone.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--- Dan Nelson <dnelson@emsphone.com> wrote:
> In the last episode (May 26), Felix Hernandez said:
> > root@oberon $$$ mt comp off
> > root@oberon $$$ dd if=junk of=/dev/rsa0 bs=10k
> > 51200000 bytes transferred in 20.322325 secs
> (2519397 bytes/sec)
> > 
> > root@oberon $$$ mt comp on 
> > root@oberon $$$ dd if=junk of=/dev/rsa0 bs=10k
> > 51200000 bytes transferred in 12.665153 secs
> (4042588 bytes/sec)
> 
> That's really weird.  A 10k blocksize is pretty
> small for DLT, though
> (it's the default tar blocksize).  

Yes!!! Right on the nail! It was a buffer size
problem.

root@oberon $$$ mt comp off
root@oberon $$$ dd if=junk of=/dev/rsa0 bs=10k
5000+0 records in
5000+0 records out
51200000 bytes transferred in 22.686704 secs (2256829
bytes/sec)
root@oberon $$$ dd if=junk of=/dev/rsa0 bs=64k
781+1 records in
781+1 records out
51200000 bytes transferred in 9.491773 secs (5394145
bytes/sec)
root@oberon $$$ dd if=junk of=/dev/rsa0 bs=256k
195+1 records in
195+1 records out
51200000 bytes transferred in 9.497948 secs (5390638
bytes/sec)

>Try with a 64K
> blocksize, and tell
> us your CPU speed.  

PIII Xeon 700 MHz.

>A DLT8000 should be able to
> stream data at 6MB/sec
> native, 12MB/sec if the data is compressible.  Maybe
> your hardware
> isn't capable of sending data to the DLT fast enough
> to keep it
> streaming.  Also see what a "dd if=/dev/zero
> of=/dev/rsa0 bs=64k" does;
> maybe your disks are the bottleneck.  

root@oberon $$$ mt comp off
root@oberon $$$ dd if=/dev/zero of=/dev/rsa0 bs=64k
^C28840+0 records in
28839+0 records out
1889992704 bytes transferred in 310.885445 secs
(6079386 bytes/sec)

For completion, I also tried another idea, that
confirms that the source of the problem was buffering:

root@oberon $$$ /usr/bin/time buffer -B -z10k < junk >
/dev/rsa0
     50000K
       22.44 real         0.01 user         0.73 sys
root@oberon $$$ /usr/bin/time buffer -B -z64k < junk >
/dev/rsa0
     50048K
        9.52 real         0.00 user         0.46 sys
root@oberon $$$ /usr/bin/time buffer -B -z256k < junk
> /dev/rsa0
     50176K
        9.50 real         0.00 user         0.41 sys


Thank you very much, Dan, Ian and Bill!

Felix Hernandez.


__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010527160722.3092.qmail>