Submission Date: 2026/3/3 9:37:19
Status:
Accepted
Author: Wogikaze
Lines: 12
VSM
gmwrite $lm8v $ly0
gmwrite $lm16v $ly4
gmread $ly0 $lm8v
gmread $ly4 $lm16v
nop
nop
gbfn $lm8v $nowrite
gmwrite $aluf $ly0
gbfn $lm16v $nowrite
gmwrite $aluf $ly4
gbfn $lm0v $nowrite
gmmul $ly $aluf $ln0v
Standard Output
ACCEPTED!! score=12 j=12 m=0 bytes=204
Standard Error
------------------- vsm --------------------
# ======= In(0): ((4:1), (4_PE:1, 2_W:1))@LM0 / Float =======
d set $lm0p0 1 000000003F800000 # values=[0.0, 1.0] / Float @[0,0],[0,1]
d set $lm0p1 1 4000000040400000 # values=[2.0, 3.0] / Float @[0,2],[0,3]
d set $lm0p2 1 4080000040A00000 # values=[4.0, 5.0] / Float @[0,4],[0,5]
d set $lm0p3 1 40C0000040E00000 # values=[6.0, 7.0] / Float @[0,6],[0,7]
d set $lm2p0 1 4100000041100000 # values=[8.0, 9.0] / Float @[1,0],[1,1]
d set $lm2p1 1 4120000041300000 # values=[10.0, 11.0] / Float @[1,2],[1,3]
d set $lm2p2 1 4140000041500000 # values=[12.0, 13.0] / Float @[1,4],[1,5]
d set $lm2p3 1 4160000041700000 # values=[14.0, 15.0] / Float @[1,6],[1,7]
d set $lm4p0 1 4180000041880000 # values=[16.0, 17.0] / Float @[2,0],[2,1]
d set $lm4p1 1 4190000041980000 # values=[18.0, 19.0] / Float @[2,2],[2,3]
d set $lm4p2 1 41A0000041A80000 # values=[20.0, 21.0] / Float @[2,4],[2,5]
d set $lm4p3 1 41B0000041B80000 # values=[22.0, 23.0] / Float @[2,6],[2,7]
d set $lm6p0 1 41C0000041C80000 # values=[24.0, 25.0] / Float @[3,0],[3,1]
d set $lm6p1 1 41D0000041D80000 # values=[26.0, 27.0] / Float @[3,2],[3,3]
d set $lm6p2 1 41E0000041E80000 # values=[28.0, 29.0] / Float @[3,4],[3,5]
d set $lm6p3 1 41F0000041F80000 # values=[30.0, 31.0] / Float @[3,6],[3,7]
# ======= In(1): ((8:1), (4_PE:1, 2_W:1))@LM0 / Float =======
d set $lm8p0 1 42C8000042CA0000 # values=[100.0, 101.0] / Float @[0,0],[0,1]
d set $lm8p1 1 42CC000042CE0000 # values=[102.0, 103.0] / Float @[0,2],[0,3]
d set $lm8p2 1 42D0000042D20000 # values=[104.0, 105.0] / Float @[0,4],[0,5]
d set $lm8p3 1 42D4000042D60000 # values=[106.0, 107.0] / Float @[0,6],[0,7]
d set $lm10p0 1 42D8000042DA0000 # values=[108.0, 109.0] / Float @[1,0],[1,1]
d set $lm10p1 1 42DC000042DE0000 # values=[110.0, 111.0] / Float @[1,2],[1,3]
d set $lm10p2 1 42E0000042E20000 # values=[112.0, 113.0] / Float @[1,4],[1,5]
d set $lm10p3 1 42E4000042E60000 # values=[114.0, 115.0] / Float @[1,6],[1,7]
d set $lm12p0 1 42E8000042EA0000 # values=[116.0, 117.0] / Float @[2,0],[2,1]
d set $lm12p1 1 42EC000042EE0000 # values=[118.0, 119.0] / Float @[2,2],[2,3]
d set $lm12p2 1 42F0000042F20000 # values=[120.0, 121.0] / Float @[2,4],[2,5]
d set $lm12p3 1 42F4000042F60000 # values=[122.0, 123.0] / Float @[2,6],[2,7]
d set $lm14p0 1 42F8000042FA0000 # values=[124.0, 125.0] / Float @[3,0],[3,1]
d set $lm14p1 1 42FC000042FE0000 # values=[126.0, 127.0] / Float @[3,2],[3,3]
d set $lm14p2 1 4300000043010000 # values=[128.0, 129.0] / Float @[3,4],[3,5]
d set $lm14p3 1 4302000043030000 # values=[130.0, 131.0] / Float @[3,6],[3,7]
d set $lm16p0 1 4304000043050000 # values=[132.0, 133.0] / Float @[4,0],[4,1]
d set $lm16p1 1 4306000043070000 # values=[134.0, 135.0] / Float @[4,2],[4,3]
d set $lm16p2 1 4308000043090000 # values=[136.0, 137.0] / Float @[4,4],[4,5]
d set $lm16p3 1 430A0000430B0000 # values=[138.0, 139.0] / Float @[4,6],[4,7]
d set $lm18p0 1 430C0000430D0000 # values=[140.0, 141.0] / Float @[5,0],[5,1]
d set $lm18p1 1 430E0000430F0000 # values=[142.0, 143.0] / Float @[5,2],[5,3]
d set $lm18p2 1 4310000043110000 # values=[144.0, 145.0] / Float @[5,4],[5,5]
d set $lm18p3 1 4312000043130000 # values=[146.0, 147.0] / Float @[5,6],[5,7]
d set $lm20p0 1 4314000043150000 # values=[148.0, 149.0] / Float @[6,0],[6,1]
d set $lm20p1 1 4316000043170000 # values=[150.0, 151.0] / Float @[6,2],[6,3]
d set $lm20p2 1 4318000043190000 # values=[152.0, 153.0] / Float @[6,4],[6,5]
d set $lm20p3 1 431A0000431B0000 # values=[154.0, 155.0] / Float @[6,6],[6,7]
d set $lm22p0 1 431C0000431D0000 # values=[156.0, 157.0] / Float @[7,0],[7,1]
d set $lm22p1 1 431E0000431F0000 # values=[158.0, 159.0] / Float @[7,2],[7,3]
d set $lm22p2 1 4320000043210000 # values=[160.0, 161.0] / Float @[7,4],[7,5]
d set $lm22p3 1 4322000043230000 # values=[162.0, 163.0] / Float @[7,6],[7,7]
gmwrite $lm8v $ly0
gmwrite $lm16v $ly4
gmread $ly0 $lm8v
gmread $ly4 $lm16v
nop
nop
gbfn $lm8v $nowrite
gmwrite $aluf $ly0
gbfn $lm16v $nowrite
gmwrite $aluf $ly4
gbfn $lm0v $nowrite
gmmul $ly $aluf $ln0v
# ======= Out(0): ((4:1), (4_PE:1, 2_W:1))@LM1 / Float =======
d getd $ln0n0c0b0m0p0 1 # expect=[3920.0, 3948.0] / Float @[0,0],[0,1] atol=1e-05
d getd $ln0n0c0b0m0p1 1 # expect=[3976.0, 4004.0] / Float @[0,2],[0,3] atol=1e-05
d getd $ln0n0c0b0m0p2 1 # expect=[4032.0, 4060.0] / Float @[0,4],[0,5] atol=1e-05
d getd $ln0n0c0b0m0p3 1 # expect=[4088.0, 4116.0] / Float @[0,6],[0,7] atol=1e-05
d getd $ln2n0c0b0m0p0 1 # expect=[12112.0, 12204.0] / Float @[1,0],[1,1] atol=1e-05
d getd $ln2n0c0b0m0p1 1 # expect=[12296.0, 12388.0] / Float @[1,2],[1,3] atol=1e-05
d getd $ln2n0c0b0m0p2 1 # expect=[12480.0, 12572.0] / Float @[1,4],[1,5] atol=1e-05
d getd $ln2n0c0b0m0p3 1 # expect=[12664.0, 12756.0] / Float @[1,6],[1,7] atol=1e-05
d getd $ln4n0c0b0m0p0 1 # expect=[20304.0, 20460.0] / Float @[2,0],[2,1] atol=1e-05
d getd $ln4n0c0b0m0p1 1 # expect=[20616.0, 20772.0] / Float @[2,2],[2,3] atol=1e-05
d getd $ln4n0c0b0m0p2 1 # expect=[20928.0, 21084.0] / Float @[2,4],[2,5] atol=1e-05
d getd $ln4n0c0b0m0p3 1 # expect=[21240.0, 21396.0] / Float @[2,6],[2,7] atol=1e-05
d getd $ln6n0c0b0m0p0 1 # expect=[28496.0, 28716.0] / Float @[3,0],[3,1] atol=1e-05
d getd $ln6n0c0b0m0p1 1 # expect=[28936.0, 29156.0] / Float @[3,2],[3,3] atol=1e-05
d getd $ln6n0c0b0m0p2 1 # expect=[29376.0, 29596.0] / Float @[3,4],[3,5] atol=1e-05
d getd $ln6n0c0b0m0p3 1 # expect=[29816.0, 30036.0] / Float @[3,6],[3,7] atol=1e-05
------------------- asm --------------------
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000001000000001000000000000000000001100010000000000000011101111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001010000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000010000000001000000000000000000001100010100000000000011101111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000010010000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000010110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000111000000001000000001000000000000000000001100000000000000000011111111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001010000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000111000000010000000001000000000000000000001100000100000000000011111111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000010010000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000010110000000000000
j 000000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000011111111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
j 000000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000011111111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000001000000001000000000000000000000000000000000000000011111111111111100000011000000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001010000000000000000000000000000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000001110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000000000000000000000001100010000000000000011111011111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000010000000001000000000000000000000000000000000000000011111111111111100000011000000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000010010000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000010110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000000000000000000000001100010100000000000011111011111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000001000000000000000000000000000000000000000011111111111111100000011000000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000110000000000000
j 010000000000000000000000000000000000001010000000000000000000000100000000000000000000000000000000100000000000000000011111000000000101000011011111111000000001000111000000000000000000000000000000000111000000000000000000000000000000001100000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000110
------------------- emu --------------------
DEBUG-LM1(n0c0b0m0p0,0):(4.06199e+26) (0x457500004576c000) #d getd $ln0n0c0b0m0p0 1 # expect=[3920.0, 3948.0] / Float @[0,0],[0,1] atol=1e-05
DEBUG-LM1(n0c0b0m0p1,0):(4.73899e+26) (0x45788000457a4000) #d getd $ln0n0c0b0m0p1 1 # expect=[3976.0, 4004.0] / Float @[0,2],[0,3] atol=1e-05
DEBUG-LM1(n0c0b0m0p2,0):(5.41599e+26) (0x457c0000457dc000) #d getd $ln0n0c0b0m0p2 1 # expect=[4032.0, 4060.0] / Float @[0,4],[0,5] atol=1e-05
DEBUG-LM1(n0c0b0m0p3,0):(6.09299e+26) (0x457f80004580a000) #d getd $ln0n0c0b0m0p3 1 # expect=[4088.0, 4116.0] / Float @[0,6],[0,7] atol=1e-05
DEBUG-LM1(n0c0b0m0p0,2):(2.31742e+30) (0x463d4000463eb000) #d getd $ln2n0c0b0m0p0 1 # expect=[12112.0, 12204.0] / Float @[1,0],[1,1] atol=1e-05
DEBUG-LM1(n0c0b0m0p1,2):(2.55511e+30) (0x4640200046419000) #d getd $ln2n0c0b0m0p1 1 # expect=[12296.0, 12388.0] / Float @[1,2],[1,3] atol=1e-05
DEBUG-LM1(n0c0b0m0p2,2):(3.01067e+30) (0x4643000046447000) #d getd $ln2n0c0b0m0p2 1 # expect=[12480.0, 12572.0] / Float @[1,4],[1,5] atol=1e-05
DEBUG-LM1(n0c0b0m0p3,2):(3.46623e+30) (0x4645e00046475000) #d getd $ln2n0c0b0m0p3 1 # expect=[12664.0, 12756.0] / Float @[1,6],[1,7] atol=1e-05
DEBUG-LM1(n0c0b0m0p0,4):(1.55287e+32) (0x469ea000469fd800) #d getd $ln4n0c0b0m0p0 1 # expect=[20304.0, 20460.0] / Float @[2,0],[2,1] atol=1e-05
DEBUG-LM1(n0c0b0m0p1,4):(1.73034e+32) (0x46a1100046a24800) #d getd $ln4n0c0b0m0p1 1 # expect=[20616.0, 20772.0] / Float @[2,2],[2,3] atol=1e-05
DEBUG-LM1(n0c0b0m0p2,4):(1.97754e+32) (0x46a3800046a4b800) #d getd $ln4n0c0b0m0p2 1 # expect=[20928.0, 21084.0] / Float @[2,4],[2,5] atol=1e-05
DEBUG-LM1(n0c0b0m0p3,4):(2.22473e+32) (0x46a5f00046a72800) #d getd $ln4n0c0b0m0p3 1 # expect=[21240.0, 21396.0] / Float @[2,6],[2,7] atol=1e-05
DEBUG-LM1(n0c0b0m0p0,6):(2.4846e+33) (0x46dea00046e05800) #d getd $ln6n0c0b0m0p0 1 # expect=[28496.0, 28716.0] / Float @[3,0],[3,1] atol=1e-05
DEBUG-LM1(n0c0b0m0p1,6):(2.93081e+33) (0x46e2100046e3c800) #d getd $ln6n0c0b0m0p1 1 # expect=[28936.0, 29156.0] / Float @[3,2],[3,3] atol=1e-05
DEBUG-LM1(n0c0b0m0p2,6):(3.48858e+33) (0x46e5800046e73800) #d getd $ln6n0c0b0m0p2 1 # expect=[29376.0, 29596.0] / Float @[3,4],[3,5] atol=1e-05
DEBUG-LM1(n0c0b0m0p3,6):(4.04634e+33) (0x46e8f00046eaa800) #d getd $ln6n0c0b0m0p3 1 # expect=[29816.0, 30036.0] / Float @[3,6],[3,7] atol=1e-05
------------------- inputs --------------------
[[0, 1, 2, 3, 4, 5, 6, 7],
[8, 9, 10, 11, 12, 13, 14, 15],
[16, 17, 18, 19, 20, 21, 22, 23],
[24, 25, 26, 27, 28, 29, 30, 31]]
[[100, 101, 102, 103, 104, 105, 106, 107],
[108, 109, 110, 111, 112, 113, 114, 115],
[116, 117, 118, 119, 120, 121, 122, 123],
[124, 125, 126, 127, 128, 129, 130, 131],
[132, 133, 134, 135, 136, 137, 138, 139],
[140, 141, 142, 143, 144, 145, 146, 147],
[148, 149, 150, 151, 152, 153, 154, 155],
[156, 157, 158, 159, 160, 161, 162, 163]]
------------------- expect --------------------
[[3920, 3948, 3976, 4004, 4032, 4060, 4088, 4116],
[12112, 12204, 12296, 12388, 12480, 12572, 12664, 12756],
[20304, 20460, 20616, 20772, 20928, 21084, 21240, 21396],
[28496, 28716, 28936, 29156, 29376, 29596, 29816, 30036]]
------------------- actual --------------------
[[3920, 3948, 3976, 4004, 4032, 4060, 4088, 4116],
[12112, 12204, 12296, 12388, 12480, 12572, 12664, 12756],
[20304, 20460, 20616, 20772, 20928, 21084, 21240, 21396],
[28496, 28716, 28936, 29156, 29376, 29596, 29816, 30036]]
------------------- check result --------------------