Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!hsi!stevens From: stevens@hsi.UUCP (Richard Stevens) Newsgroups: comp.unix.wizards Subject: rdump, Ethernet slowness Message-ID: <788@hsi.UUCP> Date: Sun, 6-Dec-87 17:43:28 EST Article-I.D.: hsi.788 Posted: Sun Dec 6 17:43:28 1987 Date-Received: Fri, 11-Dec-87 07:07:30 EST Organization: Health Systems Intl., New Haven, CT Lines: 63 Keywords: rdump, /etc/rmt, ethernet When we added a second VAX we had planned to use the existing 6250-bpi tape drive for dumping its filesystems, using rdump(8). Using rdump once made it clear that this wasn't a viable solution. (We're running vanilla 4.3 BSD on a 785 and an 8600.) We didn't delve into the problem much, but punted and bought a cheap Unibus controller for the newer VAX, and switch the existing 6250 drive between the two VAX'es to do the level 0 dumps. The comments in the paper by Karels & McKusick at the 1986 Atlanta Usenix ("Network Performance and Management with 4.3 BSD and IP/TCP") led me to expect better results with rdump. I then decided to get a better handle on just how slow dump and rdump are, and here are the results, done on a single-user 8600 with a Kennedy 9400 tape drive (45 ips at 6250) with an Emulex TC13 Unibus controller. The network hardware is an Interlan N1010A on both Vax'es. 552,000 bytes/sec - speed of a C program that writes 1000 32768-byte buffers to another process on the same system. The two processes are connected with a stream socket created by rexec(3), with the SO_SNDBUF socket option set to 32768. 540,000 bytes/sec - raw disk speed for an RA81, using dd and bs=32768. Driver's UDABURST is set to 4. I'm not sure what the UDA50's Unibus delay jumper is set to. 266,000 bytes/sec - "theoretical" max speed of a 45 ips, 6250 tape drive, writing 1000 32768-byte blocks, with 0.3-inch inter-record gaps. 247,000 bytes/sec - actual speed of a simple C program that does 1000 write(2) calls of a 32768-byte block, to the raw tape drive. About 7% less than the theoretical max above, which isn't bad. 172,000 bytes/sec - dump speed of the RA81 to /dev/null. 166,000 bytes/sec - dump speed of the RA81 to the tape drive. About 3% slower than to /dev/null, which isn't bad. About 32% slower than the tape drive speed. 52,000 bytes/sec - speed of a C program writing 1000 32768-byte buffers to another process on the other system, across the Ethernet, using a stream socket, as in the 552,000 bytes/sec example given above. 41,000 bytes/sec - rdump speed to /dev/null on the other system. 4 times slower than dump. Not very good. For the actual tests of dump and rdump, I timed the second tape that dump wrote, to avoid the first 3 passes that dump makes before it starts dumping the regular files. Also, for the rdump test, the other system (for the /dev/null output) was essentially idle, with the priority of the /etc/rmt process set to -20. Should the actual throughput of the Ethernet be as slow as we're seeing ?? Should I expect rdump to be so slow, given the Ethernet throughput ?? (Maybe rdump wouldn't be so bad if you were used to a TS11 :-) ). Richard Stevens Health Systems International, New Haven, CT { uunet | ihnp4 } ! hsi ! stevens