Performance Recall
The tool can be used to perform performance recall. To perform performance recall you use the info subcommand. There are many options to pick when performing the recall as shown bellow:
Prints out the benchmark information
Usage:
benanza benchinfo [flags]
Aliases:
benchinfo, info, recall
Flags:
--benchmark_database string path to the benchmark results folder (default "/Users/abduld/.gvm/pkgsets/go1.12/global/src/github.com/rai-project/dlperf/results")
--choose_cudnn_heuristics choose advised algorithm by cudnn heuristics rather than the fastest
--datatype string data type to use (default is float32) (default "float32")
--flops_aggregate sum all the flops within a metric for each layer
--flops_only show a table of only the theoretical and actual flops for each layer
--fused check for fused layers in the database
--graph generate a graphviz plot of the results
-h, --help help for benchinfo
--highlight_fast_path highlight the path taken when creating the graph visualization (default true)
--kernels_only show a table of only the layers and corresponding kernels
--metric_filter string filter using the command seperated list of metrics
--metrics grabs the metrics from the benchmarks
--pad_layers_multiple int padding multiple to use
--short only get info about the total, rather than reporting per-layer information
--show generate the benchmark info graph (only for parallel for now)
--strategy parallel strategy to traverse the graph either can be parallel which would find the shortest path or `serial` to get the total time as if each layer is executed serially (default "parallel")
--total show the total information across all layers (default true)
--training compute the training information
--trim_layer_name only show the first few characters of a layer (default true)
Global Flags:
-b, --batch_size int batch size (default 1)
-f, --format string print format to use (default "automatic")
--full print all information about the layers
--human print flops in human form
-d, --model_dir string model directory
-p, --model_path string path to the model prototxt file
--no_header show header labels for output
-o, --output_file string output file name
For example, to get the latency of ResNet050-v1 on a Tesla_V100-SXM2-16GB with batchsize 16 you use:
benanza benchinfo --model_path //vgg19-bn.onnx --benchmark_database Tesla_V100-SXM2-16GB --batch_size=16 -f csv
This will give you the timing of the network based on a the information in the database in CSV. This output a CSV file which can be used to create a plot such as:
The CSV file itself is