| e5e518ed | 10-Jan-2021 |
Ophir Munk <[email protected]> |
app/regex: measure performance with precise clock
Performance measurement (elapsed time and Gbps) are based on Linux clock() API. The resolution is improved by replacing the clock() API with rte_rdt
app/regex: measure performance with precise clock
Performance measurement (elapsed time and Gbps) are based on Linux clock() API. The resolution is improved by replacing the clock() API with rte_rdtsc_precise() API.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|
| 6e3c6bd6 | 10-Jan-2021 |
Ophir Munk <[email protected]> |
app/regex: measure performance per queue pair
Up to this commit measuring the parsing elapsed time and Giga bits per second performance was done on the aggregation of all QPs (per core). This commit
app/regex: measure performance per queue pair
Up to this commit measuring the parsing elapsed time and Giga bits per second performance was done on the aggregation of all QPs (per core). This commit separates the time measurements per individual QP.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|
| 6b99ba8d | 10-Jan-2021 |
Ophir Munk <[email protected]> |
app/regex: support multiple cores
Up to this commit the regex application was running with multiple QPs on a single core. This commit adds the option to specify a number of cores on which multiple
app/regex: support multiple cores
Up to this commit the regex application was running with multiple QPs on a single core. This commit adds the option to specify a number of cores on which multiple QPs will run. A new parameter 'nb_lcores' was added to configure the number of cores: --nb_lcores <num of cores>. If not configured the number of cores is set to 1 by default. On application startup a few initial steps occur by the main core: the number of QPs and cores are parsed. The QPs are distributed as evenly as possible on the cores. The regex device and all QPs are initialized. The data file is read and saved in a buffer. Then for each core the application calls rte_eal_remote_launch() with the worker routine (run_regex) as its parameter.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|
| f5cffb7e | 10-Jan-2021 |
Ophir Munk <[email protected]> |
app/regex: read data file once at startup
Up to this commit the input data file was read from scratch for each QP, which is redundant. Starting from this commit the data file is read only once at st
app/regex: read data file once at startup
Up to this commit the input data file was read from scratch for each QP, which is redundant. Starting from this commit the data file is read only once at startup. Each QP will clone the data.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|
| 4545bd00 | 10-Jan-2021 |
Ophir Munk <[email protected]> |
app/regex: support multiple queue pairs
Up to this commit the regex application used one QP which was assigned a number of jobs, each with a different segment of a file to parse. This commit adds s
app/regex: support multiple queue pairs
Up to this commit the regex application used one QP which was assigned a number of jobs, each with a different segment of a file to parse. This commit adds support for multiple QPs assignments. All QPs will be assigned the same number of jobs, with the same segments of file to parse. It will enable comparing functionality with different numbers of QPs. All queues are managed on one core with one thread. This commit focuses on changing routines API to support multi QPs, mainly, QP scalar variables are replaced by per-QP struct instance. The enqueue/dequeue operations are interleaved as follows: enqueue(QP #1) enqueue(QP #2) ... enqueue(QP #n) dequeue(QP #1) dequeue(QP #2) ... dequeue(QP #n)
A new parameter 'nb_qps' was added to configure the number of QPs: --nb_qps <num of qps>. If not configured, nb_qps is set to 1 by default.
Signed-off-by: Ophir Munk <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|