Commit d8d9890b by lvzhengyang

update the command doc

parent f4db720e
...@@ -42,10 +42,12 @@ By default the dataset is saved to `results/<case>/dataset/graphs.npz` with meta ...@@ -42,10 +42,12 @@ By default the dataset is saved to `results/<case>/dataset/graphs.npz` with meta
```bash ```bash
./main.py view_cdfg --case eth_fifo ./main.py view_cdfg --case eth_fifo
./main.py view_cdfg --case eth_fifo --figure
./main.py view_dataset --case eth_fifo ./main.py view_dataset --case eth_fifo
./main.py view_dataset --case eth_fifo --figure
``` ```
The commands print a summary to the terminal and save figures under `results/<case>/`. The commands print a summary to the terminal. Figures are only rendered and saved when `--figure` is provided.
--- ---
......
...@@ -199,7 +199,7 @@ def _build_cdfg(case_name: str) -> int: ...@@ -199,7 +199,7 @@ def _build_cdfg(case_name: str) -> int:
return 0 return 0
def _view_cdfg(case_name: str) -> int: def _view_cdfg(case_name: str, draw_figure: bool) -> int:
config = _load_case_config(case_name) config = _load_case_config(case_name)
cdfg_dir = _resolve_cdfg_dir(case_name, config) cdfg_dir = _resolve_cdfg_dir(case_name, config)
dot_path = _select_cdfg_dot(case_name, config, cdfg_dir) dot_path = _select_cdfg_dot(case_name, config, cdfg_dir)
...@@ -227,13 +227,14 @@ def _view_cdfg(case_name: str) -> int: ...@@ -227,13 +227,14 @@ def _view_cdfg(case_name: str) -> int:
for label, count in sorted(edge_label_counts.items(), key=lambda x: (-x[1], x[0]))[:10]: for label, count in sorted(edge_label_counts.items(), key=lambda x: (-x[1], x[0]))[:10]:
print(f"- {label}: {count}") print(f"- {label}: {count}")
output_png = cdfg_dir / "view_cdfg.png" if draw_figure:
if _render_dot(dot_path, output_png): output_png = cdfg_dir / "view_cdfg.png"
print(f"[view_cdfg] Figure saved to {output_png}") if _render_dot(dot_path, output_png):
print(f"[view_cdfg] Figure saved to {output_png}")
return 0 return 0
def _view_dataset(case_name: str) -> int: def _view_dataset(case_name: str, draw_figure: bool) -> int:
config = _load_case_config(case_name) config = _load_case_config(case_name)
dataset_cfg = config.get("dataset", {}) dataset_cfg = config.get("dataset", {})
output_dir_cfg = dataset_cfg.get("output_dir") output_dir_cfg = dataset_cfg.get("output_dir")
...@@ -282,11 +283,12 @@ def _view_dataset(case_name: str) -> int: ...@@ -282,11 +283,12 @@ def _view_dataset(case_name: str) -> int:
else: else:
print(f"- graphs.npz: not found at {graphs_npz}") print(f"- graphs.npz: not found at {graphs_npz}")
cdfg_dir = _resolve_cdfg_dir(case_name, config) if draw_figure:
dot_path = _select_cdfg_dot(case_name, config, cdfg_dir) cdfg_dir = _resolve_cdfg_dir(case_name, config)
graph_png = dataset_dir / "view_dataset_graph.png" dot_path = _select_cdfg_dot(case_name, config, cdfg_dir)
if _render_dot(dot_path, graph_png): graph_png = dataset_dir / "view_dataset_graph.png"
print(f"[view_dataset] Graph figure saved to {graph_png}") if _render_dot(dot_path, graph_png):
print(f"[view_dataset] Graph figure saved to {graph_png}")
return 0 return 0
...@@ -303,9 +305,11 @@ def main() -> int: ...@@ -303,9 +305,11 @@ def main() -> int:
view_cdfg_parser = subparsers.add_parser("view_cdfg", help="Summarize and render CDFG") view_cdfg_parser = subparsers.add_parser("view_cdfg", help="Summarize and render CDFG")
view_cdfg_parser.add_argument("--case", required=True, help="Case name under cases/") view_cdfg_parser.add_argument("--case", required=True, help="Case name under cases/")
view_cdfg_parser.add_argument("--figure", action="store_true", help="Render and save the CDFG figure")
view_dataset_parser = subparsers.add_parser("view_dataset", help="Summarize and render dataset") view_dataset_parser = subparsers.add_parser("view_dataset", help="Summarize and render dataset")
view_dataset_parser.add_argument("--case", required=True, help="Case name under cases/") view_dataset_parser.add_argument("--case", required=True, help="Case name under cases/")
view_dataset_parser.add_argument("--figure", action="store_true", help="Render and save the dataset figure")
args = parser.parse_args() args = parser.parse_args()
...@@ -318,9 +322,9 @@ def main() -> int: ...@@ -318,9 +322,9 @@ def main() -> int:
print(f"[build_dataset] Dataset saved to {output_npz}") print(f"[build_dataset] Dataset saved to {output_npz}")
return 0 return 0
if args.command == "view_cdfg": if args.command == "view_cdfg":
return _view_cdfg(args.case) return _view_cdfg(args.case, args.figure)
if args.command == "view_dataset": if args.command == "view_dataset":
return _view_dataset(args.case) return _view_dataset(args.case, args.figure)
parser.print_help() parser.print_help()
return 1 return 1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment