diff options
Diffstat (limited to 'debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py')
| -rw-r--r-- | debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py b/debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py index f6cd48f..75d7b1e 100644 --- a/debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py +++ b/debug/risc-v-gsp-rm-vm/harness/value_demos/s10_full_session_evidence.py @@ -67,7 +67,7 @@ def _trace_overhead(ge, out: str) -> dict: import time def timed(trace): - record = os.path.join(out, "trace-off" if not trace else "trace-on") + record = C.session_dir(out, "trace-on" if trace else "trace-off") start = time.monotonic() session = ge.launch(kernel=C.DEMO_ELF, backend="native", record=record, trace=trace, name="vd-s10-trace") run_start = time.monotonic() @@ -134,19 +134,21 @@ def run() -> dict: ) start = time.monotonic() - session_a = _stimulus(ge, os.path.join(out, "session-A"), backend) - session_b = _stimulus(ge, os.path.join(out, "session-B"), backend) + session_a_dir = C.session_dir(out, "session-A") + session_b_dir = C.session_dir(out, "session-B") + session_a = _stimulus(ge, session_a_dir, backend) + session_b = _stimulus(ge, session_b_dir, backend) symbols = ge.SymbolDB() symbols.load_elf(ge.load_elf(C.DEMO_ELF)) - report = render_summary(os.path.join(out, "session-A"), symbols=symbols, max_rows=30) + report = render_summary(session_a_dir, symbols=symbols, max_rows=30) C.write_text(os.path.join(out, "analyze.md"), report) - compare = compare_sessions(os.path.join(out, "session-A"), os.path.join(out, "session-B"), symbols=symbols, max_rows=30) + compare = compare_sessions(session_a_dir, session_b_dir, symbols=symbols, max_rows=30) C.write_text(os.path.join(out, "compare.md"), compare) - hits = export_hits(os.path.join(out, "session-A"), os.path.join(out, "greeneye_hits.tsv"), symbols=symbols) + hits = export_hits(session_a_dir, os.path.join(out, "greeneye_hits.tsv"), symbols=symbols) trace = _trace_overhead(ge, out) - size_a = _dir_size(os.path.join(out, "session-A")) - size_b = _dir_size(os.path.join(out, "session-B")) + size_a = _dir_size(session_a_dir) + size_b = _dir_size(session_b_dir) deltas_match = session_a["dispatches"] == session_b["dispatches"] and session_a["ping_reply"] == session_b["ping_reply"] manifest = { "format": "greeneye-value-evidence/1", @@ -155,8 +157,8 @@ def run() -> dict: "sha256": C.sha256_file(C.DEMO_ELF), }, "sessions": { - "a": {"path": os.path.relpath(os.path.join(out, "session-A"), C.TOOL_ROOT), "bytes": size_a, "sha256_manifest": C.sha256_file(os.path.join(out, "session-A", "events.jsonl"))}, - "b": {"path": os.path.relpath(os.path.join(out, "session-B"), C.TOOL_ROOT), "bytes": size_b, "sha256_manifest": C.sha256_file(os.path.join(out, "session-B", "events.jsonl"))}, + "a": {"path": os.path.relpath(session_a_dir, C.TOOL_ROOT), "bytes": size_a, "sha256_manifest": C.sha256_file(os.path.join(session_a_dir, "events.jsonl"))}, + "b": {"path": os.path.relpath(session_b_dir, C.TOOL_ROOT), "bytes": size_b, "sha256_manifest": C.sha256_file(os.path.join(session_b_dir, "events.jsonl"))}, }, "stimulus": {"commands": [1, 5], "arg0": 0x1234, "note": "PING then STATE"}, "observed": {"a": session_a, "b": session_b, "delta_match": deltas_match}, |
