1- #set page(paper: "a4")
1+ // To be able to load CDF data for plotting from other runs, you need to make
2+ // the root for compiling the document somewhat more permissive:
3+ //
4+ // $ typst c --root ../.. {{ typstFile }}
25
3- // these settings make the output look more LaTeX-like
4- // #set page(margin: 1.75in)
5- #set par(leading: 0.55em, spacing: 0.55em, first-line-indent: 1.8em, justify: true)
6- // #set text(font: "Ubuntu")
7- // #show raw: set text(font: "Ubuntu Mono")
8- #show heading: set block(above: 1.5em, below: 1.2em)
96
7+ // The suggested file name for the report PDF; you can query this by using
8+ // $ typst query --one --field value {{ typstFile }} '<export_file_name>'
9+ //
1010#metadata("{{ report.tag }}.{{ base.fileInfix }}.pdf") <export_file_name>
1111
1212
13- // Semibold row descriptions
14- #show table.cell.where(x: 0): set text(weight: "semibold")
13+ // START PREAMBLE
14+
15+
16+ #import "@preview/neoplot:0.0.4" as gnuplot
17+
18+
19+ // Document Styling
20+ //
21+ #set page(paper: "a4", margin: 1.5cm)
22+ #set text(size: 10pt)
23+ #set par(leading: 0.6em, spacing: 0.8em, first-line-indent: 1.8em, justify: true)
24+ #show heading: set block(above: 1.5em, below: 1.2em)
25+ #show figure.caption: emph
26+
1527
16- // No strokes inside table body; left alignment for row descriptions only
28+ // Table styling
29+ // No strokes inside table body; left alignment for row descriptions only; slightly smaller row descriptions
30+ //
1731#let frame(stroke) = (x, y) => (
1832 left: if x > 0 { 0pt } else { stroke },
1933 right: stroke,
2034 top: if y < 2 { stroke } else { 0pt },
2135 bottom: stroke,
2236)
2337#set table(
24- stroke: frame(1pt ),
25- align: (x, _) => if x == 0 { left } else { right }
38+ stroke: frame(0.5pt ),
39+ align: (x, _) => if x == 0 { left } else { right },
2640)
41+ // supposed to do the trick, but doesn't :( #show table: set par(leading: 0.4em)
42+ #show table.cell.where(x: 0): set text(size: 0.95em)
2743
28- // table coloring
29- #let gr(c) = table.cell(fill: green.lighten(60%))[c]
3044
45+ // Table cell coloring
46+ // The function names have to be in sync with Cardano.Report.colorCode in package locli
47+ //
48+ #let gr(body) = table.cell(fill: green.lighten(60%))[#body]
49+ #let rd(body) = table.cell(fill: red.lighten(60%))[#body]
3150
32- // #+CONSTANTS: base=../../{{ base.meta.tag }}/analysis
33- // {% for run in runs %}
34- // #+CONSTANTS: run{{ run.index }}=../../{{ run.value.meta.tag }}/analysis
51+ // END PREAMBLE
3552
3653
54+ #align(center + horizon)[
55+ #text(size: 24pt)[
56+ {{ report.target }} against {{ base.ver }}
57+ ]
3758
38- The Title Page
39-
40- {{ report.target }} against {{ base.ver }}
41-
42- {{ base.workload }} workload
43- {{ report.author }}, Cardano Performance team
44- {{ report.date }}
59+ #text(size: 16pt)[
60+ {{ base.workload }} workload \
61+ #pad(top: 50%,[
62+ {{ report.author }}, Cardano Performance & Tracing \
63+ {{ report.date }}
64+ ])
65+ ]
66+ ]
4567
4668#pagebreak()
4769
@@ -55,14 +77,23 @@ The Title Page
5577
5678= Manifest
5779
80+ #pad(bottom: 10pt,[
5881We compare {% for run in runs %}{%if !run.first%}{%if !run.last%}, {%else%} and {%endif%}{%endif%}`{{ run.value.ver }}` ({{ run.value.meta.era | toTitle }}){% endfor %} relative to `{{ base.ver }}` ({{ base.meta.era | toTitle }}), under {{ base.workload }} workload.
82+ ])
5983
6084{% include "table_summary.ede" with table = summary %}
6185
6286#pagebreak()
6387
6488= Analysis
6589
90+ {% for section in analyses %}
91+ == {{ section.value.title }}
92+
93+ {% include "table_summary.ede" with table = section.value %}
94+ #pad(top: 10pt)[]
95+
96+ {% endfor %}
6697
6798#pagebreak()
6899
@@ -92,6 +123,9 @@ We compare {% for run in runs %}{%if !run.first%}{%if !run.last%}, {%else%} and
92123
93124== Cluster performance charts
94125
126+ {% for c in charts %}
127+ {%include "report_gnuplot.ede" with chart = c.value %}
128+ {% endfor %}
95129
96130#pagebreak()
97131
0 commit comments