|
DPDK
2.2.0
|
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) |
| #define | rte_thread_setname(...) pthread_setname_np(__VA_ARGS__) |
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) |
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 51 of file rte_lcore.h.
| #define RTE_LCORE_FOREACH | ( | i | ) |
Macro to browse all running lcores.
Definition at line 216 of file rte_lcore.h.
| #define RTE_LCORE_FOREACH_SLAVE | ( | i | ) |
Macro to browse all running lcores except the master lcore.
Definition at line 224 of file rte_lcore.h.
| #define rte_thread_setname | ( | ... | ) | pthread_setname_np(__VA_ARGS__) |
Set thread names.
Macro to wrap pthread_setname_np() with a glibc version check. Only glibc >= 2.12 supports this feature.
This macro only used for Linux, BSD does direct libc call. BSD libc version of function is pthread_set_name_np().
Definition at line 260 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 ID of the execution unit we are running on.
Definition at line 92 of file rte_lcore.h.
|
inlinestatic |
Get the id of the master lcore
Definition at line 104 of file rte_lcore.h.
|
inlinestatic |
Return the number of execution units (lcores) on the system.
Definition at line 116 of file rte_lcore.h.
|
inlinestatic |
Return the index of the lcore starting from zero. The order is physical or given by command line (-l option).
| lcore_id | The targeted lcore, or -1 for the current one. |
Definition at line 132 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 158 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 173 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 195 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. |
| struct lcore_config lcore_config[RTE_MAX_LCORE] |
Internal configuration (per-lcore)
1.8.1.2