• Jason Yeh's avatar
    oprofile: Implement performance counter multiplexing · 4d4036e0
    Jason Yeh authored
    The number of hardware counters is limited. The multiplexing feature
    enables OProfile to gather more events than counters are provided by
    the hardware. This is realized by switching between events at an user
    specified time interval.
    
    A new file (/dev/oprofile/time_slice) is added for the user to specify
    the timer interval in ms. If the number of events to profile is higher
    than the number of hardware counters available, the patch will
    schedule a work queue that switches the event counter and re-writes
    the different sets of values into it. The switching mechanism needs to
    be implemented for each architecture to support multiplexing. This
    patch only implements AMD CPU support, but multiplexing can be easily
    extended for other models and architectures.
    
    There are follow-on patches that rework parts of this patch.
    Signed-off-by: default avatarJason Yeh <jason.yeh@amd.com>
    Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
    4d4036e0
op_counter.h 510 Bytes