Performance compairson updated.

This commit is contained in:
Scott Duensing 2026-05-04 11:45:32 -05:00
parent e228efba2a
commit ad06ee59b7
2 changed files with 12 additions and 7 deletions

12
PERF.md
View file

@ -8,14 +8,14 @@
| drawLine V | 90 | 1.67x | 1.11x | 115.30x | | drawLine V | 90 | 1.67x | 1.11x | 115.30x |
| drawLine diag | 35 | 1.14x | 1.06x | 261.49x | | drawLine diag | 35 | 1.14x | 1.06x | 261.49x |
| drawRect 100x100 | 75 | 1.57x | 1.04x | 250.77x | | drawRect 100x100 | 75 | 1.57x | 1.04x | 250.77x |
| drawCircle r=16 | 232 | 1.21x | 0.65x | 71.24x | | drawCircle r=16 | 232 | 1.21x | **0.65x** | 71.24x |
| drawCircle r=80 | 56 | 1.16x | 0.61x | 310.93x | | drawCircle r=80 | 56 | 1.16x | **0.61x** | 310.93x |
| fillRect 16x16 | 450 | 1.24x | 1.04x | 39.38x | | fillRect 16x16 | 450 | 1.24x | 1.04x | 39.38x |
| fillRect 80x80 | 75 | 0.95x | 1.28x | 206.73x | | fillRect 80x80 | 75 | **0.95x** | 1.28x | 206.73x |
| fillRect 320x200 | 60 | 0.93x | 0.43x | 184.62x | | fillRect 320x200 | 60 | **0.93x** | **0.43x** | 184.62x |
| fillCircle r=40 | 38 | 0.97x | 1.39x | 347.24x | | fillCircle r=40 | 38 | **0.97x** | 1.39x | 347.24x |
| samplePixel | 1916 | 3.48x | 1.92x | 18.04x | | samplePixel | 1916 | 3.48x | 1.92x | 18.04x |
| tileFill | 1252 | 1.73x | 0.93x | 10.44x | | tileFill | 1252 | 1.73x | **0.93x** | 10.44x |
| tileCopy | 997 | 1.80x | 1.02x | 16.96x | | tileCopy | 997 | 1.80x | 1.02x | 16.96x |
| tileCopyMasked | 498 | 1.76x | 1.08x | 28.55x | | tileCopyMasked | 498 | 1.76x | 1.08x | 28.55x |
| tilePaste | 1106 | 1.94x | 1.09x | 13.53x | | tilePaste | 1106 | 1.94x | 1.09x | 13.53x |

View file

@ -60,7 +60,12 @@ def format_ratio(port_ops, ref_ops):
if port_ops is None or ref_ops is None or ref_ops == 0: if port_ops is None or ref_ops is None or ref_ops == 0:
return "-" return "-"
ratio = port_ops / ref_ops ratio = port_ops / ref_ops
return f"{ratio:.2f}x" cell = f"{ratio:.2f}x"
# Bold sub-parity ratios. DESIGN.md treats the reference port as
# the perf floor; ratios below 1.00 are the cells worth attention.
if ratio < 1.0:
cell = f"**{cell}**"
return cell
def render_table(port_data, ops_in_order, ref_key): def render_table(port_data, ops_in_order, ref_key):