Fix NBA "last wins" semantics in suspendable processes#6989
Fix NBA "last wins" semantics in suspendable processes#6989sifferman wants to merge 5 commits intoverilator:masterfrom
Conversation
|
Can the logic generated be simplified in cases there's only a single NBA involved? |
There was a problem hiding this comment.
Neat patch, appreciated.
Definitely an improvement but this still won't work if we have an NBA to both the whole value, and a part of it.
During traversal you can record if a variable is used in part on the LHS (the AstAssignDly LHS is not an AstVarRef) and do what you did here if if not.
For variables that are updated partially by at least one NBA:
- If a simple packed type, use a bitwise masking scheme like
ShadowVarMasked. - For Arrays, we can use
ValueQueueWhole/ValueQueuePartiallike we do in loop. - For others, we should probably throw E_UNSUPPORTED like we do for arrays in loops, though @wsnyder should chime in on this.
I suggest just add the 2 new Schemes FlagUniqueWhole/FlagUniquePartial + use existing ValueQueueWhole/ValueQueuePartial. And if we are happy to throw unsupported on the rest, delete FlagUnique.
Either way please add a test for the whole + partial together case as well.
|
Ahh, I see. Good point. I just added this test case which fails: I can look into your suggestions shortly. |
|
Performance metrics for PR workflow #1755 (B) compared to scheduled run #1737 (A) from 2026-02-02T04:27:00Z gccverilate - Elapsed time [s] - lower is better╒═══════════════════════════╤════╤════╤══════════════════╤══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═══════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 10.67 │ 10.32 │ 1.03x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 19.50 │ 21.19 │ 0.92x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 66.17 │ 65.20 │ 1.01x │ │ │ Caliptra:default │ 1 │ 1 │ 80.51 │ 80.05 │ 1.01x │ │ │ NVDLA:default │ 1 │ 1 │ 187.72 │ 187.27 │ 1.00x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 7.89 │ 7.15 │ 1.10x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 18.45 │ 18.58 │ 0.99x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 64.39 │ 64.18 │ 1.00x │ │ │ OpenTitan:default │ 1 │ 1 │ 63.96 │ 63.10 │ 1.01x │ │ │ VeeR-EH1:asic │ 1 │ 1 │ 3.59 │ 3.77 │ 0.95x │ │ │ VeeR-EH1:default │ 1 │ 1 │ 3.44 │ 3.49 │ 0.99x │ │ │ VeeR-EH1:hiperf │ 1 │ 1 │ 8.68 │ 9.28 │ 0.94x │ │ │ VeeR-EH2:asic │ 1 │ 1 │ 11.74 │ 11.36 │ 1.03x │ │ │ VeeR-EH2:default │ 1 │ 1 │ 10.41 │ 11.17 │ 0.93x │ │ │ VeeR-EH2:hiperf │ 1 │ 1 │ 20.01 │ 18.86 │ 1.06x │ │ │ VeeR-EL2:asic │ 1 │ 1 │ 6.29 │ 6.18 │ 1.02x │ │ │ VeeR-EL2:default │ 1 │ 1 │ 5.14 │ 5.69 │ 0.90x │ │ │ VeeR-EL2:hiperf │ 1 │ 1 │ 7.65 │ 7.46 │ 1.03x │ │ │ Vortex:mini │ 1 │ 1 │ 4.85 │ 4.91 │ 0.99x │ │ │ Vortex:sane │ 1 │ 1 │ 26.52 │ 30.42 │ 0.87x │ │ │ XiangShan:default-chisel3 │ 1 │ 1 │ 211.86 │ 206.13 │ 1.03x │ │ │ XiangShan:default-chisel6 │ 1 │ 1 │ 117.96 │ 125.17 │ 0.94x │ │ │ XiangShan:mini-chisel3 │ 1 │ 1 │ 71.88 │ 69.17 │ 1.04x │ │ │ XiangShan:mini-chisel6 │ 1 │ 1 │ 49.67 │ 47.29 │ 1.05x │ │ │ XuanTie-C906:default │ 1 │ 1 │ 9.99 │ 10.88 │ 0.92x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 59.16 │ 57.70 │ 1.03x │ │ │ XuanTie-E902:default │ 1 │ 1 │ 2.06 │ 2.28 │ 0.90x │ │ │ XuanTie-E906:default │ 1 │ 1 │ 5.96 │ 6.16 │ 0.97x │ │ ╞═══════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 0.99x │ │ ╘═══════════════════════════╧════╧════╧══════════════════╧══════════════════╧════════════╧═════════╛ verilate - Peak memory [MB] - lower is better╒═══════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═══════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 428.11 │ 430.26 │ 1.00x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 789.88 │ 789.12 │ 1.00x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 2535.32 │ 2532.89 │ 1.00x │ │ │ Caliptra:default │ 1 │ 1 │ 2890.10 │ 2890.51 │ 1.00x │ │ │ NVDLA:default │ 1 │ 1 │ 8831.86 │ 8836.19 │ 1.00x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 313.94 │ 313.63 │ 1.00x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 773.87 │ 778.08 │ 0.99x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 2645.44 │ 2645.41 │ 1.00x │ │ │ OpenTitan:default │ 1 │ 1 │ 1852.70 │ 1848.52 │ 1.00x │ │ │ VeeR-EH1:asic │ 1 │ 1 │ 209.15 │ 208.42 │ 1.00x │ │ │ VeeR-EH1:default │ 1 │ 1 │ 202.20 │ 202.50 │ 1.00x │ │ │ VeeR-EH1:hiperf │ 1 │ 1 │ 443.97 │ 442.95 │ 1.00x │ │ │ VeeR-EH2:asic │ 1 │ 1 │ 518.46 │ 518.49 │ 1.00x │ │ │ VeeR-EH2:default │ 1 │ 1 │ 494.63 │ 494.55 │ 1.00x │ │ │ VeeR-EH2:hiperf │ 1 │ 1 │ 860.17 │ 856.29 │ 1.00x │ │ │ VeeR-EL2:asic │ 1 │ 1 │ 305.11 │ 306.14 │ 1.00x │ │ │ VeeR-EL2:default │ 1 │ 1 │ 294.87 │ 295.05 │ 1.00x │ │ │ VeeR-EL2:hiperf │ 1 │ 1 │ 425.29 │ 428.54 │ 0.99x │ │ │ Vortex:mini │ 1 │ 1 │ 435.05 │ 437.53 │ 0.99x │ │ │ Vortex:sane │ 1 │ 1 │ 1139.83 │ 1141.88 │ 1.00x │ │ │ XiangShan:default-chisel3 │ 1 │ 1 │ 6709.98 │ 6710.62 │ 1.00x │ │ │ XiangShan:default-chisel6 │ 1 │ 1 │ 5017.04 │ 5017.66 │ 1.00x │ │ │ XiangShan:mini-chisel3 │ 1 │ 1 │ 2813.78 │ 2814.22 │ 1.00x │ │ │ XiangShan:mini-chisel6 │ 1 │ 1 │ 2079.97 │ 2074.58 │ 1.00x │ │ │ XuanTie-C906:default │ 1 │ 1 │ 484.68 │ 483.95 │ 1.00x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 2802.56 │ 2802.12 │ 1.00x │ │ │ XuanTie-E902:default │ 1 │ 1 │ 127.06 │ 127.13 │ 1.00x │ │ │ XuanTie-E906:default │ 1 │ 1 │ 278.75 │ 278.28 │ 1.00x │ │ ╞═══════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘═══════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Sim speed [kHz] - higher is better╒══════════════════════════════════════╤════╤════╤══════════════════╤══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (B/A) │ p-value │ ╞══════════════════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 17.68 │ 17.94 │ 1.01x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 17.89 │ 17.72 │ 0.99x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 4.50 │ 3.17 │ 0.71x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 4.73 │ 3.15 │ 0.67x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 0.81 │ 0.82 │ 1.01x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 0.81 │ 0.82 │ 1.00x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 0.84 │ 0.85 │ 1.00x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 0.84 │ 0.84 │ 1.00x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 0.85 │ 0.85 │ 1.00x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 0.85 │ 0.85 │ 1.00x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 0.38 │ 0.45 │ 1.18x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 0.57 │ 0.61 │ 1.08x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 0.41 │ 0.48 │ 1.16x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 0.65 │ 0.66 │ 1.02x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 0.64 │ 0.66 │ 1.03x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 17.74 │ 17.91 │ 1.01x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 19.29 │ 19.18 │ 0.99x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 19.22 │ 19.53 │ 1.02x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 4.15 │ 4.13 │ 1.00x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 4.26 │ 4.26 │ 1.00x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 4.29 │ 4.30 │ 1.00x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 1.09 │ 1.09 │ 1.00x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 1.05 │ 1.05 │ 1.00x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 1.05 │ 1.08 │ 1.02x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 3.37 │ 3.38 │ 1.00x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 3.39 │ 3.40 │ 1.00x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 3.35 │ 3.38 │ 1.01x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 3.37 │ 3.38 │ 1.00x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 99.12 │ 87.74 │ 0.89x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 97.53 │ 86.67 │ 0.89x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 97.16 │ 86.09 │ 0.89x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 130.55 │ 129.15 │ 0.99x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 129.33 │ 126.69 │ 0.98x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 130.18 │ 127.93 │ 0.98x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 38.05 │ 39.23 │ 1.03x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 33.71 │ 37.92 │ 1.12x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 38.97 │ 38.31 │ 0.98x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 6.73 │ 6.71 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 6.57 │ 6.66 │ 1.01x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 6.28 │ 6.30 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 6.31 │ 6.45 │ 1.02x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 6.37 │ 6.45 │ 1.01x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 5.77 │ 5.89 │ 1.02x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 26.21 │ 26.32 │ 1.00x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 25.92 │ 26.87 │ 1.04x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 25.96 │ 26.04 │ 1.00x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 25.48 │ 25.05 │ 0.98x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 26.17 │ 26.08 │ 1.00x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 24.35 │ 23.65 │ 0.97x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 10.65 │ 10.63 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 10.63 │ 10.58 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 10.41 │ 10.51 │ 1.01x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 10.31 │ 10.36 │ 1.00x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 10.45 │ 10.63 │ 1.02x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 10.09 │ 10.18 │ 1.01x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 25.96 │ 26.07 │ 1.00x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 27.62 │ 27.63 │ 1.00x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 27.76 │ 27.28 │ 0.98x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 74.84 │ 78.65 │ 1.05x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 79.78 │ 80.03 │ 1.00x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 80.44 │ 80.61 │ 1.00x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 51.18 │ 50.64 │ 0.99x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 52.61 │ 52.21 │ 0.99x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 51.94 │ 51.26 │ 0.99x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 88.66 │ 88.17 │ 0.99x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 90.36 │ 87.73 │ 0.97x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 3.64 │ 2.74 │ 0.75x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 3.51 │ 2.75 │ 0.78x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 0.62 │ 0.70 │ 1.13x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 0.62 │ 0.70 │ 1.12x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 0.63 │ 0.68 │ 1.07x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 0.63 │ 0.64 │ 1.01x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 0.62 │ 0.64 │ 1.05x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 0.62 │ 0.63 │ 1.03x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 2.29 │ 2.37 │ 1.03x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 2.30 │ 2.36 │ 1.03x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 2.29 │ 2.40 │ 1.05x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 2.15 │ 2.16 │ 1.01x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 2.16 │ 2.15 │ 0.99x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 2.16 │ 2.17 │ 1.00x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 25.67 │ 25.13 │ 0.98x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 26.26 │ 26.05 │ 0.99x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 1.71 │ 1.69 │ 0.99x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 1.71 │ 1.73 │ 1.01x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 22.42 │ 22.88 │ 1.02x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 20.39 │ 20.20 │ 0.99x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 14.15 │ 14.27 │ 1.01x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 13.07 │ 13.08 │ 1.00x │ │ ╞══════════════════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 0.99x │ │ ╘══════════════════════════════════════╧════╧════╧══════════════════╧══════════════════╧════════════╧═════════╛ execute - Peak memory [MB] - lower is better╒══════════════════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 12.35 │ 12.38 │ 1.00x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 12.30 │ 12.29 │ 1.00x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 17.06 │ 16.93 │ 1.01x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 17.02 │ 16.90 │ 1.01x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 35.51 │ 35.51 │ 1.00x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 35.50 │ 35.37 │ 1.00x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 32.57 │ 32.56 │ 1.00x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 32.47 │ 32.56 │ 1.00x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 32.49 │ 32.52 │ 1.00x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 32.53 │ 32.56 │ 1.00x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 1238.42 │ 1238.42 │ 1.00x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 1238.39 │ 1238.50 │ 1.00x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 1238.46 │ 1238.36 │ 1.00x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 1238.46 │ 1238.42 │ 1.00x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 1238.47 │ 1238.36 │ 1.00x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 7.43 │ 7.37 │ 1.01x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 7.40 │ 7.31 │ 1.01x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 7.36 │ 7.36 │ 1.00x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 13.49 │ 13.37 │ 1.01x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 14.53 │ 14.47 │ 1.00x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 13.55 │ 13.37 │ 1.01x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 41.27 │ 41.30 │ 1.00x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 42.30 │ 42.33 │ 1.00x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 41.28 │ 41.21 │ 1.00x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 22.32 │ 22.41 │ 1.00x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 22.16 │ 22.19 │ 1.00x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 22.15 │ 22.25 │ 1.00x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 22.16 │ 22.30 │ 0.99x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 9.78 │ 9.88 │ 0.99x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 10.08 │ 10.01 │ 1.01x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 7.77 │ 7.52 │ 1.03x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 9.81 │ 9.86 │ 0.99x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 9.86 │ 9.79 │ 1.01x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 7.66 │ 7.62 │ 1.01x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 10.96 │ 10.94 │ 1.00x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 11.13 │ 11.13 │ 1.00x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 8.98 │ 8.92 │ 1.01x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 11.54 │ 11.49 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 11.93 │ 11.87 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 12.02 │ 12.06 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 11.50 │ 11.51 │ 1.00x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 9.15 │ 9.23 │ 0.99x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 9.70 │ 9.80 │ 0.99x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 10.76 │ 10.71 │ 1.00x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 11.21 │ 11.15 │ 1.01x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 11.31 │ 11.30 │ 1.00x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 10.94 │ 10.92 │ 1.00x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 8.42 │ 8.51 │ 0.99x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 9.00 │ 8.84 │ 1.02x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 13.22 │ 13.24 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 13.65 │ 13.58 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 13.80 │ 13.78 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 13.43 │ 13.38 │ 1.00x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 10.99 │ 10.94 │ 1.00x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 11.45 │ 11.44 │ 1.00x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 12.77 │ 12.56 │ 1.02x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 9.36 │ 9.51 │ 0.98x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 7.01 │ 6.96 │ 1.01x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 12.15 │ 12.15 │ 1.00x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 8.88 │ 8.95 │ 0.99x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 6.59 │ 6.44 │ 1.02x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 12.62 │ 12.80 │ 0.99x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 9.30 │ 9.37 │ 0.99x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 6.88 │ 7.03 │ 0.98x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 5.92 │ 5.86 │ 1.01x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 5.64 │ 5.79 │ 0.97x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 19.34 │ 19.33 │ 1.00x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 19.07 │ 19.07 │ 1.00x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 82.66 │ 82.67 │ 1.00x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 82.67 │ 82.61 │ 1.00x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 82.60 │ 82.63 │ 1.00x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 75.06 │ 75.04 │ 1.00x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 74.98 │ 75.02 │ 1.00x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 74.88 │ 74.91 │ 1.00x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 23.65 │ 23.68 │ 1.00x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 23.69 │ 23.73 │ 1.00x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 23.66 │ 23.68 │ 1.00x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 23.08 │ 23.08 │ 1.00x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 23.00 │ 23.14 │ 0.99x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 23.03 │ 22.99 │ 1.00x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 40.39 │ 40.39 │ 1.00x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 40.36 │ 40.36 │ 1.00x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 61.36 │ 61.35 │ 1.00x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 61.42 │ 61.35 │ 1.00x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 5.45 │ 5.55 │ 0.98x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 5.45 │ 5.45 │ 1.00x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 6.90 │ 6.87 │ 1.00x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 6.94 │ 6.83 │ 1.02x │ │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘══════════════════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Elapsed time [s] - lower is better╒══════════════════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 154.15 │ 151.88 │ 1.01x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 155.58 │ 157.10 │ 0.99x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 121.93 │ 172.92 │ 0.71x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 115.87 │ 173.82 │ 0.67x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 1084.41 │ 1070.95 │ 1.01x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 276.76 │ 276.05 │ 1.00x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 88.22 │ 87.81 │ 1.00x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 356.19 │ 354.90 │ 1.00x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 111.48 │ 111.15 │ 1.00x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 143.11 │ 142.76 │ 1.00x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 414.09 │ 350.45 │ 1.18x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 120.99 │ 111.71 │ 1.08x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 117.93 │ 101.73 │ 1.16x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 126.24 │ 123.24 │ 1.02x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 125.60 │ 121.95 │ 1.03x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 90.71 │ 89.87 │ 1.01x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 88.36 │ 88.88 │ 0.99x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 87.92 │ 86.54 │ 1.02x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 107.97 │ 108.49 │ 1.00x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 110.25 │ 110.31 │ 1.00x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 111.87 │ 111.61 │ 1.00x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 102.55 │ 102.89 │ 1.00x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 95.32 │ 95.30 │ 1.00x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 93.42 │ 91.21 │ 1.02x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 361.79 │ 360.44 │ 1.00x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 255.25 │ 254.21 │ 1.00x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 374.17 │ 370.69 │ 1.01x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 365.88 │ 364.43 │ 1.00x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 67.18 │ 75.89 │ 0.89x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 67.07 │ 75.47 │ 0.89x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 67.63 │ 76.32 │ 0.89x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 84.85 │ 85.77 │ 0.99x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 87.12 │ 88.94 │ 0.98x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 87.10 │ 88.63 │ 0.98x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 141.53 │ 137.29 │ 1.03x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 152.11 │ 135.23 │ 1.12x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 134.92 │ 137.22 │ 0.98x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 149.10 │ 149.38 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 99.42 │ 98.15 │ 1.01x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 150.42 │ 149.87 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 177.32 │ 173.43 │ 1.02x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 104.47 │ 103.20 │ 1.01x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 109.67 │ 107.56 │ 1.02x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 75.46 │ 75.12 │ 1.00x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 74.53 │ 71.88 │ 1.04x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 72.06 │ 71.83 │ 1.00x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 86.57 │ 88.04 │ 0.98x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 74.35 │ 74.61 │ 1.00x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 76.89 │ 79.17 │ 0.97x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 93.50 │ 93.70 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 100.01 │ 100.43 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 119.18 │ 118.04 │ 1.01x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 107.52 │ 107.02 │ 1.00x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 92.56 │ 90.98 │ 1.02x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 93.97 │ 93.08 │ 1.01x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 87.67 │ 87.31 │ 1.00x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 89.64 │ 89.62 │ 1.00x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 86.59 │ 88.12 │ 0.98x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 70.52 │ 67.11 │ 1.05x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 75.53 │ 75.29 │ 1.00x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 74.39 │ 74.24 │ 1.00x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 80.93 │ 81.80 │ 0.99x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 83.17 │ 83.81 │ 0.99x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 89.61 │ 90.80 │ 0.99x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 43.39 │ 43.63 │ 0.99x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 46.33 │ 47.72 │ 0.97x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 45.71 │ 60.70 │ 0.75x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 46.11 │ 58.83 │ 0.78x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 301.22 │ 266.00 │ 1.13x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 231.91 │ 207.46 │ 1.12x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 367.32 │ 343.65 │ 1.07x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 295.38 │ 292.51 │ 1.01x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 235.35 │ 224.92 │ 1.05x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 372.79 │ 363.48 │ 1.03x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 127.98 │ 123.86 │ 1.03x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 149.01 │ 144.99 │ 1.03x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 152.53 │ 145.42 │ 1.05x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 136.49 │ 135.67 │ 1.01x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 157.98 │ 158.87 │ 0.99x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 163.31 │ 162.61 │ 1.00x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 100.45 │ 102.60 │ 0.98x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 102.59 │ 103.42 │ 0.99x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 117.58 │ 118.62 │ 0.99x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 136.35 │ 134.79 │ 1.01x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 125.88 │ 123.37 │ 1.02x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 135.16 │ 136.47 │ 0.99x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 133.77 │ 132.64 │ 1.01x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 137.22 │ 137.11 │ 1.00x │ │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 0.99x │ │ ╘══════════════════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ clang --threads 4verilate - Elapsed time [s] - lower is better╒═══════════════════════════╤════╤════╤══════════════════╤══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═══════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 10.33 │ 10.95 │ 0.94x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 24.14 │ 24.19 │ 1.00x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 71.61 │ 69.81 │ 1.03x │ │ │ Caliptra:default │ 1 │ 1 │ 83.47 │ 81.97 │ 1.02x │ │ │ NVDLA:default │ 1 │ 1 │ 195.75 │ 193.62 │ 1.01x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 8.23 │ 7.86 │ 1.05x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 20.76 │ 20.78 │ 1.00x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 71.60 │ 75.13 │ 0.95x │ │ │ OpenTitan:default │ 1 │ 1 │ 66.77 │ 62.67 │ 1.07x │ │ │ VeeR-EH1:asic │ 1 │ 1 │ 4.45 │ 5.53 │ 0.80x │ │ │ VeeR-EH1:default │ 1 │ 1 │ 4.27 │ 4.68 │ 0.91x │ │ │ VeeR-EH1:hiperf │ 1 │ 1 │ 9.21 │ 9.17 │ 1.00x │ │ │ VeeR-EH2:asic │ 1 │ 1 │ 13.51 │ 12.59 │ 1.07x │ │ │ VeeR-EH2:default │ 1 │ 1 │ 11.87 │ 11.57 │ 1.03x │ │ │ VeeR-EH2:hiperf │ 1 │ 1 │ 20.39 │ 18.50 │ 1.10x │ │ │ VeeR-EL2:asic │ 1 │ 1 │ 6.35 │ 6.43 │ 0.99x │ │ │ VeeR-EL2:default │ 1 │ 1 │ 5.67 │ 5.95 │ 0.95x │ │ │ VeeR-EL2:hiperf │ 1 │ 1 │ 8.10 │ 7.84 │ 1.03x │ │ │ Vortex:mini │ 1 │ 1 │ 4.93 │ 5.20 │ 0.95x │ │ │ Vortex:sane │ 1 │ 1 │ 32.78 │ 32.22 │ 1.02x │ │ │ XiangShan:default-chisel3 │ 1 │ 1 │ 248.06 │ 225.51 │ 1.10x │ │ │ XiangShan:default-chisel6 │ 1 │ 1 │ 144.62 │ 148.13 │ 0.98x │ │ │ XiangShan:mini-chisel3 │ 1 │ 1 │ 89.77 │ 93.66 │ 0.96x │ │ │ XiangShan:mini-chisel6 │ 1 │ 1 │ 60.50 │ 59.52 │ 1.02x │ │ │ XuanTie-C906:default │ 1 │ 1 │ 12.20 │ 13.12 │ 0.93x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 82.59 │ 80.70 │ 1.02x │ │ │ XuanTie-E902:default │ 1 │ 1 │ 2.47 │ 2.13 │ 1.16x │ │ │ XuanTie-E906:default │ 1 │ 1 │ 7.35 │ 7.52 │ 0.98x │ │ ╞═══════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘═══════════════════════════╧════╧════╧══════════════════╧══════════════════╧════════════╧═════════╛ verilate - Peak memory [MB] - lower is better╒═══════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═══════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 428.32 │ 428.08 │ 1.00x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 965.08 │ 964.80 │ 1.00x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 3088.43 │ 3087.13 │ 1.00x │ │ │ Caliptra:default │ 1 │ 1 │ 2904.97 │ 2902.23 │ 1.00x │ │ │ NVDLA:default │ 1 │ 1 │ 8837.30 │ 8830.91 │ 1.00x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 387.93 │ 385.34 │ 1.01x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 1056.54 │ 1060.93 │ 1.00x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 3156.31 │ 3158.76 │ 1.00x │ │ │ OpenTitan:default │ 1 │ 1 │ 1870.88 │ 1854.56 │ 1.01x │ │ │ VeeR-EH1:asic │ 1 │ 1 │ 303.43 │ 305.02 │ 0.99x │ │ │ VeeR-EH1:default │ 1 │ 1 │ 274.22 │ 270.47 │ 1.01x │ │ │ VeeR-EH1:hiperf │ 1 │ 1 │ 441.77 │ 444.44 │ 0.99x │ │ │ VeeR-EH2:asic │ 1 │ 1 │ 516.94 │ 518.57 │ 1.00x │ │ │ VeeR-EH2:default │ 1 │ 1 │ 492.84 │ 492.38 │ 1.00x │ │ │ VeeR-EH2:hiperf │ 1 │ 1 │ 855.34 │ 855.54 │ 1.00x │ │ │ VeeR-EL2:asic │ 1 │ 1 │ 304.94 │ 303.45 │ 1.00x │ │ │ VeeR-EL2:default │ 1 │ 1 │ 291.85 │ 291.65 │ 1.00x │ │ │ VeeR-EL2:hiperf │ 1 │ 1 │ 425.08 │ 423.65 │ 1.00x │ │ │ Vortex:mini │ 1 │ 1 │ 432.23 │ 435.20 │ 0.99x │ │ │ Vortex:sane │ 1 │ 1 │ 1152.04 │ 1153.11 │ 1.00x │ │ │ XiangShan:default-chisel3 │ 1 │ 1 │ 7388.74 │ 7387.85 │ 1.00x │ │ │ XiangShan:default-chisel6 │ 1 │ 1 │ 6142.90 │ 6146.58 │ 1.00x │ │ │ XiangShan:mini-chisel3 │ 1 │ 1 │ 3537.52 │ 3535.02 │ 1.00x │ │ │ XiangShan:mini-chisel6 │ 1 │ 1 │ 3027.37 │ 3029.84 │ 1.00x │ │ │ XuanTie-C906:default │ 1 │ 1 │ 691.13 │ 717.69 │ 0.96x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 5019.75 │ 5021.36 │ 1.00x │ │ │ XuanTie-E902:default │ 1 │ 1 │ 130.82 │ 138.91 │ 0.94x │ │ │ XuanTie-E906:default │ 1 │ 1 │ 464.16 │ 453.20 │ 1.02x │ │ ╞═══════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘═══════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Sim speed [kHz] - higher is better╒══════════════════════════════════════╤════╤════╤═════════════════╤═════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (B/A) │ p-value │ ╞══════════════════════════════════════╪════╪════╪═════════════════╪═════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 30.22 │ 29.97 │ 0.99x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 30.77 │ 30.23 │ 0.98x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 7.76 │ 7.71 │ 0.99x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 7.78 │ 7.84 │ 1.01x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 1.88 │ 1.90 │ 1.01x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 1.91 │ 1.93 │ 1.01x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 1.28 │ 1.25 │ 0.98x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 1.44 │ 1.44 │ 1.00x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 1.45 │ 1.44 │ 0.99x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 1.39 │ 1.25 │ 0.90x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 0.64 │ 0.62 │ 0.98x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 0.74 │ 0.74 │ 1.00x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 0.65 │ 0.65 │ 0.99x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 0.73 │ 0.72 │ 0.99x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 0.72 │ 0.71 │ 0.99x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 24.62 │ 23.28 │ 0.95x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 26.08 │ 23.81 │ 0.91x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 26.29 │ 24.17 │ 0.92x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 7.21 │ 7.23 │ 1.00x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 7.66 │ 7.62 │ 0.99x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 7.70 │ 7.70 │ 1.00x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 1.74 │ 1.81 │ 1.04x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 1.73 │ 1.70 │ 0.98x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 1.78 │ 1.82 │ 1.02x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 6.57 │ 8.21 │ 1.25x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 6.71 │ 8.30 │ 1.24x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 6.69 │ 8.23 │ 1.23x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 6.72 │ 8.58 │ 1.28x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 63.20 │ 62.54 │ 0.99x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 63.59 │ 63.24 │ 0.99x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 63.34 │ 62.48 │ 0.99x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 92.40 │ 92.50 │ 1.00x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 91.97 │ 92.42 │ 1.00x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 93.26 │ 91.55 │ 0.98x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 59.22 │ 65.40 │ 1.10x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 59.56 │ 67.27 │ 1.13x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 65.22 │ 62.59 │ 0.96x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 10.22 │ 10.49 │ 1.03x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 10.02 │ 10.26 │ 1.02x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 9.44 │ 9.71 │ 1.03x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 9.66 │ 9.75 │ 1.01x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 9.79 │ 9.80 │ 1.00x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 8.75 │ 8.82 │ 1.01x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 35.95 │ 35.53 │ 0.99x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 35.71 │ 35.12 │ 0.98x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 33.61 │ 32.74 │ 0.97x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 33.89 │ 33.23 │ 0.98x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 34.09 │ 34.85 │ 1.02x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 30.12 │ 29.77 │ 0.99x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 20.27 │ 24.79 │ 1.22x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 20.12 │ 24.92 │ 1.24x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 19.43 │ 23.31 │ 1.20x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 19.45 │ 23.90 │ 1.23x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 18.60 │ 24.16 │ 1.30x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 16.68 │ 21.87 │ 1.31x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 33.44 │ 34.13 │ 1.02x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 36.15 │ 36.42 │ 1.01x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 35.95 │ 37.58 │ 1.05x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 65.66 │ 68.23 │ 1.04x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 69.28 │ 70.32 │ 1.02x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 71.60 │ 72.16 │ 1.01x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 58.65 │ 56.82 │ 0.97x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 60.88 │ 57.94 │ 0.95x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 60.80 │ 59.83 │ 0.98x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 90.24 │ 91.83 │ 1.02x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 93.70 │ 93.18 │ 0.99x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 6.27 │ 6.42 │ 1.02x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 6.29 │ 6.32 │ 1.01x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 1.46 │ 1.55 │ 1.06x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 1.52 │ 1.64 │ 1.08x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 1.44 │ 1.60 │ 1.11x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 1.46 │ 1.51 │ 1.03x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 1.50 │ 1.53 │ 1.03x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 1.40 │ 1.52 │ 1.08x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 4.69 │ 4.60 │ 0.98x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 4.77 │ 4.77 │ 1.00x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 4.69 │ 4.78 │ 1.02x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 4.31 │ 4.27 │ 0.99x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 4.40 │ 4.41 │ 1.00x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 4.40 │ 4.40 │ 1.00x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 40.43 │ 39.17 │ 0.97x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 40.74 │ 41.05 │ 1.01x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 3.52 │ 3.55 │ 1.01x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 3.65 │ 3.65 │ 1.00x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 15.81 │ 16.56 │ 1.05x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 13.96 │ 14.52 │ 1.04x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 12.51 │ 12.41 │ 0.99x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 11.43 │ 11.47 │ 1.00x │ │ ╞══════════════════════════════════════╪════╪════╪═════════════════╪═════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.03x │ │ ╘══════════════════════════════════════╧════╧════╧═════════════════╧═════════════════╧════════════╧═════════╛ execute - Peak memory [MB] - lower is better╒══════════════════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 12.79 │ 12.59 │ 1.02x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 12.78 │ 12.88 │ 0.99x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 18.92 │ 18.81 │ 1.01x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 19.04 │ 18.79 │ 1.01x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 41.71 │ 41.64 │ 1.00x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 41.52 │ 41.53 │ 1.00x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 34.17 │ 34.16 │ 1.00x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 34.16 │ 33.99 │ 1.01x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 34.08 │ 34.16 │ 1.00x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 34.06 │ 34.12 │ 1.00x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 1238.21 │ 1238.28 │ 1.00x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 1238.22 │ 1238.28 │ 1.00x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 1238.30 │ 1238.30 │ 1.00x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 1238.18 │ 1238.24 │ 1.00x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 1238.24 │ 1238.16 │ 1.00x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 7.88 │ 8.07 │ 0.98x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 7.76 │ 8.10 │ 0.96x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 7.90 │ 8.02 │ 0.99x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 14.99 │ 15.00 │ 1.00x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 16.08 │ 16.12 │ 1.00x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 14.95 │ 15.20 │ 0.98x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 46.95 │ 46.80 │ 1.00x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 47.99 │ 48.02 │ 1.00x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 46.89 │ 46.98 │ 1.00x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 24.18 │ 24.32 │ 0.99x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 24.22 │ 24.39 │ 0.99x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 24.33 │ 24.42 │ 1.00x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 24.36 │ 24.39 │ 1.00x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 9.95 │ 10.08 │ 0.99x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 10.34 │ 10.10 │ 1.02x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 7.93 │ 7.80 │ 1.02x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 9.77 │ 9.90 │ 0.99x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 10.18 │ 10.07 │ 1.01x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 7.85 │ 7.86 │ 1.00x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 11.40 │ 11.33 │ 1.01x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 11.54 │ 11.40 │ 1.01x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 9.40 │ 9.19 │ 1.02x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 11.86 │ 12.06 │ 0.98x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 12.43 │ 12.36 │ 1.01x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 12.52 │ 12.50 │ 1.00x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 11.98 │ 12.07 │ 0.99x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 9.74 │ 9.63 │ 1.01x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 10.20 │ 10.17 │ 1.00x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 11.13 │ 11.13 │ 1.00x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 11.56 │ 11.66 │ 0.99x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 11.60 │ 11.70 │ 0.99x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 11.19 │ 11.12 │ 1.01x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 8.86 │ 8.92 │ 0.99x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 9.45 │ 9.37 │ 1.01x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 14.28 │ 14.30 │ 1.00x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 14.88 │ 14.73 │ 1.01x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 14.89 │ 15.08 │ 0.99x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 14.41 │ 14.42 │ 1.00x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 12.06 │ 12.24 │ 0.98x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 12.50 │ 12.63 │ 0.99x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 13.10 │ 13.02 │ 1.01x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 9.73 │ 9.70 │ 1.00x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 7.44 │ 7.15 │ 1.04x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 12.56 │ 12.44 │ 1.01x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 9.32 │ 9.20 │ 1.01x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 6.95 │ 6.68 │ 1.04x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 13.02 │ 12.99 │ 1.00x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 9.88 │ 9.70 │ 1.02x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 7.47 │ 7.23 │ 1.03x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 6.15 │ 6.46 │ 0.95x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 6.15 │ 6.27 │ 0.98x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 21.46 │ 21.53 │ 1.00x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 21.22 │ 21.19 │ 1.00x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 90.60 │ 90.48 │ 1.00x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 90.39 │ 90.56 │ 1.00x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 90.44 │ 90.63 │ 1.00x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 78.95 │ 78.74 │ 1.00x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 78.83 │ 78.72 │ 1.00x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 78.90 │ 78.78 │ 1.00x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 25.43 │ 25.31 │ 1.00x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 25.54 │ 25.42 │ 1.00x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 25.36 │ 25.41 │ 1.00x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 23.41 │ 23.26 │ 1.01x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 23.18 │ 23.17 │ 1.00x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 23.08 │ 23.47 │ 0.98x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 41.48 │ 41.54 │ 1.00x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 41.63 │ 41.39 │ 1.01x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 68.43 │ 68.43 │ 1.00x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 68.46 │ 68.50 │ 1.00x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 5.87 │ 5.78 │ 1.02x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 5.59 │ 5.72 │ 0.98x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 7.22 │ 7.24 │ 1.00x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 7.25 │ 7.18 │ 1.01x │ │ ╞══════════════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘══════════════════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Elapsed time [s] - lower is better╒══════════════════════════════════════╤════╤════╤══════════════════╤══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1:cmark │ 1 │ 1 │ 90.18 │ 90.94 │ 0.99x │ │ │ BlackParrot:1x1:dhry │ 1 │ 1 │ 90.45 │ 92.06 │ 0.98x │ │ │ BlackParrot:2x2:cmark │ 1 │ 1 │ 70.63 │ 71.07 │ 0.99x │ │ │ BlackParrot:2x2:dhry │ 1 │ 1 │ 70.41 │ 69.90 │ 1.01x │ │ │ BlackParrot:4x4:cmark │ 1 │ 1 │ 464.57 │ 459.49 │ 1.01x │ │ │ BlackParrot:4x4:dhry │ 1 │ 1 │ 117.80 │ 116.65 │ 1.01x │ │ │ Caliptra:default:hmac │ 1 │ 1 │ 58.31 │ 59.72 │ 0.98x │ │ │ Caliptra:default:mlkem │ 1 │ 1 │ 208.12 │ 207.65 │ 1.00x │ │ │ Caliptra:default:sha3 │ 1 │ 1 │ 64.93 │ 65.41 │ 0.99x │ │ │ Caliptra:default:trng │ 1 │ 1 │ 87.22 │ 96.87 │ 0.90x │ │ │ NVDLA:default:anet │ 1 │ 1 │ 248.72 │ 253.86 │ 0.98x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 93.08 │ 93.11 │ 1.00x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 74.23 │ 74.81 │ 0.99x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 112.26 │ 113.01 │ 0.99x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 112.99 │ 114.01 │ 0.99x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 65.37 │ 69.14 │ 0.95x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 65.36 │ 71.59 │ 0.91x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 64.29 │ 69.93 │ 0.92x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 62.22 │ 62.01 │ 1.00x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 61.39 │ 61.70 │ 0.99x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 62.36 │ 62.36 │ 1.00x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 64.20 │ 61.82 │ 1.04x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 57.75 │ 58.96 │ 0.98x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 55.21 │ 53.99 │ 1.02x │ │ │ OpenTitan:default:aes │ 1 │ 1 │ 185.48 │ 148.35 │ 1.25x │ │ │ OpenTitan:default:cmark │ 1 │ 1 │ 129.04 │ 104.25 │ 1.24x │ │ │ OpenTitan:default:rsa │ 1 │ 1 │ 187.27 │ 152.21 │ 1.23x │ │ │ OpenTitan:default:sha │ 1 │ 1 │ 183.41 │ 143.67 │ 1.28x │ │ │ VeeR-EH1:asic:cmark │ 1 │ 1 │ 105.36 │ 106.47 │ 0.99x │ │ │ VeeR-EH1:asic:cmark_iccm │ 1 │ 1 │ 102.87 │ 103.44 │ 0.99x │ │ │ VeeR-EH1:asic:dhry │ 1 │ 1 │ 103.74 │ 105.16 │ 0.99x │ │ │ VeeR-EH1:default:cmark │ 1 │ 1 │ 119.88 │ 119.75 │ 1.00x │ │ │ VeeR-EH1:default:cmark_iccm │ 1 │ 1 │ 122.51 │ 121.92 │ 1.00x │ │ │ VeeR-EH1:default:dhry │ 1 │ 1 │ 121.58 │ 123.86 │ 0.98x │ │ │ VeeR-EH1:hiperf:cmark │ 1 │ 1 │ 90.93 │ 82.34 │ 1.10x │ │ │ VeeR-EH1:hiperf:cmark_iccm │ 1 │ 1 │ 86.10 │ 76.23 │ 1.13x │ │ │ VeeR-EH1:hiperf:dhry │ 1 │ 1 │ 80.61 │ 84.00 │ 0.96x │ │ │ VeeR-EH2:asic:cmark │ 1 │ 1 │ 98.13 │ 95.57 │ 1.03x │ │ │ VeeR-EH2:asic:cmark_iccm │ 1 │ 1 │ 65.22 │ 63.70 │ 1.02x │ │ │ VeeR-EH2:asic:cmark_iccm_mt │ 1 │ 1 │ 100.05 │ 97.23 │ 1.03x │ │ │ VeeR-EH2:asic:cmark_mt │ 1 │ 1 │ 115.70 │ 114.67 │ 1.01x │ │ │ VeeR-EH2:asic:dhry │ 1 │ 1 │ 68.00 │ 67.91 │ 1.00x │ │ │ VeeR-EH2:asic:dhry_mt │ 1 │ 1 │ 72.36 │ 71.81 │ 1.01x │ │ │ VeeR-EH2:default:cmark │ 1 │ 1 │ 55.01 │ 55.65 │ 0.99x │ │ │ VeeR-EH2:default:cmark_iccm │ 1 │ 1 │ 54.09 │ 55.00 │ 0.98x │ │ │ VeeR-EH2:default:cmark_iccm_mt │ 1 │ 1 │ 55.66 │ 57.14 │ 0.97x │ │ │ VeeR-EH2:default:cmark_mt │ 1 │ 1 │ 65.08 │ 66.37 │ 0.98x │ │ │ VeeR-EH2:default:dhry │ 1 │ 1 │ 57.08 │ 55.83 │ 1.02x │ │ │ VeeR-EH2:default:dhry_mt │ 1 │ 1 │ 62.16 │ 62.90 │ 0.99x │ │ │ VeeR-EH2:hiperf:cmark │ 1 │ 1 │ 49.12 │ 40.16 │ 1.22x │ │ │ VeeR-EH2:hiperf:cmark_iccm │ 1 │ 1 │ 52.83 │ 42.65 │ 1.24x │ │ │ VeeR-EH2:hiperf:cmark_iccm_mt │ 1 │ 1 │ 63.84 │ 53.19 │ 1.20x │ │ │ VeeR-EH2:hiperf:cmark_mt │ 1 │ 1 │ 57.00 │ 46.39 │ 1.23x │ │ │ VeeR-EH2:hiperf:dhry │ 1 │ 1 │ 51.97 │ 40.02 │ 1.30x │ │ │ VeeR-EH2:hiperf:dhry_mt │ 1 │ 1 │ 56.81 │ 43.34 │ 1.31x │ │ │ VeeR-EL2:asic:cmark │ 1 │ 1 │ 68.06 │ 66.69 │ 1.02x │ │ │ VeeR-EL2:asic:cmark_iccm │ 1 │ 1 │ 68.50 │ 67.98 │ 1.01x │ │ │ VeeR-EL2:asic:dhry │ 1 │ 1 │ 66.86 │ 63.96 │ 1.05x │ │ │ VeeR-EL2:default:cmark │ 1 │ 1 │ 80.38 │ 77.36 │ 1.04x │ │ │ VeeR-EL2:default:cmark_iccm │ 1 │ 1 │ 86.98 │ 85.69 │ 1.02x │ │ │ VeeR-EL2:default:dhry │ 1 │ 1 │ 83.58 │ 82.93 │ 1.01x │ │ │ VeeR-EL2:hiperf:cmark │ 1 │ 1 │ 70.63 │ 72.90 │ 0.97x │ │ │ VeeR-EL2:hiperf:cmark_iccm │ 1 │ 1 │ 71.88 │ 75.52 │ 0.95x │ │ │ VeeR-EL2:hiperf:dhry │ 1 │ 1 │ 76.55 │ 77.79 │ 0.98x │ │ │ Vortex:mini:saxpy │ 1 │ 1 │ 42.63 │ 41.89 │ 1.02x │ │ │ Vortex:mini:sgemm │ 1 │ 1 │ 44.68 │ 44.93 │ 0.99x │ │ │ Vortex:sane:saxpy │ 1 │ 1 │ 26.54 │ 25.92 │ 1.02x │ │ │ Vortex:sane:sgemm │ 1 │ 1 │ 25.75 │ 25.62 │ 1.01x │ │ │ XiangShan:default-chisel3:cmark │ 1 │ 1 │ 127.70 │ 120.73 │ 1.06x │ │ │ XiangShan:default-chisel3:dhry │ 1 │ 1 │ 95.25 │ 88.15 │ 1.08x │ │ │ XiangShan:default-chisel3:microbench │ 1 │ 1 │ 161.34 │ 145.39 │ 1.11x │ │ │ XiangShan:default-chisel6:cmark │ 1 │ 1 │ 127.72 │ 123.91 │ 1.03x │ │ │ XiangShan:default-chisel6:dhry │ 1 │ 1 │ 96.94 │ 94.53 │ 1.03x │ │ │ XiangShan:default-chisel6:microbench │ 1 │ 1 │ 164.50 │ 151.63 │ 1.08x │ │ │ XiangShan:mini-chisel3:cmark │ 1 │ 1 │ 62.57 │ 63.85 │ 0.98x │ │ │ XiangShan:mini-chisel3:dhry │ 1 │ 1 │ 71.67 │ 71.75 │ 1.00x │ │ │ XiangShan:mini-chisel3:microbench │ 1 │ 1 │ 74.51 │ 73.13 │ 1.02x │ │ │ XiangShan:mini-chisel6:cmark │ 1 │ 1 │ 68.09 │ 68.78 │ 0.99x │ │ │ XiangShan:mini-chisel6:dhry │ 1 │ 1 │ 77.79 │ 77.59 │ 1.00x │ │ │ XiangShan:mini-chisel6:microbench │ 1 │ 1 │ 79.96 │ 79.96 │ 1.00x │ │ │ XuanTie-C906:default:cmark │ 1 │ 1 │ 63.77 │ 65.83 │ 0.97x │ │ │ XuanTie-C906:default:memcpy │ 1 │ 1 │ 66.13 │ 65.64 │ 1.01x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 57.09 │ 56.51 │ 1.01x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 63.85 │ 63.71 │ 1.00x │ │ │ XuanTie-E902:default:cmark │ 1 │ 1 │ 178.46 │ 170.37 │ 1.05x │ │ │ XuanTie-E902:default:memcpy │ 1 │ 1 │ 197.41 │ 189.84 │ 1.04x │ │ │ XuanTie-E906:default:cmark │ 1 │ 1 │ 151.31 │ 152.44 │ 0.99x │ │ │ XuanTie-E906:default:memcpy │ 1 │ 1 │ 156.94 │ 156.27 │ 1.00x │ │ ╞══════════════════════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.03x │ │ ╘══════════════════════════════════════╧════╧════╧══════════════════╧══════════════════╧════════════╧═════════╛ gcc --hierarchicalverilate - Elapsed time [s] - lower is better╒══════════════════════╤════╤════╤══════════════════╤══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 22.86 │ 22.25 │ 1.03x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 34.71 │ 34.63 │ 1.00x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 82.84 │ 79.75 │ 1.04x │ │ │ NVDLA:default │ 1 │ 1 │ 179.89 │ 173.96 │ 1.03x │ │ │ OpenPiton:16x16 │ 1 │ 1 │ 40.30 │ 40.99 │ 0.98x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 9.09 │ 9.30 │ 0.98x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 8.52 │ 9.21 │ 0.93x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 11.26 │ 10.71 │ 1.05x │ │ │ OpenPiton:8x8 │ 1 │ 1 │ 15.34 │ 16.15 │ 0.95x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 45.04 │ 42.36 │ 1.06x │ │ ╞══════════════════════╪════╪════╪══════════════════╪══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘══════════════════════╧════╧════╧══════════════════╧══════════════════╧════════════╧═════════╛ verilate - Peak memory [MB] - lower is better╒══════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞══════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ BlackParrot:1x1 │ 1 │ 1 │ 461.37 │ 460.08 │ 1.00x │ │ │ BlackParrot:2x2 │ 1 │ 1 │ 792.50 │ 791.72 │ 1.00x │ │ │ BlackParrot:4x4 │ 1 │ 1 │ 2536.63 │ 2535.74 │ 1.00x │ │ │ NVDLA:default │ 1 │ 1 │ 2816.30 │ 2814.48 │ 1.00x │ │ │ OpenPiton:16x16 │ 1 │ 1 │ 3613.54 │ 3608.92 │ 1.00x │ │ │ OpenPiton:1x1 │ 1 │ 1 │ 291.60 │ 292.36 │ 1.00x │ │ │ OpenPiton:2x2 │ 1 │ 1 │ 293.23 │ 294.05 │ 1.00x │ │ │ OpenPiton:4x4 │ 1 │ 1 │ 403.42 │ 401.30 │ 1.01x │ │ │ OpenPiton:8x8 │ 1 │ 1 │ 1028.19 │ 1028.28 │ 1.00x │ │ │ XuanTie-C910:default │ 1 │ 1 │ 1415.66 │ 1419.83 │ 1.00x │ │ ╞══════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘══════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Sim speed [kHz] - higher is better╒═════════════════════════════╤════╤════╤═════════════════╤═════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (B/A) │ p-value │ ╞═════════════════════════════╪════╪════╪═════════════════╪═════════════════╪════════════╪═════════╡ │ NVDLA:default:anet │ 1 │ 1 │ 0.49 │ 0.50 │ 1.02x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 0.66 │ 0.67 │ 1.01x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 0.53 │ 0.53 │ 1.01x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 0.76 │ 0.77 │ 1.00x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 0.76 │ 0.76 │ 1.00x │ │ │ OpenPiton:16x16:dhry │ 1 │ 1 │ 0.09 │ 0.09 │ 1.00x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 14.63 │ 14.63 │ 1.00x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 15.82 │ 15.87 │ 1.00x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 15.93 │ 15.89 │ 1.00x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 6.13 │ 4.80 │ 0.78x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 6.51 │ 5.17 │ 0.79x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 6.55 │ 5.13 │ 0.78x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 1.57 │ 1.56 │ 0.99x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 1.48 │ 1.49 │ 1.01x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 1.44 │ 1.44 │ 1.00x │ │ │ OpenPiton:8x8:dhry │ 1 │ 1 │ 0.37 │ 0.36 │ 0.99x │ │ │ OpenPiton:8x8:fib │ 1 │ 1 │ 0.35 │ 0.35 │ 1.00x │ │ │ OpenPiton:8x8:token │ 1 │ 1 │ 0.36 │ 0.35 │ 1.00x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 1.68 │ 1.70 │ 1.01x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 1.67 │ 1.70 │ 1.02x │ │ ╞═════════════════════════════╪════╪════╪═════════════════╪═════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 0.97x │ │ ╘═════════════════════════════╧════╧════╧═════════════════╧═════════════════╧════════════╧═════════╛ execute - Peak memory [MB] - lower is better╒═════════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ NVDLA:default:anet │ 1 │ 1 │ 1216.38 │ 1216.46 │ 1.00x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 1216.49 │ 1216.42 │ 1.00x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 1216.37 │ 1216.36 │ 1.00x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 1216.30 │ 1216.36 │ 1.00x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 1216.28 │ 1216.39 │ 1.00x │ │ │ OpenPiton:16x16:dhry │ 1 │ 1 │ 150.65 │ 150.65 │ 1.00x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 7.51 │ 7.48 │ 1.00x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 7.53 │ 7.50 │ 1.00x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 7.47 │ 7.44 │ 1.00x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 8.22 │ 8.10 │ 1.01x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 9.18 │ 9.12 │ 1.01x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 8.18 │ 8.12 │ 1.01x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 13.99 │ 14.06 │ 1.00x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 15.04 │ 15.06 │ 1.00x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 14.00 │ 13.98 │ 1.00x │ │ │ OpenPiton:8x8:dhry │ 1 │ 1 │ 38.50 │ 38.40 │ 1.00x │ │ │ OpenPiton:8x8:fib │ 1 │ 1 │ 39.49 │ 39.53 │ 1.00x │ │ │ OpenPiton:8x8:token │ 1 │ 1 │ 38.51 │ 38.50 │ 1.00x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 53.62 │ 53.56 │ 1.00x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 53.59 │ 53.56 │ 1.00x │ │ ╞═════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 1.00x │ │ ╘═════════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ execute - Elapsed time [s] - lower is better╒═════════════════════════════╤════╤════╤═══════════════════╤═══════════════════╤════════════╤═════════╕ │ Case │ #A │ #B │ Mean A │ Mean B │ Gain (A/B) │ p-value │ ╞═════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ NVDLA:default:anet │ 1 │ 1 │ 324.72 │ 318.66 │ 1.02x │ │ │ NVDLA:default:conv │ 1 │ 1 │ 103.32 │ 102.75 │ 1.01x │ │ │ NVDLA:default:gnet │ 1 │ 1 │ 92.08 │ 90.86 │ 1.01x │ │ │ NVDLA:default:pool │ 1 │ 1 │ 106.97 │ 106.61 │ 1.00x │ │ │ NVDLA:default:relu │ 1 │ 1 │ 106.07 │ 106.02 │ 1.00x │ │ │ OpenPiton:16x16:dhry │ 1 │ 1 │ 1663.97 │ 1656.82 │ 1.00x │ │ │ OpenPiton:1x1:dhry │ 1 │ 1 │ 109.99 │ 109.97 │ 1.00x │ │ │ OpenPiton:1x1:fib │ 1 │ 1 │ 107.73 │ 107.37 │ 1.00x │ │ │ OpenPiton:1x1:token │ 1 │ 1 │ 106.09 │ 106.36 │ 1.00x │ │ │ OpenPiton:2x2:dhry │ 1 │ 1 │ 73.14 │ 93.50 │ 0.78x │ │ │ OpenPiton:2x2:fib │ 1 │ 1 │ 72.23 │ 90.93 │ 0.79x │ │ │ OpenPiton:2x2:token │ 1 │ 1 │ 73.34 │ 93.52 │ 0.78x │ │ │ OpenPiton:4x4:dhry │ 1 │ 1 │ 71.21 │ 71.67 │ 0.99x │ │ │ OpenPiton:4x4:fib │ 1 │ 1 │ 67.64 │ 67.22 │ 1.01x │ │ │ OpenPiton:4x4:token │ 1 │ 1 │ 68.09 │ 68.27 │ 1.00x │ │ │ OpenPiton:8x8:dhry │ 1 │ 1 │ 164.05 │ 165.44 │ 0.99x │ │ │ OpenPiton:8x8:fib │ 1 │ 1 │ 122.79 │ 122.40 │ 1.00x │ │ │ OpenPiton:8x8:token │ 1 │ 1 │ 382.08 │ 383.93 │ 1.00x │ │ │ XuanTie-C910:default:cmark │ 1 │ 1 │ 119.81 │ 118.26 │ 1.01x │ │ │ XuanTie-C910:default:memcpy │ 1 │ 1 │ 139.18 │ 137.05 │ 1.02x │ │ ╞═════════════════════════════╪════╪════╪═══════════════════╪═══════════════════╪════════════╪═════════╡ │ Geometric mean │ │ │ │ │ 0.97x │ │ ╘═════════════════════════════╧════╧════╧═══════════════════╧═══════════════════╧════════════╧═════════╛ |
Fixes #5485
The fix modifies FlagUnique to use shared flag/value variables for whole-variable updates. Now when multiple NBAs execute in the same time step, each overwrites the previous value, and only the last executed value is committed at NBA region.
Changes:
prepareSchemeFlagUniqueto create shared__VdlySet__and__VdlyVal__variablesconvertSchemeFlagUniqueto distinguish whole-variable updates from partial updatest_timing_nba_3.vto match test case in Fix non-blocking assignments at end of always block #5485