Fix extract_doe_region.py SLOT_FMT drift; regenerate report with real data
Build / build-amd64-iso (push) Canceled after 0s
Build / build-aarch64-iso (push) Canceled after 0s
Build / build-riscv64-img (push) Canceled after 0s

FABRIC-3.md §XXXV.15. §XXXV.12 added an explicit _align_pad field to
doe_trial_slot_t to fix a struct-alignment bug, but never updated the
Python extractor's SLOT_FMT/SLOT_CRC_SPAN to match -- every field after
isa was read from the wrong byte offset, so slot_crc read wrong bytes
entirely and every legitimate record (including the real, live
campaign's own first two clean trials) was flagged as CRC-corrupt.
Fixed; SLOT_SIZE assertion tightened from <= to == to catch this drift
immediately next time.

Regenerated multiuser_doe_report.pdf against the real campaign's actual
first two trials: run=0 (cfg=0, nw=2, uniform, fail=0) and run=1 (cfg=5,
nw=8, heterogeneous, fail=0), both fleet_conserved=1 at exactly Q48.16
1.0. Real report, real data, first time this has happened for this
campaign. disk/artemis.img itself and the live campaign's log directory
are deliberately left uncommitted -- still being written by the running
campaign.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BWpNjdwPtFLuVLaAq44L9K
This commit is contained in:
Robert Allan James
2026-09-17 23:28:50 -04:00
co-authored by Claude Sonnet 5
parent 553ca9163d
commit 9aebbb224b
15 changed files with 244 additions and 44 deletions
@@ -0,0 +1,68 @@
<?xml version='1.0' encoding='UTF-8' ?>
<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='576.00pt' height='432.00pt' viewBox='0 0 576.00 432.00'>
<g class='svglite'>
<defs>
<style type='text/css'><![CDATA[
.svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle {
fill: none;
stroke: #000000;
stroke-linecap: round;
stroke-linejoin: round;
stroke-miterlimit: 10.00;
}
.svglite text {
white-space: pre;
}
.svglite g.glyphgroup path {
fill: inherit;
stroke: none;
}
]]></style>
</defs>
<rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/>
<defs>
<clipPath id='cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA='>
<rect x='0.00' y='0.00' width='576.00' height='432.00' />
</clipPath>
</defs>
<g clip-path='url(#cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA=)'>
<rect x='0.00' y='0.000000000000057' width='576.00' height='432.00' style='stroke-width: 1.07; stroke: none; fill: #FFFFFF;' />
</g>
<defs>
<clipPath id='cpMzguNjR8NTcwLjUyfDI0LjI5fDM2MS45Mg=='>
<rect x='38.64' y='24.29' width='531.88' height='337.63' />
</clipPath>
</defs>
<g clip-path='url(#cpMzguNjR8NTcwLjUyfDI0LjI5fDM2MS45Mg==)'>
<polyline points='38.64,361.92 570.52,361.92 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='38.64,277.51 570.52,277.51 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='38.64,193.10 570.52,193.10 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='38.64,108.69 570.52,108.69 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='38.64,24.29 570.52,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='183.70,361.92 183.70,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='425.46,361.92 425.46,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<rect x='74.91' y='193.10' width='217.59' height='0.00' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #4A90D9; fill-opacity: 0.85;' />
<rect x='316.67' y='193.10' width='217.59' height='0.00' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #E07B39; fill-opacity: 0.85;' />
<text x='183.70' y='190.75' text-anchor='middle' style='font-size: 8.54px; font-family: "Liberation Sans";' textLength='11.88px' lengthAdjust='spacingAndGlyphs'>0/1</text>
<text x='425.46' y='190.75' text-anchor='middle' style='font-size: 8.54px; font-family: "Liberation Sans";' textLength='11.88px' lengthAdjust='spacingAndGlyphs'>0/1</text>
</g>
<g clip-path='url(#cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA=)'>
<text x='33.71' y='364.95' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='15.64px' lengthAdjust='spacingAndGlyphs'>-5%</text>
<text x='33.71' y='280.54' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='15.64px' lengthAdjust='spacingAndGlyphs'>-2%</text>
<text x='33.71' y='196.13' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='12.72px' lengthAdjust='spacingAndGlyphs'>0%</text>
<text x='33.71' y='111.72' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='12.72px' lengthAdjust='spacingAndGlyphs'>3%</text>
<text x='33.71' y='27.31' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='12.72px' lengthAdjust='spacingAndGlyphs'>5%</text>
<text x='183.70' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='4.89px' lengthAdjust='spacingAndGlyphs'>2</text>
<text x='425.46' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='4.89px' lengthAdjust='spacingAndGlyphs'>8</text>
<text x='304.58' y='385.04' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='96.00px' lengthAdjust='spacingAndGlyphs'>Concurrent workers</text>
<text transform='translate(13.05,193.10) rotate(-90)' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='169.77px' lengthAdjust='spacingAndGlyphs'>Fraction of trials with fail_count &gt; 0</text>
<text x='218.58' y='416.18' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='27.53px' lengthAdjust='spacingAndGlyphs'>mode</text>
<rect x='252.30' y='404.47' width='15.86' height='15.86' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #4A90D9; fill-opacity: 0.85;' />
<rect x='309.85' y='404.47' width='15.86' height='15.86' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #E07B39; fill-opacity: 0.85;' />
<text x='274.35' y='415.43' style='font-size: 8.80px; font-family: "Liberation Sans";' textLength='29.31px' lengthAdjust='spacingAndGlyphs'>uniform</text>
<text x='331.91' y='415.43' style='font-size: 8.80px; font-family: "Liberation Sans";' textLength='58.67px' lengthAdjust='spacingAndGlyphs'>heterogeneous</text>
<text x='304.58' y='23.35' text-anchor='middle' style='font-size: 9.00px;fill: #666666; font-family: "Liberation Sans";' textLength='26.50px' lengthAdjust='spacingAndGlyphs'>2 trials</text>
<text x='304.58' y='14.98' text-anchor='middle' style='font-size: 12.00px; font-weight: bold; font-family: "Liberation Sans";' textLength='309.09px' lengthAdjust='spacingAndGlyphs'>Trial Fail Rate by Concurrency Level x Workload Mode</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.7 KiB

@@ -0,0 +1,73 @@
<?xml version='1.0' encoding='UTF-8' ?>
<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='720.00pt' height='432.00pt' viewBox='0 0 720.00 432.00'>
<g class='svglite'>
<defs>
<style type='text/css'><![CDATA[
.svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle {
fill: none;
stroke: #000000;
stroke-linecap: round;
stroke-linejoin: round;
stroke-miterlimit: 10.00;
}
.svglite text {
white-space: pre;
}
.svglite g.glyphgroup path {
fill: inherit;
stroke: none;
}
]]></style>
</defs>
<rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/>
<defs>
<clipPath id='cpMC4wMHw3MjAuMDB8MC4wMHw0MzIuMDA='>
<rect x='0.00' y='0.00' width='720.00' height='432.00' />
</clipPath>
</defs>
<g clip-path='url(#cpMC4wMHw3MjAuMDB8MC4wMHw0MzIuMDA=)'>
<rect x='0.00' y='0.000000000000057' width='720.00' height='432.00' style='stroke-width: 1.07; stroke: none; fill: #FFFFFF;' />
</g>
<defs>
<clipPath id='cpNDUuMDB8NzE0LjUyfDI0LjI5fDM2MS45Mg=='>
<rect x='45.00' y='24.29' width='669.52' height='337.63' />
</clipPath>
</defs>
<g clip-path='url(#cpNDUuMDB8NzE0LjUyfDI0LjI5fDM2MS45Mg==)'>
<polyline points='45.00,361.92 714.52,361.92 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='45.00,277.51 714.52,277.51 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='45.00,193.10 714.52,193.10 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='45.00,108.69 714.52,108.69 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='45.00,24.29 714.52,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='75.43,361.92 75.43,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='227.60,361.92 227.60,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='379.76,361.92 379.76,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='531.92,361.92 531.92,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='684.09,361.92 684.09,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<circle cx='75.43' cy='193.10' r='1.95' style='stroke-width: 0.71; stroke: #4A90D9; stroke-opacity: 0.60; fill: #4A90D9; fill-opacity: 0.60;' />
<circle cx='684.09' cy='193.10' r='1.95' style='stroke-width: 0.71; stroke: #E07B39; stroke-opacity: 0.60; fill: #E07B39; fill-opacity: 0.60;' />
<line x1='45.00' y1='193.10' x2='714.52' y2='193.10' style='stroke-width: 1.07; stroke: #7F7F7F; stroke-dasharray: 5.69,5.69; stroke-linecap: butt;' />
</g>
<g clip-path='url(#cpMC4wMHw3MjAuMDB8MC4wMHw0MzIuMDA=)'>
<text x='40.07' y='364.95' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.950</text>
<text x='40.07' y='280.54' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.975</text>
<text x='40.07' y='196.13' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>1.000</text>
<text x='40.07' y='111.72' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>1.025</text>
<text x='40.07' y='27.31' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>1.050</text>
<text x='75.43' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='17.11px' lengthAdjust='spacingAndGlyphs'>0.00</text>
<text x='227.60' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='17.11px' lengthAdjust='spacingAndGlyphs'>0.25</text>
<text x='379.76' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='17.11px' lengthAdjust='spacingAndGlyphs'>0.50</text>
<text x='531.92' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='17.11px' lengthAdjust='spacingAndGlyphs'>0.75</text>
<text x='684.09' y='372.90' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='17.11px' lengthAdjust='spacingAndGlyphs'>1.00</text>
<text x='379.76' y='385.04' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='130.70px' lengthAdjust='spacingAndGlyphs'>Run id (shuffled trial index)</text>
<text transform='translate(13.05,193.10) rotate(-90)' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='96.75px' lengthAdjust='spacingAndGlyphs'>fleet_k_q48 / 65536</text>
<text x='293.76' y='416.18' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='27.53px' lengthAdjust='spacingAndGlyphs'>mode</text>
<circle cx='335.41' cy='412.40' r='1.95' style='stroke-width: 0.71; stroke: #4A90D9; stroke-opacity: 0.60; fill: #4A90D9; fill-opacity: 0.60;' />
<circle cx='392.97' cy='412.40' r='1.95' style='stroke-width: 0.71; stroke: #E07B39; stroke-opacity: 0.60; fill: #E07B39; fill-opacity: 0.60;' />
<text x='349.53' y='415.43' style='font-size: 8.80px; font-family: "Liberation Sans";' textLength='29.31px' lengthAdjust='spacingAndGlyphs'>uniform</text>
<text x='407.09' y='415.43' style='font-size: 8.80px; font-family: "Liberation Sans";' textLength='58.67px' lengthAdjust='spacingAndGlyphs'>heterogeneous</text>
<text x='379.76' y='23.35' text-anchor='middle' style='font-size: 9.00px;fill: #666666; font-family: "Liberation Sans";' textLength='314.09px' lengthAdjust='spacingAndGlyphs'>Dashed line = Q48.16 conserved value (1.0); trial-end reads, shuffled run order</text>
<text x='379.76' y='14.98' text-anchor='middle' style='font-size: 12.00px; font-weight: bold; font-family: "Liberation Sans";' textLength='310.25px' lengthAdjust='spacingAndGlyphs'>Fleet Heat Conservation (K) Across the Trial Sequence</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.3 KiB

@@ -1,34 +0,0 @@
<?xml version='1.0' encoding='UTF-8' ?>
<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='576.00pt' height='288.00pt' viewBox='0 0 576.00 288.00'>
<g class='svglite'>
<defs>
<style type='text/css'><![CDATA[
.svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle {
fill: none;
stroke: #000000;
stroke-linecap: round;
stroke-linejoin: round;
stroke-miterlimit: 10.00;
}
.svglite text {
white-space: pre;
}
.svglite g.glyphgroup path {
fill: inherit;
stroke: none;
}
]]></style>
</defs>
<rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/>
<defs>
<clipPath id='cpMC4wMHw1NzYuMDB8MC4wMHwyODguMDA='>
<rect x='0.00' y='0.00' width='576.00' height='288.00' />
</clipPath>
</defs>
<g clip-path='url(#cpMC4wMHw1NzYuMDB8MC4wMHwyODguMDA=)'>
<rect x='0.00' y='0.00' width='576.00' height='288.00' style='stroke-width: 0.00; stroke: none;' />
<text x='288.00' y='137.58' text-anchor='middle' style='font-size: 17.07px;fill: #666666; font-family: "Liberation Sans";' textLength='164.02px' lengthAdjust='spacingAndGlyphs'>No trials persisted yet</text>
<text x='288.00' y='162.16' text-anchor='middle' style='font-size: 17.07px;fill: #666666; font-family: "Liberation Sans";' textLength='109.02px' lengthAdjust='spacingAndGlyphs'>(0 trials so far)</text>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 1.4 KiB

@@ -0,0 +1,67 @@
<?xml version='1.0' encoding='UTF-8' ?>
<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='576.00pt' height='432.00pt' viewBox='0 0 576.00 432.00'>
<g class='svglite'>
<defs>
<style type='text/css'><![CDATA[
.svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle {
fill: none;
stroke: #000000;
stroke-linecap: round;
stroke-linejoin: round;
stroke-miterlimit: 10.00;
}
.svglite text {
white-space: pre;
}
.svglite g.glyphgroup path {
fill: inherit;
stroke: none;
}
]]></style>
</defs>
<rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/>
<defs>
<clipPath id='cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA='>
<rect x='0.00' y='0.00' width='576.00' height='432.00' />
</clipPath>
</defs>
<g clip-path='url(#cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA=)'>
<rect x='0.00' y='0.000000000000057' width='576.00' height='432.00' style='stroke-width: 1.07; stroke: none; fill: #FFFFFF;' />
</g>
<defs>
<clipPath id='cpNDcuOTJ8NTcwLjUyfDI0LjI5fDQwMS4xMg=='>
<rect x='47.92' y='24.29' width='522.60' height='376.83' />
</clipPath>
</defs>
<g clip-path='url(#cpNDcuOTJ8NTcwLjUyfDI0LjI5fDQwMS4xMg==)'>
<polyline points='47.92,401.12 570.52,401.12 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='47.92,306.91 570.52,306.91 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='47.92,212.70 570.52,212.70 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='47.92,118.49 570.52,118.49 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='47.92,24.29 570.52,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='190.45,401.12 190.45,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<polyline points='427.99,401.12 427.99,24.29 ' style='stroke-width: 1.07; stroke: #E5E5E5; stroke-linecap: butt;' />
<line x1='190.45' y1='212.70' x2='190.45' y2='212.70' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='190.45' y1='212.70' x2='190.45' y2='212.70' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='101.37,212.70 101.37,212.70 279.53,212.70 279.53,212.70 101.37,212.70 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #50C878; fill-opacity: 0.80;' />
<line x1='101.37' y1='212.70' x2='279.53' y2='212.70' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
<line x1='427.99' y1='212.70' x2='427.99' y2='212.70' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<line x1='427.99' y1='212.70' x2='427.99' y2='212.70' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt;' />
<polygon points='338.91,212.70 338.91,212.70 517.07,212.70 517.07,212.70 338.91,212.70 ' style='stroke-width: 1.07; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter; fill: #E07B39; fill-opacity: 0.80;' />
<line x1='338.91' y1='212.70' x2='517.07' y2='212.70' style='stroke-width: 2.13; stroke: #333333; stroke-linecap: butt; stroke-linejoin: miter;' />
</g>
<g clip-path='url(#cpMC4wMHw1NzYuMDB8MC4wMHw0MzIuMDA=)'>
<text x='42.99' y='404.14' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='24.92px' lengthAdjust='spacingAndGlyphs'>-0.050</text>
<text x='42.99' y='309.94' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='24.92px' lengthAdjust='spacingAndGlyphs'>-0.025</text>
<text x='42.99' y='215.73' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.000</text>
<text x='42.99' y='121.52' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.025</text>
<text x='42.99' y='27.31' text-anchor='end' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='22.00px' lengthAdjust='spacingAndGlyphs'>0.050</text>
<text x='190.45' y='412.10' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='4.89px' lengthAdjust='spacingAndGlyphs'>2</text>
<text x='427.99' y='412.10' text-anchor='middle' style='font-size: 8.80px;fill: #4D4D4D; font-family: "Liberation Sans";' textLength='4.89px' lengthAdjust='spacingAndGlyphs'>8</text>
<text x='309.22' y='424.24' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='96.00px' lengthAdjust='spacingAndGlyphs'>Concurrent workers</text>
<text transform='translate(13.05,212.70) rotate(-90)' text-anchor='middle' style='font-size: 11.00px; font-family: "Liberation Sans";' textLength='122.34px' lengthAdjust='spacingAndGlyphs'>switch_count_cumulative</text>
<text x='309.22' y='23.35' text-anchor='middle' style='font-size: 9.00px;fill: #666666; font-family: "Liberation Sans";' textLength='290.50px' lengthAdjust='spacingAndGlyphs'>Stage-3 switch signal count at trial end, by number of concurrent workers</text>
<text x='309.22' y='14.98' text-anchor='middle' style='font-size: 12.00px; font-weight: bold; font-family: "Liberation Sans";' textLength='341.33px' lengthAdjust='spacingAndGlyphs'>Cumulative Preemptive Switch Count by Concurrency Level</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.4 KiB

@@ -1,4 +1,11 @@
% Auto-generated by analyse_multiuser_doe.R -- do not edit by hand.
No trial data has been persisted to the DoE region yet. This section
will populate automatically the next time this report is built after
the campaign has produced at least one completed trial.
This report reflects \textbf{2} completed trial(s) persisted via
\texttt{DOE-PERSIST-TRIAL} as of the last extraction, spanning ISA(s)
\texttt{amd64}. Overall fail rate across all trials so far is
\textbf{0.0\%}; \textbf{100.0\%} of trials read
\texttt{fleet\_conserved==1} at trial end.
\begin{itemize}
\item 2 workers, uniform: 1 trials, fail rate 0.0\%, mean fleet K = 1.0000
\item 8 workers, heterogeneous: 1 trials, fail rate 0.0\%, mean fleet K = 1.0000
\end{itemize}
@@ -0,0 +1,3 @@
"nw","mode","n_trials","n_fail","fail_rate","mean_fail_count","mean_fleet_k","pct_conserved","mean_switch_cnt"
"2","uniform",1,0,0,0,1,1,0
"8","heterogeneous",1,0,0,0,1,1,0
1 nw mode n_trials n_fail fail_rate mean_fail_count mean_fleet_k pct_conserved mean_switch_cnt
2 2 uniform 1 0 0 0 1 1 0
3 8 heterogeneous 1 0 0 0 1 1 0
@@ -1,2 +0,0 @@
"status","trials_so_far"
"No trials persisted yet",0
1 status trials_so_far
2 No trials persisted yet 0
@@ -1 +1,3 @@
isa,run_id,cfg,rep,nw,mode,fail_count,fleet_k_q48,fleet_conserved,switch_count_cumulative
amd64,0,0,14,2,0,0,65536,1,0
amd64,1,5,8,8,1,0,65536,1,0
1 isa run_id cfg rep nw mode fail_count fleet_k_q48 fleet_conserved switch_count_cumulative
2 amd64 0 0 14 2 0 0 65536 1 0
3 amd64 1 5 8 8 1 0 65536 1 0