DPDK
18.02.2
|
Go to the source code of this file.
Data Structures | |
struct | lcore_config |
Macros | |
#define | LCORE_ID_ANY UINT32_MAX |
#define | RTE_LCORE_FOREACH(i) |
#define | RTE_LCORE_FOREACH_SLAVE(i) |
Functions | |
RTE_DECLARE_PER_LCORE (unsigned, _lcore_id) | |
RTE_DECLARE_PER_LCORE (rte_cpuset_t, _cpuset) | |
static unsigned | rte_lcore_id (void) |
static unsigned | rte_get_master_lcore (void) |
static unsigned | rte_lcore_count (void) |
static int | rte_lcore_index (int lcore_id) |
unsigned | rte_socket_id (void) |
static unsigned | rte_lcore_to_socket_id (unsigned lcore_id) |
static int | rte_lcore_is_enabled (unsigned lcore_id) |
static unsigned | rte_get_next_lcore (unsigned i, int skip_master, int wrap) |
int | rte_thread_set_affinity (rte_cpuset_t *cpusetp) |
void | rte_thread_get_affinity (rte_cpuset_t *cpusetp) |
int | rte_thread_setname (pthread_t id, const char *name) |
int | rte_lcore_has_role (unsigned int lcore_id, enum rte_lcore_role_t role) |
Variables | |
struct lcore_config | lcore_config [RTE_MAX_LCORE] |
API for lcore and socket manipulation
Definition in file rte_lcore.h.
#define LCORE_ID_ANY UINT32_MAX |
Any lcore.
Definition at line 23 of file rte_lcore.h.
#define RTE_LCORE_FOREACH | ( | i | ) |
Macro to browse all running lcores.
Definition at line 201 of file rte_lcore.h.
#define RTE_LCORE_FOREACH_SLAVE | ( | i | ) |
Macro to browse all running lcores except the master lcore.
Definition at line 209 of file rte_lcore.h.
RTE_DECLARE_PER_LCORE | ( | unsigned | , |
_lcore_id | |||
) |
Per thread "lcore id".
RTE_DECLARE_PER_LCORE | ( | rte_cpuset_t | , |
_cpuset | |||
) |
Per thread "cpuset".
|
inlinestatic |
Return the Application thread ID of the execution unit.
Note: in most cases the lcore id returned here will also correspond to the processor id of the CPU on which the thread is pinned, this will not be the case if the user has explicitly changed the thread to core affinities using –lcores EAL argument e.g. –lcores '(0-3)@10' to run threads with lcore IDs 0, 1, 2 and 3 on physical core 10..
Definition at line 72 of file rte_lcore.h.
|
inlinestatic |
Get the id of the master lcore
Definition at line 84 of file rte_lcore.h.
|
inlinestatic |
Return the number of execution units (lcores) on the system.
Definition at line 96 of file rte_lcore.h.
|
inlinestatic |
Return the index of the lcore starting from zero.
When option -c or -l is given, the index corresponds to the order in the list. For example: -c 0x30, lcore 4 has index 0, and 5 has index 1. -l 22,18 lcore 22 has index 0, and 18 has index 1.
lcore_id | The targeted lcore, or -1 for the current one. |
Definition at line 117 of file rte_lcore.h.
unsigned rte_socket_id | ( | void | ) |
Return the ID of the physical socket of the logical core we are running on.
|
inlinestatic |
Get the ID of the physical socket of the specified lcore
lcore_id | the targeted lcore, which MUST be between 0 and RTE_MAX_LCORE-1. |
Definition at line 143 of file rte_lcore.h.
|
inlinestatic |
Test if an lcore is enabled.
lcore_id | The identifier of the lcore, which MUST be between 0 and RTE_MAX_LCORE-1. |
Definition at line 158 of file rte_lcore.h.
|
inlinestatic |
Get the next enabled lcore ID.
i | The current lcore (reference). |
skip_master | If true, do not return the ID of the master lcore. |
wrap | If true, go back to 0 when RTE_MAX_LCORE is reached; otherwise, return RTE_MAX_LCORE. |
Definition at line 180 of file rte_lcore.h.
int rte_thread_set_affinity | ( | rte_cpuset_t * | cpusetp | ) |
Set core affinity of the current thread. Support both EAL and non-EAL thread and update TLS.
cpusetp | Point to cpu_set_t for setting current thread affinity. |
void rte_thread_get_affinity | ( | rte_cpuset_t * | cpusetp | ) |
Get core affinity of the current thread.
cpusetp | Point to cpu_set_t for getting current thread cpu affinity. It presumes input is not NULL, otherwise it causes panic. |
int rte_thread_setname | ( | pthread_t | id, |
const char * | name | ||
) |
Set thread names.
id | Thread id. |
name | Thread name to set. |
int rte_lcore_has_role | ( | unsigned int | lcore_id, |
enum rte_lcore_role_t | role | ||
) |
Test if the core supplied has a specific role
lcore_id | The identifier of the lcore, which MUST be between 0 and RTE_MAX_LCORE-1. |
role | The role to be checked against. |
struct lcore_config lcore_config[RTE_MAX_LCORE] |
Internal configuration (per-lcore)