Subject: Re: Performance of SCSI writing.
To: None <mhitch@lightning.oscs.montana.edu>
From: Arne Henrik Juul <arnej@stud.math.ntnu.no>
List: port-pmax
Date: 06/28/1997 12:47:01
> This is getting very, very strange.
>
> Compiling without DEBUG gives me the reduced writing rate, compiling with
> DEBUG triples the writing rate. Further investigation showed that compiling
> only pmax/machdep.c with DEBUG results in the faster writing rate. Going
> even deeper, it looks like one small section of data makes the difference.
> Removing the "#ifdef DEBUG" around the signal debug data in machdep.c seems
> to make the difference.
>
> How and why including two initialized variables and a few #defines would
> make a difference in the writing speed is (at the moment) a big mystery to
> me.
Does anybody have any bright ideas on this? I've done some empirical
testing by adding the following to machdep.c right before the signal
debug data:
#ifdef EXTRAHACKSPACE
int anyvar[EXTRAHACKSPACE] = { -1 } ;
#endif
(I tried with 0 first, and found that EXTRAHACKSPACE=0 or 1 gave
a low writing rate, 2 gave a high writing rate.)
Writing a script to recompile kernel, reboot, and run iozone
which I ran from rc.local I got the following results. This on
a DS5000/25 (asc on ioasic) in case it matters:
EXTRAHACKSPACE writing rate
0 619524
1 619524
2 1210197
3 1247339
4 1255629
5 1251134
6 1206577
7 1187515
8 1285492
9 1225616
10 1242535
11 1206993
12 1205536
13 1217646
14 1235508
15 1237695
16 1215881
17 1227553
18 610684
19 616066
20 610329
21 610951
22 1211666
23 1223899
24 1254427
25 1240037
26 1256532
27 1163468
28 1162436
29 1150069
30 1250239
31 1143422
32 1113433
33 1195367
34 1236892
35 1138333
36 1221120
37 1256757
38 1274631
39 1262128
40 1186977
41 1268234
42 1234708
43 1214402
44 1220978
45 1271694
46 1247191
47 1250090
48 1145922
49 1260307
50 1265708
51 1271078
52 1249718
53 1226332
54 1258643
55 1185233
56 1241432
57 1258341
58 1223471
59 1216092
60 1207202
61 1270539
62 1115031
63 1252853
64 1187380
65 1279141
66 1225831
67 1144046
68 1251881
69 1238280
70 1214332
71 1276494
72 1224042
73 1165732
74 1241212
75 1221760
76 1219983
77 1231445
78 1224614
79 1200842
80 1205536
81 1277738
82 604436
83 623187
84 611842
85 617663
86 1216939
87 1236820
88 1196526
89 1204636
90 1258266
91 1196389
92 1272003
93 1185501
94 1225043
95 1245635
96 1194550
97 1179633
98 1254727
99 1219345
Ignoring the noise it's clear that some groups of 4 values
give the strange drop in writing speed.
The mystery deepens, I'd say...
- Arne H. J.