[dpdk-dev,v1] doc: update definition of lcore id and lcore index
Checks
Commit Message
Added examples in lcore index for better
explanation on various examples,
Sited examples for lcore id.
Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
---
lib/librte_eal/common/include/rte_lcore.h | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
Comments
On Wed, Jan 31, 2018 at 04:46:46PM +0000, Marko Kovacevic wrote:
> Added examples in lcore index for better
> explanation on various examples,
> Sited examples for lcore id.
>
> Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
> ---
> lib/librte_eal/common/include/rte_lcore.h | 17 +++++++++++++++--
> 1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/lib/librte_eal/common/include/rte_lcore.h b/lib/librte_eal/common/include/rte_lcore.h
> index d84bcff..349ac36 100644
> --- a/lib/librte_eal/common/include/rte_lcore.h
> +++ b/lib/librte_eal/common/include/rte_lcore.h
> @@ -57,7 +57,9 @@ RTE_DECLARE_PER_LCORE(unsigned, _lcore_id); /**< Per thread "lcore id". */
> RTE_DECLARE_PER_LCORE(rte_cpuset_t, _cpuset); /**< Per thread "cpuset". */
>
> /**
> - * Return the ID of the execution unit we are running on.
> + * Return the Application thread ID of the execution unit.
> + * If option '-l' or '-c' is provided the lcore ID is the actual
> + * CPU ID.
Good idea to clarify this!
I'd suggest the second sentence might do with being reworked a little
though - the lcore ID will also be the processor id even if no args i.e.
no -c or -l arguments are passed.
How about:
* 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.
It's longer, I know, but hopefully a bit clearer for the user.
/Bruce
@@ -57,7 +57,9 @@ RTE_DECLARE_PER_LCORE(unsigned, _lcore_id); /**< Per thread "lcore id". */
RTE_DECLARE_PER_LCORE(rte_cpuset_t, _cpuset); /**< Per thread "cpuset". */
/**
- * Return the ID of the execution unit we are running on.
+ * Return the Application thread ID of the execution unit.
+ * If option '-l' or '-c' is provided the lcore ID is the actual
+ * CPU ID.
* @return
* Logical core ID (in EAL thread) or LCORE_ID_ANY (in non-EAL thread)
*/
@@ -94,8 +96,19 @@ rte_lcore_count(void)
/**
* Return the index of the lcore starting from zero.
- * The order is physical or given by command line (-l option).
*
+ * For example: <Core parameters - Mapping description>
+ * 1. '-c 0xf0' - CPU core ID 4 is index 0, 5
+ * is 1 and so on.
+ *
+ * 2. '-l 22-25' - CPU core ID 22 is index 0
+ * 23 is 1 and so on.
+ *
+ * 3. '-l 22,18' - CPU core ID 22 is index 0 and
+ * 18 is 1
+ *
+ * 4. '-c 0xcc' - CPU core ID 2 is index 0, 3 is index 1,
+ * 6 is index 2 and 7 is index 3.
* @param lcore_id
* The targeted lcore, or -1 for the current one.
* @return