On 07/26/2011 10:17 PM, Mathieu Desnoyers wrote:
* Abbas Raza ([email protected]) wrote:
[...]
Hi Mathieu,

Some confusion here :(

In case of LTTng 0.x, when we take kernel traces then timestamps for
these traces is based on TSC/TB . So after that we view these traces by
lttv and it shows timestamps with all events which occurred.
I print the timestamp in kernel ltt function 'ltt_trace_alloc()'  and it
comes out to be 22944596907 (by calling trace_clock_read64() ). While
lttv show Birth sec of first event to 367 second. How this conversion is
made from TSC to the Birth sec/nsec value displayed in lttv? just want
to confirm that whether timestamps shown in lttv (Birth sec/nsec) are
based on TSC values... if yes then how TSC values are converted to Birth
sec/nsec and i no then from where lttv gets timestamps to be displayed?
Or in simple words, do kernel traces which we get contain timestamps
based simply on TSC values or it is something else?
Yes, we write, in the lttng 0.x headers, the following information:

struct ltt_subbuffer_header {
  [...]
         uint64_t start_freq;            /*
                                          * Frequency at trace start,
                                          * used all along the trace.
                                          */
         uint32_t freq_scale;            /* Frequency scaling (divisor) */
[...]
}

so by using the start frequency and the scale, we can convert from TSC
values to nanoseconds. Please note that LTTng 0.x requires the clock
source to appear as if it has a constant rate.

These values map to trace_clock_frequency() and trace_clock_freq_scale()
trace clock functions.

Best regards,

Mathieu

Thanks a lot again for help :)


Abbas Raza


Just to confirm that TSC's just have raw values of clock cycles and lttv converts these values into sec/nsec by reading ltt_subbuffer_header ?


Thanks!

Abbas Raza


_______________________________________________
ltt-dev mailing list
[email protected]
http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev

Reply via email to