numam-dpdk/examples
Guruprasad Mukundarao fa667b46f5 examples/ip_pipeline: add core mappings script
This script parses the application configuration file and detects all the
pipelines specified therein, and then, it generates all the possible mappings
of those pipelines on the specified CPU core-list.

As a result, each of the possible pipeline-to-core mappings is saved as
separate output configuration file. For example- if input file is
edge_router_downstream.cfg with 3 pipeline (excluding pipeline 0) and
core-list is “1, 2”, following combinations will be generated-

Pipeline 1        Pipeline 2      Pipeline 3
Core = 1          Core = 1        Core = 2
Core = 1          Core = 2        Core = 1
Core = 2          Core = 1        Core = 1
Core = 2          Core = 2        Core = 1
Core = 2          Core = 1        Core = 2
Core = 1          Core = 2        Core = 2
Core = C1         Core = C1H      Core = C2
Core = C1         Core = C2       Core = C1H
Core = C2         Core = C1       Core = C1H

This script will help users to analyse the performance of application by
evaluating all the generated configuration files with different
pipelines-to-core mappings and obtaining the application configuration file
with best performance.

To run the script, issue the following command;

./pipeline-to-core-mapping.py -i <input_configuration_file> -pc "s<socket-id>c<core-id>"

Some optional arguments are as follows:
  -h, --help            show this help message and exit
  -ht {ON,OFF}, --hyper-thread {ON,OFF}
                        enable/disable hyper threading. default is ON
  -nO, --no-output-file
                        disable output config file generation. Output file
                        generation is enabled by default

Signed-off-by: Guruprasad Mukundarao <guruprasadx.rao@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
2016-06-14 21:21:59 +02:00
..
bond examples/bond: fix FreeBSD build 2015-12-07 03:21:13 +01:00
cmdline examples: fix whitespace 2015-06-12 11:10:10 +02:00
distributor examples/distributor: check mempool error 2016-05-16 21:01:51 +02:00
dpdk_qat examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
ethtool ethdev: use dedicated macro to check port id 2016-05-24 15:30:08 +02:00
exception_path examples/exception_path: fix shift operation in lcore setup 2016-04-27 17:41:46 +02:00
helloworld tailq: remove unneeded inclusions 2015-03-10 11:47:46 +01:00
ip_fragmentation examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
ip_pipeline examples/ip_pipeline: add core mappings script 2016-06-14 21:21:59 +02:00
ip_reassembly examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
ipsec-secgw mbuf: add prefetch helpers 2016-05-24 11:21:14 +02:00
ipv4_multicast eal: add assert macro for debug 2016-05-02 15:31:17 +02:00
kni examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
l2fwd examples/l2fwd: increase mempool cache size for performance 2016-06-08 22:38:52 +02:00
l2fwd-cat examples/l2fwd-cat: add sample application for PQoS CAT and CDP 2016-03-21 23:36:43 +01:00
l2fwd-crypto examples/l2fwd-crypto: fix supported key size check 2016-06-07 22:21:52 +02:00
l2fwd-ivshmem examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
l2fwd-jobstats examples/l2fwd-jobstats: fix a typo 2016-06-08 22:38:52 +02:00
l2fwd-keepalive examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
l3fwd examples/l3fwd: report error when no vector engine available 2016-06-08 22:38:52 +02:00
l3fwd-acl examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
l3fwd-power examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
l3fwd-vf examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
link_status_interrupt examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
load_balancer ethdev: use constants for link state 2016-04-01 21:38:34 +02:00
multi_process examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
netmap_compat examples/netmap_compat: fix infinite loop 2016-05-16 21:01:51 +02:00
packet_ordering examples: remove useless debug flags 2016-05-02 15:31:17 +02:00
performance-thread examples/performance-thread: fix size of destination port ids 2016-06-08 22:38:52 +02:00
ptpclient mk: fix missing librt dependencies 2016-03-22 20:46:53 +01:00
qos_meter examples/qos_meter: check flow configuration error 2016-05-16 18:49:12 +02:00
qos_sched examples/qos_sched: fix lcore limit 2016-05-16 18:49:12 +02:00
quota_watermark examples/quota_watermark: fix memory overflow 2016-06-08 22:38:52 +02:00
rxtx_callbacks apps: fix default mbuf size 2015-05-11 15:51:14 +02:00
skeleton apps: fix default mbuf size 2015-05-11 15:51:14 +02:00
tep_termination examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
timer tailq: remove unneeded inclusions 2015-03-10 11:47:46 +01:00
vhost examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
vhost_xen examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
vm_power_manager examples/vm_power_manager: ensure domain name is null terminated 2016-05-16 14:48:09 +02:00
vmdq examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
vmdq_dcb examples: remove useless check of port count 2016-05-16 21:01:51 +02:00
Makefile examples/vm_power_manager: fix libvirt dependency check 2016-04-11 14:29:19 +02:00