Chris@72
|
1
|
Chris@72
|
2 Thinkpad T540p i5-4330M @2.80GHz with 16GB RAM, plugged in
|
Chris@72
|
3 Arch Linux, gcc 4.8.2
|
Chris@72
|
4 Using sonic-annotator v1.0 (commit:41c4de1e05d8), release build
|
Chris@72
|
5
|
Chris@72
|
6 Debug flags: -g -fPIC
|
Chris@72
|
7 Release flags: -O3 -ffast-math -msse -mfpmath=sse -ftree-vectorize -fPIC
|
Chris@72
|
8
|
Chris@73
|
9 Release flags for qm-dsp also include -fomit-frame-pointer
|
Chris@73
|
10
|
Chris@73
|
11 The input file is 1-channel 16-bit PCM at 44100Hz, duration 0m43.5s.
|
Chris@72
|
12
|
Chris@72
|
13
|
Chris@72
|
14 DEBUG/RELEASE:
|
Chris@72
|
15
|
Chris@72
|
16 commit:ce64d11ef336, release build of Silvet, release build of qm-dsp
|
Chris@72
|
17
|
Chris@73
|
18 real 1m44.456s
|
Chris@73
|
19 user 1m44.343s
|
Chris@73
|
20 sys 0m0.210s
|
Chris@72
|
21
|
Chris@72
|
22 commit:ce64d11ef336, debug build of Silvet, release build of qm-dsp
|
Chris@72
|
23
|
Chris@73
|
24 real 14m16.124s
|
Chris@73
|
25 user 14m16.907s
|
Chris@73
|
26 sys 0m0.217s
|
Chris@72
|
27
|
Chris@72
|
28 commit:ce64d11ef336, release build of Silvet, debug build of qm-dsp
|
Chris@72
|
29
|
Chris@73
|
30 real 1m55.204s
|
Chris@73
|
31 user 1m55.053s
|
Chris@73
|
32 sys 0m0.253s
|
Chris@72
|
33
|
Chris@72
|
34 Subsequent tests use release builds of both.
|
Chris@72
|
35
|
Chris@72
|
36
|
Chris@73
|
37 VAMP FEATURE SUPPRESSION:
|
Chris@73
|
38
|
Chris@78
|
39 commit:7133f78ccbf6, as commit:ce64d11ef336 but with CQ output feature
|
Chris@78
|
40 return commented out
|
Chris@78
|
41
|
Chris@78
|
42 real 1m46.162s
|
Chris@78
|
43 user 1m46.093s
|
Chris@78
|
44 sys 0m0.157s
|
Chris@78
|
45
|
Chris@78
|
46 commit:78a7bf247016, as commit:ce64d11ef336 but with CQ output and FCQ
|
Chris@78
|
47 output feature return commented out
|
Chris@78
|
48
|
Chris@78
|
49 real 1m45.206s
|
Chris@78
|
50 user 1m45.153s
|
Chris@78
|
51 sys 0m0.147s
|
Chris@78
|
52
|
Chris@78
|
53 conclusion: no advantage in removing these
|
Chris@78
|
54
|
Chris@78
|
55
|
Chris@78
|
56 DEBUG PRINTOUTS:
|
Chris@78
|
57
|
Chris@78
|
58 commit:f3bf6503e6c6, as commit:ce64d11ef336 but with debug printouts
|
Chris@78
|
59 removed
|
Chris@78
|
60
|
Chris@78
|
61 real 1m43.744s
|
Chris@78
|
62 user 1m43.657s
|
Chris@78
|
63 sys 0m0.203s
|
Chris@78
|
64
|
Chris@82
|
65 conclusion: obviously we want to remove these eventually, but might as
|
Chris@78
|
66 well keep in during testing
|
Chris@78
|
67
|
Chris@82
|
68
|
Chris@82
|
69 EM ITERATIONS:
|
Chris@82
|
70
|
Chris@82
|
71 commit:5314d3361dfb, as commit:ce64d11ef336 but with only 6 EM
|
Chris@82
|
72 iterations instead of 12
|
Chris@82
|
73
|
Chris@82
|
74 real 0m59.055s
|
Chris@82
|
75 user 0m58.897s
|
Chris@82
|
76 sys 0m0.193s
|
Chris@82
|
77
|
Chris@82
|
78 conclusion: EM dominates the time taken, not CQ or note forming
|
Chris@82
|
79
|
Chris@82
|
80
|
Chris@82
|
81 CQ DECIMATOR CONFIGURATION:
|
Chris@82
|
82
|
Chris@82
|
83 Uncommitted revision (because changes are in CQ subrepo) that is as
|
Chris@82
|
84 commit:ce64d11ef336 but with resampler SNR=30 and BW=0.04 instead of
|
Chris@82
|
85 SNR=60 and BW=0.02
|
Chris@82
|
86
|
Chris@82
|
87 real 1m43.176s
|
Chris@82
|
88 user 1m43.067s
|
Chris@82
|
89 sys 0m0.190s
|
Chris@82
|
90
|
Chris@82
|
91 conclusion: supports the previous test
|
Chris@82
|
92
|
Chris@105
|
93
|
Chris@105
|
94 OPENMP:
|
Chris@105
|
95
|
Chris@105
|
96 commit:62b7be1226d5, as commit:ce64d11ef336 but with OpenMP parallel
|
Chris@105
|
97 "for" in the main EM iteration loop (4 cores)
|
Chris@105
|
98
|
Chris@105
|
99 real 0m56.400s
|
Chris@105
|
100 user 2m59.740s
|
Chris@105
|
101 sys 0m0.237s
|
Chris@105
|
102
|
Chris@106
|
103
|
Chris@84
|
104 EM TWEAKS:
|
Chris@84
|
105
|
Chris@84
|
106 commit:a0dedcbfa628, as commit:ce64d11ef336 but with variables hoisted
|
Chris@84
|
107 out of loops and consts added wherever applicable
|
Chris@84
|
108
|
Chris@84
|
109 real 1m44.548s
|
Chris@84
|
110 user 1m44.460s
|
Chris@84
|
111 sys 0m0.183s
|
Chris@84
|
112
|
Chris@84
|
113 conclusion: compiler already knows this stuff
|
Chris@84
|
114
|
Chris@86
|
115 commit:64b08cc12da0, as commit:ce64d11ef336 but with loops merged so
|
Chris@86
|
116 as theoretically to reduce intermediate calculations
|
Chris@86
|
117
|
Chris@86
|
118 real 3m46.969s
|
Chris@86
|
119 user 3m46.850s
|
Chris@86
|
120 sys 0m0.220s
|
Chris@86
|
121
|
Chris@87
|
122 commit:6075e92d63ab, as commit:64b08cc12da0 but with innermost loop
|
Chris@87
|
123 reverted to three loops with simple bodies instead of one with a more
|
Chris@87
|
124 complex body
|
Chris@87
|
125
|
Chris@87
|
126 real 1m44.767s
|
Chris@87
|
127 user 1m44.490s
|
Chris@87
|
128 sys 0m0.190s
|
Chris@88
|
129
|
Chris@89
|
130 commit:97b77e7cb94c, as commit:6075e92d63ab but with templates stored
|
Chris@89
|
131 as doubles instead of floats (doubling the size of the plugin binary)
|
Chris@89
|
132
|
Chris@89
|
133 real 1m40.135s
|
Chris@89
|
134 user 1m39.820s
|
Chris@89
|
135 sys 0m0.230s
|
Chris@89
|
136
|
Chris@90
|
137 commit:a6e136aaa202, as commit:97b77e7cb94c but with target vectors &
|
Chris@90
|
138 grids initialised to epsilon instead of copied & then overwritten
|
Chris@90
|
139 (this one also makes the intention clearer I think so is worth doing)
|
Chris@90
|
140
|
Chris@90
|
141 real 1m39.277s
|
Chris@90
|
142 user 1m39.000s
|
Chris@90
|
143 sys 0m0.183s
|
Chris@90
|
144
|
Chris@93
|
145
|
Chris@93
|
146 BQVEC:
|
Chris@93
|
147
|
Chris@93
|
148 commit:81eaba98985b, as commit:a6e136aaa202 but converted to use bqvec
|
Chris@93
|
149 for basic allocation etc; processing logic unchanged
|
Chris@93
|
150
|
Chris@93
|
151 real 1m37.320s
|
Chris@93
|
152 user 1m36.863s
|
Chris@93
|
153 sys 0m0.240s
|
Chris@93
|
154
|
Chris@95
|
155 commit:891cbcf1e4d2, as commit:81eaba98985b but with some calculations
|
Chris@96
|
156 vectorised [note: has silly bug]
|
Chris@95
|
157
|
Chris@95
|
158 real 1m24.961s
|
Chris@95
|
159 user 1m24.663s
|
Chris@95
|
160 sys 0m0.177s
|
Chris@95
|
161
|
Chris@96
|
162 commit:853b2d750688, as commit:891cbcf1e4d2 but with silly bug fixed
|
Chris@96
|
163
|
Chris@96
|
164 real 1m26.876s
|
Chris@96
|
165 user 1m26.387s
|
Chris@96
|
166 sys 0m0.267s
|
Chris@96
|
167
|
Chris@101
|
168 commit:9ecad4c9c2a2, as commit:853b2d750688 but using a couple of
|
Chris@101
|
169 bqvec calls in expectation function
|
Chris@101
|
170
|
Chris@101
|
171 real 1m9.153s
|
Chris@101
|
172 user 1m8.837s
|
Chris@101
|
173 sys 0m0.187s
|
Chris@101
|
174
|
Chris@101
|
175 (this seems unlikely -- what have I broken?)
|
Chris@101
|
176
|
Chris@101
|
177 commit:8259193b3b16, as commit:9ecad4c9c2a2 but avoiding some
|
Chris@101
|
178 allocations
|
Chris@101
|
179
|
Chris@101
|
180 real 1m10.631s
|
Chris@101
|
181 user 1m10.327s
|
Chris@101
|
182 sys 0m0.180s
|
Chris@101
|
183
|
Chris@103
|
184 (still broken?)
|
Chris@103
|
185
|
Chris@103
|
186 commit:19f6832fdc8a, as commit:9ecad4c9c2a2 but with the arguments to
|
Chris@103
|
187 v_add_with_gain supplied in the right order (that's what I'd broken!)
|
Chris@103
|
188
|
Chris@103
|
189 real 1m28.957s
|
Chris@103
|
190 user 1m28.437s
|
Chris@103
|
191 sys 0m0.213s
|
Chris@103
|
192
|
Chris@107
|
193
|
Chris@107
|
194 BQVEC and OPENMP
|
Chris@107
|
195
|
Chris@107
|
196 commit:ac750e222ad3, result of merging openmp branch
|
Chris@107
|
197 commit:62b7be1226d into bqvec branch commit:19f6832fdc8a
|
Chris@107
|
198
|
Chris@107
|
199 real 0m44.650s
|
Chris@107
|
200 user 2m19.997s
|
Chris@107
|
201 sys 0m0.343s
|