[−][src]Enum perf_event::events::Software
Software counters, implemented by the kernel.
Each variant of this enum corresponds to a particular PERF_COUNT_SW_
...
value supported by the perf_event_open
system call.
Variants
This reports the CPU clock, a high-resolution per-CPU timer.
This reports a clock count specific to the task that is running.
This reports the number of page faults.
This counts context switches. Until Linux 2.6.34, these were all reported as user-space events, after that they are reported as happening in the kernel.
This reports the number of times the process has migrated to a new CPU.
This counts the number of minor page faults. These did not require disk I/O to handle.
This counts the number of major page faults. These required disk I/O to handle.
(since Linux 2.6.33) This counts the number of alignment faults. These happen when unaligned memory accesses happen; the kernel can handle these but it reduces performance. This happens only on some architectures (never on x86).
(since Linux 2.6.33) This counts the number of emulation faults. The kernel sometimes traps on unimplemented instructions and emulates them for user space. This can negatively impact performance.
(since Linux 3.12) This is a placeholder event that counts nothing. Informational sample record types such as mmap or comm must be associated with an active event. This dummy event allows gathering such records without requiring a counting event.
Trait Implementations
impl Clone for Software
[src]
impl Copy for Software
[src]
impl Debug for Software
[src]
impl Eq for Software
[src]
impl From<Software> for Event
[src]
impl PartialEq<Software> for Software
[src]
impl StructuralEq for Software
[src]
impl StructuralPartialEq for Software
[src]
Auto Trait Implementations
impl RefUnwindSafe for Software
impl Send for Software
impl Sync for Software
impl Unpin for Software
impl UnwindSafe for Software
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,