in lib/ramble/ramble/cmd/results.py [0:0]
def setup_parser(subparser):
sp = subparser.add_subparsers(metavar="SUBCOMMAND", dest="results_command")
upload_parser = sp.add_parser(
"upload", help=results_upload.__doc__, description=results_upload.__doc__
)
upload_parser.add_argument("filename", help="path of file to upload")
report_parser = sp.add_parser(
"report", help=results_report.__doc__, description=results_report.__doc__
)
report_parser.add_argument(
"--workspace",
dest="workspace",
metavar="WRKSPC",
action="store",
help="the workspace to report on",
)
# The plot type should be exclusive, and only one plot type is supported per invocation
plot_type_group = report_parser.add_mutually_exclusive_group(required=True)
plot_type_group.add_argument(
"--strong-scaling",
dest="strong_scaling",
nargs="+",
help="generate a scaling report, requires two args: [y-axis metric] [x-axis metric]"
"[optional: group by]",
required=False,
)
plot_type_group.add_argument(
"--weak-scaling",
dest="weak_scaling",
nargs="+",
help="generate a scaling report, requires two args: [y-axis metric] [x-axis metric]"
"[optional: group by]",
required=False,
)
plot_type_group.add_argument(
"--multi-line",
dest="multi_line",
nargs="+",
help="generate a scaling report, requires two args: [y-axis metric] [x-axis metric]"
"[optional: group by]",
required=False,
)
plot_type_group.add_argument(
"--compare",
dest="compare",
nargs="+",
help="generate a comparison report, requires at least two args: [FOM 1] [Additional FOMs]"
"[optional: group by(s)]",
required=False,
)
plot_type_group.add_argument(
"--foms",
dest="foms",
action="store_true",
help="generate a FOM report, showing values of FOMs for each experiment",
required=False,
)
report_parser.add_argument(
"--pandas-where",
dest="where",
action="store",
help="Down select data to plot (useful for complex workspaces with collisions). Takes"
" pandas query format",
required=False,
)
report_parser.add_argument(
"-n",
"--normalize",
dest="normalize",
action="store_true",
help=(
"Normalize charts where possible. For scaling charts, this requires fom_type to be "
"specified as either 'time' or 'throughput' in the application definition."
),
required=False,
)
report_parser.add_argument(
"--logx", dest="logx", action="store_true", help=("Plot X axis as log"), required=False
)
report_parser.add_argument(
"--logy", dest="logy", action="store_true", help=("Plot Y axis as log"), required=False
)
# TODO: should this make it into the final cut? Only applies to multi line -- remove
report_parser.add_argument(
"--split-by",
dest="split_by",
# nargs="+",
# action="append",
# default=["simplified_workload_namespace"],
action="store",
default="simplified_workload_namespace",
help=("Ramble Variable to split out into different plots"),
required=False,
)
report_parser.add_argument("-f", "--file", help="path of results file")