From eccf509a31519747c2f4653a5ec2a94cc299860c Mon Sep 17 00:00:00 2001 From: Damjan Marion Date: Fri, 18 Nov 2016 16:59:24 +0100 Subject: vlib: Add 'show cpu' command Change-Id: I0d9af8e022cc25b8b4503f808f79028190475f8f Signed-off-by: Damjan Marion --- vlib/vlib/cli.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'vlib') diff --git a/vlib/vlib/cli.c b/vlib/vlib/cli.c index a54298505ab..2d141115857 100644 --- a/vlib/vlib/cli.c +++ b/vlib/vlib/cli.c @@ -38,6 +38,7 @@ */ #include +#include /* Root of all show commands. */ /* *INDENT-OFF* */ @@ -633,6 +634,39 @@ VLIB_CLI_COMMAND (show_memory_usage_command, static) = { }; /* *INDENT-ON* */ +static clib_error_t * +show_cpu (vlib_main_t * vm, unformat_input_t * input, + vlib_cli_command_t * cmd) +{ +#define _(a,b,c) vlib_cli_output (vm, "%-25s " b, a ":", c); + _("Model name", "%U", format_cpu_model_name); + _("Microarchitecture", "%U", format_cpu_uarch); + _("Flags", "%U", format_cpu_flags); + _("Base frequency", "%.2f GHz", + ((f64) vm->clib_time.clocks_per_second) * 1e-9); +#undef _ + return 0; +} + +/*? + * Displays various information about the CPU. + * + * @cliexpar + * @cliexstart{show cpu} + * Model name: Intel(R) Xeon(R) CPU E5-2667 v4 @ 3.20GHz + * Microarchitecture: Broadwell (Broadwell-EP/EX) + * Flags: sse3 ssse3 sse41 sse42 avx avx2 aes + * Base Frequency: 3.20 GHz + * @cliexend +?*/ +/* *INDENT-OFF* */ +VLIB_CLI_COMMAND (show_cpu_command, static) = { + .path = "show cpu", + .short_help = "Show cpu information", + .function = show_cpu, +}; + +/* *INDENT-ON* */ static clib_error_t * enable_disable_memory_trace (vlib_main_t * vm, unformat_input_t * input, -- cgit 1.2.3-korg