rte_power_cpufreq.h(3)

NAME
rte_power_cpufreq.h

SYNOPSIS

#include <rte_common.h>
#include <rte_log.h>

  Data Structures

struct rte_power_core_capabilities

  Functions

int rte_power_check_env_supported (enum power_management_env env)
int rte_power_set_env (enum power_management_env env)
void rte_power_unset_env (void)
enum power_management_env rte_power_get_env (void)
int rte_power_init (unsigned int lcore_id)
int rte_power_exit (unsigned int lcore_id)
uint32_t rte_power_freqs (unsigned int lcore_id, uint32_t *freqs, uint32_t num)
uint32_t rte_power_get_freq (unsigned int lcore_id)
uint32_t rte_power_set_freq (unsigned int lcore_id, uint32_t index)
int rte_power_freq_up (unsigned int lcore_id)
int rte_power_freq_down (unsigned int lcore_id)
int rte_power_freq_max (unsigned int lcore_id)
int rte_power_freq_min (unsigned int lcore_id)
int rte_power_turbo_status (unsigned int lcore_id)
int rte_power_freq_enable_turbo (unsigned int lcore_id)
int rte_power_freq_disable_turbo (unsigned int lcore_id)
int rte_power_get_capabilities (unsigned int lcore_id, struct rte_power_core_capabilities *caps)

Detailed Description

CPU Frequency Management

Definition in file rte_power_cpufreq.h.

Function Documentation

  int rte_power_check_env_supported (enum power_management_env env)
Check if a specific power management environment type is supported on a currently running system.

Parameters
    env The environment type to check support for.

Returns

    •   1 if supported

    •   0 if unsupported

    •   -1 if error, with rte_errno indicating reason for error.

  int rte_power_set_env (enum power_management_env env)
Set the default power management implementation. If this is not called prior to rte_power_init(), then auto-detect of the environment will take place. It is thread safe. New env can be set only in uninitialized state (thus rte_power_unset_env must be called if different env was already set).

Parameters
    env env. The environment in which to initialise Power Management for.

Returns

    •   0 on success.

    •   Negative on error.

  void rte_power_unset_env (void )
Unset the global environment configuration. This can only be called after all threads have completed.

  enum power_management_env rte_power_get_env (void )
Get the default power management implementation.

Returns
    power_management_env The configured environment.

  int rte_power_init (unsigned int lcore_id)
Initialize power management for a specific lcore. If rte_power_set_env() has not been called then an auto-detect of the environment will start and initialise the corresponding resources.

Parameters
    lcore_id lcore id.

Returns

    •   0 on success.

    •   Negative on error.

  int rte_power_exit (unsigned int lcore_id)
Exit power management on a specific lcore. This will call the environment dependent exit function.

Parameters
    lcore_id lcore id.

Returns

    •   0 on success.

    •   Negative on error.

  uint32_t rte_power_freqs (unsigned int lcore_id, uint32_t * freqs, uint32_t num)
Get the available frequencies of a specific lcore. Function pointer definition. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.
    freqs The buffer array to save the frequencies.
    num The number of frequencies to get.

Returns
    The number of available frequencies.

  uint32_t rte_power_get_freq (unsigned int lcore_id)
Return the current index of available frequencies of a specific lcore. Function pointer definition. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.

Returns
    The current index of available frequencies.

  uint32_t rte_power_set_freq (unsigned int lcore_id, uint32_t index)
Set the new frequency for a specific lcore by indicating the index of available frequencies. Function pointer definition. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.
    index The index of available frequencies.

Returns

    •   1 on success with frequency changed.

    •   0 on success without frequency changed.

    •   Negative on error.

  int rte_power_freq_up (unsigned int lcore_id)
Scale up the frequency of a specific lcore according to the available frequencies. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.

Returns

    •   1 on success with frequency changed.

    •   0 on success without frequency changed.

    •   Negative on error.

  int rte_power_freq_down (unsigned int lcore_id)
Scale down the frequency of a specific lcore according to the available frequencies. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.

Returns

    •   1 on success with frequency changed.

    •   0 on success without frequency changed.

    •   Negative on error.

  int rte_power_freq_max (unsigned int lcore_id)
Scale up the frequency of a specific lcore to the highest according to the available frequencies. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.

Returns

    •   1 on success with frequency changed.

    •   0 on success without frequency changed.

    •   Negative on error.

  int rte_power_freq_min (unsigned int lcore_id)
Scale down the frequency of a specific lcore to the lowest according to the available frequencies. Review each environments specific documentation for usage..

Parameters
    lcore_id lcore id.

Returns

    •   1 on success with frequency changed.

    •   0 on success without frequency changed.

    •   Negative on error.

  int rte_power_turbo_status (unsigned int lcore_id)
Query the Turbo Boost status of a specific lcore. Review each environments specific documentation for usage..

Parameters
    lcore_id lcore id.

Returns

    •   1 turbo boost enabled.

    •   0 turbo boost disabled.

    •   Negative on error.

  int rte_power_freq_enable_turbo (unsigned int lcore_id)
Enable Turbo Boost for this lcore. Review each environments specific documentation for usage..

Parameters
    lcore_id lcore id.

Returns

    •   0 on success.

    •   Negative on error.

  int rte_power_freq_disable_turbo (unsigned int lcore_id)
Disable Turbo Boost for this lcore. Review each environments specific documentation for usage..

Parameters
    lcore_id lcore id.

Returns

    •   0 on success.

    •   Negative on error.

  int rte_power_get_capabilities (unsigned int lcore_id, struct rte_power_core_capabilities * caps)
Returns power capabilities for a specific lcore. Function pointer definition. Review each environments specific documentation for usage.

Parameters
    lcore_id lcore id.
    caps pointer to rte_power_core_capabilities object.

Returns

    •   0 on success.

    •   Negative on error.

Author

Generated automatically by Doxygen for DPDK from the source code.