perf: Get rid of cairo_perf_ticks_per_second()

The cairo_time_from_s() and cairo_time_to_s() functions should be used
instead.
This commit is contained in:
Andrea Canciani 2011-08-31 17:03:33 +02:00
parent 9172e2aec0
commit dcd3e2cde1
4 changed files with 31 additions and 40 deletions

View file

@ -135,7 +135,7 @@ cairo_perf_calibrate (cairo_perf_t *perf,
calibration = perf_func (perf->cr, perf->size, perf->size, min_loops);
if (!perf->fast_and_sloppy) {
calibration_max = perf->ms_per_iteration * 0.0001 / 4 * cairo_perf_ticks_per_second ();
calibration_max = _cairo_time_from_s (perf->ms_per_iteration * 0.0001 / 4);
while (calibration < calibration_max) {
min_loops *= 2;
calibration = perf_func (perf->cr, perf->size, perf->size, min_loops);
@ -153,7 +153,7 @@ cairo_perf_calibrate (cairo_perf_t *perf,
* a more rigorous analysis of the synchronisation overhead,
* that is to estimate the time for loop=0.
*/
loops = perf->ms_per_iteration * 0.001 * cairo_perf_ticks_per_second () * min_loops / calibration;
loops = _cairo_time_from_s (perf->ms_per_iteration * 0.001 * min_loops / calibration);
min_loops = perf->fast_and_sloppy ? 1 : 10;
if (loops < min_loops)
loops = min_loops;
@ -262,7 +262,7 @@ cairo_perf_run (cairo_perf_t *perf,
perf->target->name,
_content_to_string (perf->target->content, similar),
name, perf->size,
cairo_perf_ticks_per_second () / 1000.0);
_cairo_time_to_double (_cairo_time_from_s (1.)) / 1000.);
printf (" %lld", (long long) times[i]);
} else if (! perf->exact_iterations) {
if (i > 0) {
@ -289,16 +289,16 @@ cairo_perf_run (cairo_perf_t *perf,
fprintf (perf->summary,
"%10lld %#8.3f %#8.3f %#5.2f%% %3d: %.2f\n",
(long long) stats.min_ticks,
(stats.min_ticks * 1000.0) / cairo_perf_ticks_per_second (),
(stats.median_ticks * 1000.0) / cairo_perf_ticks_per_second (),
_cairo_time_to_s (stats.min_ticks) * 1000.0,
_cairo_time_to_s (stats.median_ticks) * 1000.0,
stats.std_dev * 100.0, stats.iterations,
count * cairo_perf_ticks_per_second () / stats.min_ticks);
count / _cairo_time_to_s (stats.min_ticks));
} else {
fprintf (perf->summary,
"%10lld %#8.3f %#8.3f %#5.2f%% %3d\n",
(long long) stats.min_ticks,
(stats.min_ticks * 1000.0) / cairo_perf_ticks_per_second (),
(stats.median_ticks * 1000.0) / cairo_perf_ticks_per_second (),
_cairo_time_to_s (stats.min_ticks) * 1000.0,
_cairo_time_to_s (stats.median_ticks) * 1000.0,
stats.std_dev * 100.0, stats.iterations);
}
fflush (perf->summary);

View file

@ -653,12 +653,12 @@ cairo_perf_trace (cairo_perf_t *perf,
if (perf->observe) {
cairo_device_t *observer = cairo_surface_get_device (args.surface);
times[i] = cairo_device_observer_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
paint[i] = cairo_device_observer_paint_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
mask[i] = cairo_device_observer_mask_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
stroke[i] = cairo_device_observer_stroke_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
fill[i] = cairo_device_observer_fill_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
glyphs[i] = cairo_device_observer_glyphs_elapsed (observer) * (1e-9 * cairo_perf_ticks_per_second ());
times[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_elapsed (observer));
paint[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_paint_elapsed (observer));
mask[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_mask_elapsed (observer));
stroke[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_stroke_elapsed (observer));
fill[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_fill_elapsed (observer));
glyphs[i] = _cairo_time_from_s (1.e9 * cairo_device_observer_glyphs_elapsed (observer));
} else {
clear_surface (args.surface); /* queue a write to the sync'ed surface */
cairo_perf_timer_stop ();
@ -692,7 +692,7 @@ cairo_perf_trace (cairo_perf_t *perf,
"rgba",
name,
0,
cairo_perf_ticks_per_second () / 1000.0);
_cairo_time_to_double (_cairo_time_from_s (1)) / 1000.);
printf (" %lld", (long long) times[i]);
fflush (stdout);
} else if (! perf->exact_iterations) {
@ -718,35 +718,35 @@ cairo_perf_trace (cairo_perf_t *perf,
name);
if (perf->observe) {
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, paint, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, mask, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, fill, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, stroke, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, glyphs, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
fprintf (perf->summary,
" %5d", i+1);
} else {
fprintf (perf->summary,
"%#8.3f %#8.3f %#6.2f%% %4d/%d",
(double) stats.min_ticks / cairo_perf_ticks_per_second (),
(double) stats.median_ticks / cairo_perf_ticks_per_second (),
_cairo_time_to_s (stats.min_ticks),
_cairo_time_to_s (stats.median_ticks),
stats.std_dev * 100.0,
stats.iterations, i+1);
}
@ -766,35 +766,35 @@ cairo_perf_trace (cairo_perf_t *perf,
}
if (perf->observe) {
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, paint, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, mask, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, fill, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, stroke, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
_cairo_stats_compute (&stats, glyphs, i+1);
fprintf (perf->summary,
" %#9.3f", (double) stats.median_ticks / cairo_perf_ticks_per_second ());
" %#9.3f", _cairo_time_to_s (stats.median_ticks));
fprintf (perf->summary,
" %5d\n", i+1);
} else {
fprintf (perf->summary,
"%#8.3f %#8.3f %#6.2f%% %4d/%d\n",
(double) stats.min_ticks / cairo_perf_ticks_per_second (),
(double) stats.median_ticks / cairo_perf_ticks_per_second (),
_cairo_time_to_s (stats.min_ticks),
_cairo_time_to_s (stats.median_ticks),
stats.std_dev * 100.0,
stats.iterations, i);
}

View file

@ -78,12 +78,6 @@ cairo_perf_timer_elapsed (void)
return timer;
}
cairo_time_t
cairo_perf_ticks_per_second (void)
{
return _cairo_time_from_s (1.);
}
void
cairo_perf_yield (void)
{

View file

@ -58,9 +58,6 @@ cairo_perf_timer_set_synchronize (cairo_perf_timer_synchronize_t synchronize,
cairo_time_t
cairo_perf_timer_elapsed (void);
cairo_time_t
cairo_perf_ticks_per_second (void);
/* yield */
void