#
f7c9651c |
| 11-Dec-2024 |
Andre Muezerie <andremue@linux.microsoft.com> |
app: use portable variadic macros
Many places are using a GCC extension related to variadic macros, where a name prepends the ellipsis. This results in a warning like the one below when compiling th
app: use portable variadic macros
Many places are using a GCC extension related to variadic macros, where a name prepends the ellipsis. This results in a warning like the one below when compiling the code with MSVC:
app\test-pmd\testpmd.h(1314): error C2608: invalid token '...' in macro parameter list
Variadic macros became a standard part of the C language with C99. GCC, Clang and MSVC handle them properly.
The fix is to remove the prefix name (args... becomes ...) and use __VA_ARGS__.
Signed-off-by: Andre Muezerie <andremue@linux.microsoft.com>
show more ...
|
#
7a7a04d3 |
| 07-Oct-2024 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add pre-scheduling
Add support to configure pre-scheduling for eventdev test application. Option `--preschedule` 0 - Disable pre-scheduling. 1 - Enable pre-scheduling. 2 - Enable
app/eventdev: add pre-scheduling
Add support to configure pre-scheduling for eventdev test application. Option `--preschedule` 0 - Disable pre-scheduling. 1 - Enable pre-scheduling. 2 - Enable pre-schedule with adaptive mode (Default).
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
b25a66c4 |
| 12-Mar-2024 |
Amit Prakash Shukla <amitprakashs@marvell.com> |
app/eventdev: add DMA adapter performance test
Added performance test support for DMA adapter.
Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> Acked-by: Pavan Nikhilesh <pbhagavatula@
app/eventdev: add DMA adapter performance test
Added performance test support for DMA adapter.
Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
show more ...
|
#
750ab9d5 |
| 24-Feb-2023 |
Aakash Sasidharan <asasidharan@marvell.com> |
app/eventdev: support non-null cipher algorithms
Testeventdev crypto adapter symmetric tests are only attempting NULL cipher algorithm. This limits crypto adapter usage with only PMDs that can suppo
app/eventdev: support non-null cipher algorithms
Testeventdev crypto adapter symmetric tests are only attempting NULL cipher algorithm. This limits crypto adapter usage with only PMDs that can support NULL cipher algorithm. Also, since NULL cipher algorithm doesn't perform any crypto operation, the performance numbers reported may not reflect the actual crypto capabilities of the device. Extend the application to support non-NULL cipher algorithms.
Signed-off-by: Aakash Sasidharan <asasidharan@marvell.com> Acked-by: Akhil Goyal <gakhil@marvell.com>
show more ...
|
#
c9043624 |
| 25-May-2022 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add Tx first option to pipeline mode
Add Tx first support to pipeline mode tests, the transmission is done on all the ethernet ports. This helps in testing eventdev performance with st
app/eventdev: add Tx first option to pipeline mode
Add Tx first support to pipeline mode tests, the transmission is done on all the ethernet ports. This helps in testing eventdev performance with standalone loopback interfaces.
Example: ./dpdk-test-eventdev ... -- ... --tx_first 512
512 defines the number of packets to transmit. Add an option Tx packet size, the default packet size is 64.
Following example can change packet size value as 320.
Example: ./dpdk-test-eventdev ... -- ... --tx_first 512 --tx_pkt_sz 320
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
8f5b5495 |
| 12-May-2022 |
Akhil Goyal <gakhil@marvell.com> |
app/eventdev: support asym ops for crypto adapter
Test eventdev app is updated to add new option for asymmetric crypto ops for event crypto adapter.
Signed-off-by: Akhil Goyal <gakhil@marvell.com>
app/eventdev: support asym ops for crypto adapter
Test eventdev app is updated to add new option for asymmetric crypto ops for event crypto adapter.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com> Acked-by: Anoob Joseph <anoobj@marvell.com>
show more ...
|
#
de2bc16e |
| 24-Feb-2022 |
Shijith Thotton <sthotton@marvell.com> |
app/eventdev: add crypto producer mode
In crypto producer mode, producer core enqueues cryptodev with software generated crypto ops and worker core dequeues crypto completion events from the eventde
app/eventdev: add crypto producer mode
In crypto producer mode, producer core enqueues cryptodev with software generated crypto ops and worker core dequeues crypto completion events from the eventdev. Event crypto metadata used for above processing is pre-populated in each crypto session.
Parameter --prod_type_cryptodev can be used to enable crypto producer mode. Parameter --crypto_adptr_mode can be set to select the crypto adapter mode, 0 for OP_NEW and 1 for OP_FORWARD.
This mode can be used to measure the performance of crypto adapter.
Example: ./dpdk-test-eventdev -l 0-2 -w <EVENTDEV> -w <CRYPTODEV> -- \ --prod_type_cryptodev --crypto_adptr_mode 1 --test=perf_atq \ --stlist=a --wlcores 1 --plcores 2
Signed-off-by: Shijith Thotton <sthotton@marvell.com> Acked-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
show more ...
|
#
20841a25 |
| 15-Oct-2021 |
Rashmi Shetty <rashmi.shetty@intel.com> |
app/eventdev: support burst enqueue
Introduce a new command line option prod_enq_burst_sz to set burst size for eventdev enqueue at producer in perf_queue test. The newly added function perf_produce
app/eventdev: support burst enqueue
Introduce a new command line option prod_enq_burst_sz to set burst size for eventdev enqueue at producer in perf_queue test. The newly added function perf_producer_burst is called when prod_enq_burst_sz is greater than 1.
Signed-off-by: Rashmi Shetty <rashmi.shetty@intel.com> Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
dbd4defe |
| 01-Jul-2021 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add option to enable per port pool
Add option to configure unique mempool for each ethernet device port. The new option available with `pipeline_atq` and `pipeline_queue` tests.
Signe
app/eventdev: add option to enable per port pool
Add option to configure unique mempool for each ethernet device port. The new option available with `pipeline_atq` and `pipeline_queue` tests.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
2eaa37b8 |
| 31-Mar-2021 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add vector mode in pipeline test
Add event vector support in pipeline tests. By default this mode is disabled, it can be enabled by using the option --enable_vector. example: dpdk-tes
app/eventdev: add vector mode in pipeline test
Add event vector support in pipeline tests. By default this mode is disabled, it can be enabled by using the option --enable_vector. example: dpdk-test-eventdev -l 7-23 -s 0xff00 -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=a --wlcores=20-23 --enable_vector
Additional options to configure vector size and vector timeout are also implemented and can be used by specifying --vector_size and --vector_tmo_ns
This patch also adds a new option to set the number of Rx queues configured per event eth rx adapter. example: dpdk-test-eventdev -l 7-23 -s 0xff00 -- --prod_type_ethdev --nb_pkts=0 --verbose 2 --test=pipeline_atq --stlist=a --wlcores=20-23 --nb_eth_queues 4
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
75d11313 |
| 15-Oct-2020 |
Timothy McDaniel <timothy.mcdaniel@intel.com> |
eventdev: express DLB/DLB2 PMD constraints
This commit implements the eventdev ABI changes required by the DLB/DLB2 PMDs. Several data structures and constants are modified or added in this patch,
eventdev: express DLB/DLB2 PMD constraints
This commit implements the eventdev ABI changes required by the DLB/DLB2 PMDs. Several data structures and constants are modified or added in this patch, thereby requiring modifications to the dependent apps and examples.
The DLB/DLB2 hardware does not conform exactly to the eventdev interface. 1) It has a limit on the number of queues that may be linked to a port. 2) Some ports a further restricted to a maximum of 1 linked queue. 3) DLB does not have the ability to carry the flow_id as part of the event (QE) payload. Note that the DLB2 hardware is capable of carrying the flow_id.
Following is a detailed description of the changes that have been made.
1) Add new fields to the rte_event_dev_info struct. These fields allow the device to advertise its capabilities so that applications can take the appropriate actions based on those capabilities.
struct rte_event_dev_info { uint32_t max_event_port_links; /**< Maximum number of queues that can be linked to a single event * port by this device. */
uint8_t max_single_link_event_port_queue_pairs; /**< Maximum number of event ports and queues that are optimized for * (and only capable of) single-link configurations supported by this * device. These ports and queues are not accounted for in * max_event_ports or max_event_queues. */ }
2) Add a new field to the rte_event_dev_config struct. This field allows the application to specify how many of its ports are limited to a single link, or will be used in single link mode.
/** Event device configuration structure */ struct rte_event_dev_config { uint8_t nb_single_link_event_port_queues; /**< Number of event ports and queues that will be singly-linked to * each other. These are a subset of the overall event ports and * queues; this value cannot exceed *nb_event_ports* or * *nb_event_queues*. If the device has ports and queues that are * optimized for single-link usage, this field is a hint for how many * to allocate; otherwise, regular event ports and queues can be used. */ }
3) Replace the dedicated implicit_release_disabled field with a bit field of explicit port capabilities. The implicit_release_disable functionality is assigned to one bit, and a port-is-single-link-only attribute is assigned to other, with the remaining bits available for future assignment.
* Event port configuration bitmap flags */ #define RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL (1ULL << 0) /**< Configure the port not to release outstanding events in * rte_event_dev_dequeue_burst(). If set, all events received through * the port must be explicitly released with RTE_EVENT_OP_RELEASE or * RTE_EVENT_OP_FORWARD. Must be unset if the device is not * RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE capable. */ #define RTE_EVENT_PORT_CFG_SINGLE_LINK (1ULL << 1)
/**< This event port links only to a single event queue. * * @see rte_event_port_setup(), rte_event_port_link() */
#define RTE_EVENT_PORT_ATTR_IMPLICIT_RELEASE_DISABLE 3 /** * The implicit release disable attribute of the port */
struct rte_event_port_conf { uint32_t event_port_cfg; /**< Port cfg flags(EVENT_PORT_CFG_) */ }
This patch also removes the depreciation notice and announce the new eventdev ABI changes in release note.
Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com> Acked-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
fc8b96fb |
| 30-Sep-2019 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add options for mbuf and packet sizes
Add options to set mbuf size and max packet size which allow the user to enable jumbo frames and Rx/Tx scatter gather. Arrange `struct evt_options
app/eventdev: add options for mbuf and packet sizes
Add options to set mbuf size and max packet size which allow the user to enable jumbo frames and Rx/Tx scatter gather. Arrange `struct evt_options` based on ascending order of data type to make it more readable.
Packet mbuf size can be modified by using `--mbuf_sz=N`. Max packet size can be modified by using `--max_pkt_sz=N`. These options are only applicable `pipeline_atq` and `pipeline_queue` tests.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>
show more ...
|
#
f0959283 |
| 29-Mar-2019 |
Pavan Nikhilesh <pbhagavatula@marvell.com> |
app/eventdev: add option for global dequeue timeout
Add option to provide a global dequeue timeout that is used to create the eventdev. The dequeue timeout provided will be common across all the wor
app/eventdev: add option for global dequeue timeout
Add option to provide a global dequeue timeout that is used to create the eventdev. The dequeue timeout provided will be common across all the worker ports. If the eventdev hardware supports power management through dequeue timeout then this option can be used for verifying power demands at various packet rates.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
show more ...
|
#
b0333c55 |
| 11-Dec-2017 |
Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> |
app/eventdev: add service core configuration
Add service core configuration for Rx adapter. The configuration picks the least used service core to run the service on.
Signed-off-by: Pavan Nikhilesh
app/eventdev: add service core configuration
Add service core configuration for Rx adapter. The configuration picks the least used service core to run the service on.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
show more ...
|
#
53a3b7e8 |
| 08-Jan-2018 |
Jerin Jacob <jerin.jacob@caviumnetworks.com> |
app: use SPDX tag for Cavium copyright files
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
|
#
57305d79 |
| 25-Oct-2017 |
Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> |
app/testeventdev: use service cores
Use service cores for offloading event scheduling in case of centralized scheduling instead of calling the schedule api directly. This removes the dependency on d
app/testeventdev: use service cores
Use service cores for offloading event scheduling in case of centralized scheduling instead of calling the schedule api directly. This removes the dependency on dedicated scheduler core specified by giving command line option --slcore.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
show more ...
|
#
13370a38 |
| 25-Oct-2017 |
Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> |
eventdev: fix inconsistency in queue config
With the current scheme of event queue configuration the cfg schedule type macros (RTE_EVENT_QUEUE_CFG_*_ONLY) are inconsistent with the event schedule ty
eventdev: fix inconsistency in queue config
With the current scheme of event queue configuration the cfg schedule type macros (RTE_EVENT_QUEUE_CFG_*_ONLY) are inconsistent with the event schedule type (RTE_SCHED_TYPE_*) this requires unnecessary conversion between the fastpath and slowpath API's while scheduling events or configuring event queues.
This patch aims to fix such inconsistency by using event schedule types (RTE_SCHED_TYPE_*) for event queue configuration.
This patch also fixes example/eventdev_pipeline_sw_pmd as it doesn't convert RTE_EVENT_QUEUE_CFG_*_ONLY to RTE_SCHED_TYPE_* which leads to improper events being enqueued to the eventdev.
Fixes: adb5d5486c39 ("examples/eventdev_pipeline_sw_pmd: add sample app")
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
show more ...
|
#
3abcd29f |
| 08-Jul-2017 |
Jerin Jacob <jerin.jacob@caviumnetworks.com> |
update Cavium Inc copyright headers
Replace the incorrect reference to "Cavium Networks", "Cavium Ltd" company name with correct the "Cavium, Inc" company name in copyright headers.
Signed-off-by:
update Cavium Inc copyright headers
Replace the incorrect reference to "Cavium Networks", "Cavium Ltd" company name with correct the "Cavium, Inc" company name in copyright headers.
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
show more ...
|
#
68cdc3df |
| 04-Jul-2017 |
Jerin Jacob <jerin.jacob@caviumnetworks.com> |
app/testeventdev: add common helper functions
adding common helper functions that used in test framework and in all the test cases.
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Signe
app/testeventdev: add common helper functions
adding common helper functions that used in test framework and in all the test cases.
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Signed-off-by: Guduri Prathyusha <gprathyusha@caviumnetworks.com> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
show more ...
|