X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest-compress-perf%2Fmain.c;h=ed21605d89c2d8cbcecc7411f5240cc577dff8ae;hb=1908cab425e4206321fb3f62688f9e1f92b36f6a;hp=e7ac412e6a15b105549d224ce6c5f04c3d6b11c7;hpb=6f1e5d809a081241fccc1246beb70d0f620a8e59;p=dpdk.git diff --git a/app/test-compress-perf/main.c b/app/test-compress-perf/main.c index e7ac412e6a..ed21605d89 100644 --- a/app/test-compress-perf/main.c +++ b/app/test-compress-perf/main.c @@ -11,32 +11,41 @@ #include #include -#include "comp_perf_options.h" -#include "comp_perf_test_verify.h" -#include "comp_perf_test_benchmark.h" #include "comp_perf.h" +#include "comp_perf_options.h" #include "comp_perf_test_common.h" +#include "comp_perf_test_cyclecount.h" +#include "comp_perf_test_throughput.h" +#include "comp_perf_test_verify.h" #define NUM_MAX_XFORMS 16 #define NUM_MAX_INFLIGHT_OPS 512 __extension__ -const char *cperf_test_type_strs[] = { - [CPERF_TEST_TYPE_BENCHMARK] = "benchmark", - [CPERF_TEST_TYPE_VERIFY] = "verify" +const char *comp_perf_test_type_strs[] = { + [CPERF_TEST_TYPE_THROUGHPUT] = "throughput", + [CPERF_TEST_TYPE_VERIFY] = "verify", + [CPERF_TEST_TYPE_PMDCC] = "pmd-cyclecount" }; __extension__ static const struct cperf_test cperf_testmap[] = { - [CPERF_TEST_TYPE_BENCHMARK] = { - cperf_benchmark_test_constructor, - cperf_benchmark_test_runner, - cperf_benchmark_test_destructor + [CPERF_TEST_TYPE_THROUGHPUT] = { + cperf_throughput_test_constructor, + cperf_throughput_test_runner, + cperf_throughput_test_destructor + }, [CPERF_TEST_TYPE_VERIFY] = { cperf_verify_test_constructor, cperf_verify_test_runner, cperf_verify_test_destructor + }, + + [CPERF_TEST_TYPE_PMDCC] = { + cperf_cyclecount_test_constructor, + cperf_cyclecount_test_runner, + cperf_cyclecount_test_destructor } }; @@ -116,7 +125,8 @@ comp_perf_initialize_compressdev(struct comp_test_data *test_data, enabled_cdev_count = rte_compressdev_devices_get(test_data->driver_name, enabled_cdevs, RTE_COMPRESS_MAX_DEVS); if (enabled_cdev_count == 0) { - RTE_LOG(ERR, USER1, "No compress devices type %s available\n", + RTE_LOG(ERR, USER1, "No compress devices type %s available," + " please check the list of specified devices in EAL section\n", test_data->driver_name); return -EINVAL; } @@ -127,9 +137,13 @@ comp_perf_initialize_compressdev(struct comp_test_data *test_data, * if there are more available than cores. */ if (enabled_cdev_count > nb_lcores) { + if (nb_lcores == 0) { + RTE_LOG(ERR, USER1, "Cannot run with 0 cores! Increase the number of cores\n"); + return -EINVAL; + } enabled_cdev_count = nb_lcores; RTE_LOG(INFO, USER1, - " There's more available devices than cores!" + "There's more available devices than cores!" " The number of devices has been aligned to %d cores\n", nb_lcores); } @@ -266,6 +280,7 @@ comp_perf_dump_input_data(struct comp_test_data *test_data) data += data_to_read; } + printf("\n"); if (test_data->input_data_sz > actual_file_sz) RTE_LOG(INFO, USER1, "%zu bytes read from file %s, extending the file %.2f times\n", @@ -361,9 +376,12 @@ main(int argc, char **argv) else test_data->level = test_data->level_lst.list[0]; - printf("App uses socket: %u\n", rte_socket_id()); + printf("\nApp uses socket: %u\n", rte_socket_id()); printf("Burst size = %u\n", test_data->burst_sz); printf("Input data size = %zu\n", test_data->input_data_sz); + if (test_data->test == CPERF_TEST_TYPE_PMDCC) + printf("Cycle-count delay = %u [us]\n", + test_data->cyclecount_delay); test_data->cleanup = ST_DURING_TEST; total_nb_qps = nb_compressdevs * test_data->nb_qps; @@ -390,7 +408,7 @@ main(int argc, char **argv) i++; } - print_test_dynamics(); /* constructors must be executed first */ + print_test_dynamics(test_data); while (test_data->level <= test_data->level_lst.max) { @@ -468,7 +486,28 @@ end: } __rte_weak void * -cperf_benchmark_test_constructor(uint8_t dev_id __rte_unused, +cperf_cyclecount_test_constructor(uint8_t dev_id __rte_unused, + uint16_t qp_id __rte_unused, + struct comp_test_data *options __rte_unused) +{ + RTE_LOG(INFO, USER1, "Cycle count test is not supported yet\n"); + return NULL; +} + +__rte_weak void +cperf_cyclecount_test_destructor(void *arg __rte_unused) +{ + RTE_LOG(INFO, USER1, "Something wrong happened!!!\n"); +} + +__rte_weak int +cperf_cyclecount_test_runner(void *test_ctx __rte_unused) +{ + return 0; +} + +__rte_weak void * +cperf_throughput_test_constructor(uint8_t dev_id __rte_unused, uint16_t qp_id __rte_unused, struct comp_test_data *options __rte_unused) { @@ -477,13 +516,13 @@ cperf_benchmark_test_constructor(uint8_t dev_id __rte_unused, } __rte_weak void -cperf_benchmark_test_destructor(void *arg __rte_unused) +cperf_throughput_test_destructor(void *arg __rte_unused) { } __rte_weak int -cperf_benchmark_test_runner(void *test_ctx __rte_unused) +cperf_throughput_test_runner(void *test_ctx __rte_unused) { return 0; }