RTEMS: rtems_profiling_smp_lock Struct Reference

| RTEMS 5.4-rc2

Loading...
Searching...
No Matches
Data Fields
rtems_profiling_smp_lock Struct Reference
API » Profiling Support

SMP lock profiling data. More...

`#include <profiling.h>`

## Data Fields
rtems_profiling_header | header
| The profiling data header.
const char * | name
| The lock name.
uint32_t | max_acquire_time
| The maximum lock acquire time in nanoseconds.
uint32_t | max_section_time
| The maximum lock section time in nanoseconds.
uint64_t | usage_count
| The count of lock uses.
uint64_t | total_acquire_time
| Total lock acquire time in nanoseconds.
uint64_t | total_section_time
| Total lock section time in nanoseconds.
uint64_t | contention_counts [RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS]
| The counts of lock acquire operations by contention.

## Detailed Description

SMP lock profiling data.

The lock acquire attempt instant is the point in time right after the interrupt disable action in the lock acquire sequence.

The lock acquire instant is the point in time right after the lock acquisition. This is the begin of the critical section code execution.

The lock acquire time is the time elapsed between the lock acquire attempt instant and the lock acquire instant.

The lock release instant is the point in time right before the interrupt enable action in the lock release sequence.

The lock section time is the time elapsed between the lock acquire instant and the lock release instant.

## Field Documentation

## ◆ contention_counts

uint64_t rtems_profiling_smp_lock::contention_counts[RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS]

The counts of lock acquire operations by contention.

The contention count for index N corresponds to a lock acquire attempt with an initial queue length of N. The last index corresponds to all lock acquire attempts with an initial queue length greater than or equal to RTEMS_PROFILING_SMP_LOCK_CONTENTION_COUNTS minus one.

The values may overflow.

## ◆ total_acquire_time

uint64_t rtems_profiling_smp_lock::total_acquire_time

Total lock acquire time in nanoseconds.

The average lock acquire time is the total acquire time divided by the lock usage count. The ration of the total section and total acquire times gives a measure for the lock contention.

This value may overflow.

## ◆ total_section_time

uint64_t rtems_profiling_smp_lock::total_section_time

Total lock section time in nanoseconds.

The average lock section time is the total section time divided by the lock usage count.

This value may overflow.

## ◆ usage_count

uint64_t rtems_profiling_smp_lock::usage_count

The count of lock uses.

This value may overflow.

The documentation for this struct was generated from the following file:

- cpukit/include/rtems/profiling.h