Don Speck <speck@cit-vax.ARPA> (02/05/85)
A TU80 will switch into 25 ips streaming mode iff it gets at least 15 back-to-back writes, and will then try to switch into 100 ips mode. Following is an easy patch to get 4.2bsd /etc/dump to stream a TU80 at 100 ips, every other second. It streams the tape for a second, then shakes the disk for a second, streams, shakes, ... giving an average throughput of about 50 ips. This was on a 750 with FPA, some raw I/O efficiency patches (coming soon), and kernel profiling compiled in. It will do no good on a 730 or a start/stop drive. Your speed and line numbers may vary. Don diff /usr/src/etc/dump/dumptape.c dumptu80.c 22c22,24 < tblock = (char (*)[TP_BSIZE])malloc(writesize); --- > #define CLUSTER 15 /* # of back-to-back writes to get TU80 streaming */ > ntrec *= CLUSTER; /* -- BEWARE -- when changing dumptape.c */ > tblock = (char (*)[TP_BSIZE])malloc(CLUSTER*writesize); 69,71c71,73 < < trecno = 0; < if (write(to, tblock[0], writesize) != writesize){ --- > char *wp = tblock[0]; > for (trecno=CLUSTER; --trecno>=0; wp+=writesize) > if (write(to, wp, writesize) != writesize){ 99,100c101,103 < asize += writesize/density; < asize += 7; --- > trecno = 0; > asize += CLUSTER*writesize/density; > asize += CLUSTER*10; /* TU80's usually stretch out IRG's */