Karsten Blees <karsten.bl...@gmail.com> writes:

> Simple use case (measure one code section):
>
>   uint64_t start = getnanotime();
>   /* code section to measure */
>   trace_performance_since(start, "foobar");
>
> Medium use case (measure consecutive code sections):
>
>   uint64_t start = getnanotime();
>   /* first code section to measure */
>   start = trace_performance_since(start, "first foobar");
>   /* second code section to measure */
>   trace_performance_since(start, "second foobar");
>
> Complex use case (measure repetitive code sections):
>
>   uint64_t t = 0;
>   for (;;) {
>     /* ignore */
>     t -= getnanotime();
>     /* code section to measure */
>     t += getnanotime();
>     /* ignore */
>   }
>   trace_performance(t, "frotz");

Hmph.  Even though trace_performance() makes an extra call to
getnanotime() in order to return, examples do not use the returned
value?  The second example is a good illustration why it makes sense
for trace_performance_since(), though.

> +static void trace_performance_vfl(const char *file, int line,
> +                                   uint64_t nanos, const char *format,
> +                                   va_list ap)
> +{

Just being curious, but what does "v" stand for?

The "_fl" suffix you gave to printf family made a lot of sense to
me, and I would have expected that this to be called with a "_flt"
suffix, meaning "we have file, line and then time as extra
parameters" or something.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to