91 |
not very precise but sufficient |
not very precise but sufficient |
92 |
*/ |
*/ |
93 |
double |
double |
94 |
get_freq() |
get_freq(void) |
95 |
{ |
{ |
96 |
int64_t x, y; |
int64_t x, y; |
97 |
int32_t i; |
int32_t i; |
110 |
return (double) (y - x) / 1000.; |
return (double) (y - x) / 1000.; |
111 |
} |
} |
112 |
|
|
113 |
// set everything to zero // |
/* set everything to zero */ |
114 |
void |
void |
115 |
init_timer() |
init_timer(void) |
116 |
{ |
{ |
117 |
frequency = get_freq(); |
frequency = get_freq(); |
118 |
|
|
124 |
} |
} |
125 |
|
|
126 |
void |
void |
127 |
start_timer() |
start_timer(void) |
128 |
{ |
{ |
129 |
tim.current = read_counter(); |
tim.current = read_counter(); |
130 |
} |
} |
131 |
|
|
132 |
void |
void |
133 |
start_global_timer() |
start_global_timer(void) |
134 |
{ |
{ |
135 |
tim.global = read_counter(); |
tim.global = read_counter(); |
136 |
} |
} |
137 |
|
|
138 |
void |
void |
139 |
stop_dct_timer() |
stop_dct_timer(void) |
140 |
{ |
{ |
141 |
tim.dct += (read_counter() - tim.current); |
tim.dct += (read_counter() - tim.current); |
142 |
} |
} |
143 |
|
|
144 |
void |
void |
145 |
stop_idct_timer() |
stop_idct_timer(void) |
146 |
{ |
{ |
147 |
tim.idct += (read_counter() - tim.current); |
tim.idct += (read_counter() - tim.current); |
148 |
} |
} |
149 |
|
|
150 |
void |
void |
151 |
stop_quant_timer() |
stop_quant_timer(void) |
152 |
{ |
{ |
153 |
tim.quant += (read_counter() - tim.current); |
tim.quant += (read_counter() - tim.current); |
154 |
} |
} |
155 |
|
|
156 |
void |
void |
157 |
stop_iquant_timer() |
stop_iquant_timer(void) |
158 |
{ |
{ |
159 |
tim.iquant += (read_counter() - tim.current); |
tim.iquant += (read_counter() - tim.current); |
160 |
} |
} |
161 |
|
|
162 |
void |
void |
163 |
stop_motion_timer() |
stop_motion_timer(void) |
164 |
{ |
{ |
165 |
tim.motion += (read_counter() - tim.current); |
tim.motion += (read_counter() - tim.current); |
166 |
} |
} |
167 |
|
|
168 |
void |
void |
169 |
stop_comp_timer() |
stop_comp_timer(void) |
170 |
{ |
{ |
171 |
tim.comp += (read_counter() - tim.current); |
tim.comp += (read_counter() - tim.current); |
172 |
} |
} |
173 |
|
|
174 |
void |
void |
175 |
stop_edges_timer() |
stop_edges_timer(void) |
176 |
{ |
{ |
177 |
tim.edges += (read_counter() - tim.current); |
tim.edges += (read_counter() - tim.current); |
178 |
} |
} |
179 |
|
|
180 |
void |
void |
181 |
stop_inter_timer() |
stop_inter_timer(void) |
182 |
{ |
{ |
183 |
tim.inter += (read_counter() - tim.current); |
tim.inter += (read_counter() - tim.current); |
184 |
} |
} |
185 |
|
|
186 |
void |
void |
187 |
stop_conv_timer() |
stop_conv_timer(void) |
188 |
{ |
{ |
189 |
tim.conv += (read_counter() - tim.current); |
tim.conv += (read_counter() - tim.current); |
190 |
} |
} |
191 |
|
|
192 |
void |
void |
193 |
stop_transfer_timer() |
stop_transfer_timer(void) |
194 |
{ |
{ |
195 |
tim.trans += (read_counter() - tim.current); |
tim.trans += (read_counter() - tim.current); |
196 |
} |
} |
197 |
|
|
198 |
void |
void |
199 |
stop_prediction_timer() |
stop_prediction_timer(void) |
200 |
{ |
{ |
201 |
tim.prediction += (read_counter() - tim.current); |
tim.prediction += (read_counter() - tim.current); |
202 |
} |
} |
203 |
|
|
204 |
void |
void |
205 |
stop_coding_timer() |
stop_coding_timer(void) |
206 |
{ |
{ |
207 |
tim.coding += (read_counter() - tim.current); |
tim.coding += (read_counter() - tim.current); |
208 |
} |
} |
209 |
|
|
210 |
void |
void |
211 |
stop_interlacing_timer() |
stop_interlacing_timer(void) |
212 |
{ |
{ |
213 |
tim.interlacing += (read_counter() - tim.current); |
tim.interlacing += (read_counter() - tim.current); |
214 |
} |
} |
215 |
|
|
216 |
void |
void |
217 |
stop_global_timer() |
stop_global_timer(void) |
218 |
{ |
{ |
219 |
tim.overall += (read_counter() - tim.global); |
tim.overall += (read_counter() - tim.global); |
220 |
} |
} |
223 |
write log file with some timer information |
write log file with some timer information |
224 |
*/ |
*/ |
225 |
void |
void |
226 |
write_timer() |
write_timer(void) |
227 |
{ |
{ |
228 |
float dct_per, quant_per, idct_per, iquant_per, mot_per, comp_per, |
float dct_per, quant_per, idct_per, iquant_per, mot_per, comp_per, |
229 |
interlacing_per; |
interlacing_per; |
233 |
|
|
234 |
count_frames++; |
count_frames++; |
235 |
|
|
236 |
// only write log file every 50 processed frames // |
/* only write log file every 50 processed frames */ |
237 |
if (count_frames % 50) { |
if (count_frames % 50) { |
238 |
FILE *fp; |
FILE *fp; |
239 |
|
|