VXLIB User Guide
Performance Summary

Performance data was obtained on the J721E EVM. EVM warm cycle obtained by profiling the kernel's compute code execution after a cold run of the same code. Please refer to the kernel's documentation for more information about the parameters in the tables shown below.



VXLIB kernels

This section contains tables that depict the expected performance numbers for the VXLIB kernels.

VXLIB_absDiff

Input0
Input1
Output
width
height
strideIn0
strideIn1
StrideOut
EVM Cycles
Cycles/pixel
uint8_t
uint8_t
uint8_t
32
32
32
32
32
112
0.11
uint8_t
uint8_t
uint8_t
64
64
64
64
64
144
0.04
uint8_t
uint8_t
uint8_t
128
128
128
128
128
336
0.02
uint8_t
uint8_t
uint8_t
256
256
256
256
256
1104
0.02
int16_t
int16_t
int16_t
32
32
32
32
32
114
0.11
int16_t
int16_t
int16_t
64
64
64
64
64
210
0.05
int16_t
int16_t
int16_t
128
128
128
128
128
593
0.04
int16_t
int16_t
int16_t
256
256
256
256
256
2131
0.03

VXLIB_accumulateImage

Input
Output
width
height
strideIn0
strideOut
EVM Cycles
Cycles/pixel
uint8_t
uint8_t
128
128
128
128
394
0.02
uint8_t
int16_t
128
128
128
128
717
0.04
int16_t
int16_t
32
32
32
32
120
0.12
uint8_t
uint8_t
64
64
64
64
201
0.05
uint8_t
int16_t
128
128
128
128
695
0.04
int16_t
int16_t
128
128
128
128
691
0.04
uint8_t
uint8_t
128
128
128
128
417
0.03
uint8_t
int16_t
128
128
128
128
701
0.04
int16_t
int16_t
32
32
32
32
130
0.13
uint8_t
int16_t
128
128
128
128
679
0.04
int16_t
int16_t
128
128
128
128
678
0.04

VXLIB_accumulateSquareImage

dTypeIn
dTypeOut
width
height
strideIn0
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
int16_t
128
128
128
128
1197
0.07
uint8_t
int16_t
128
128
128
128
1208
0.07
uint8_t
int16_t
128
128
128
128
1186
0.07
uint8_t
int16_t
128
128
128
128
1204
0.07
uint8_t
int16_t
256
256
256
256
4279
0.07

VXLIB_accumulateWeightImage

dTypeIn
dTypeOut
dTypeAlpha
width
height
strideIn
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
float
256
256
256
256
6341
0.10
uint8_t
uint8_t
float
128
128
128
128
1669
0.10
uint8_t
uint8_t
float
64
64
64
64
476
0.12
uint8_t
uint8_t
float
32
32
32
32
235
0.23

VXLIB_add

dTypeIn0
dTypeIn1
dTypeOut
width
height
strideIn0
strideIn1
strideOut
overFlowPolicy
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Saturate
380
0.02
uint8_t
uint8_t
int16_t
64
64
64
64
64
Saturate
237
0.06
uint8_t
int16_t
int16_t
128
128
128
128
128
Saturate
600
0.04
int16_t
int16_t
int16_t
32
32
32
32
32
Saturate
122
0.12
uint8_t
uint8_t
uint8_t
64
64
64
64
64
Saturate
149
0.04
uint8_t
uint8_t
int16_t
64
64
64
64
64
Saturate
217
0.05
uint8_t
int16_t
int16_t
128
128
128
128
128
Saturate
600
0.04
int16_t
int16_t
int16_t
128
128
128
128
128
Saturate
598
0.04
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Wrap
383
0.02
uint8_t
uint8_t
int16_t
64
64
64
64
64
Wrap
244
0.06
uint8_t
int16_t
int16_t
128
128
128
128
128
Wrap
607
0.04
int16_t
int16_t
int16_t
32
32
32
32
32
Wrap
128
0.13
uint8_t
uint8_t
uint8_t
64
64
64
64
64
Wrap
147
0.04
uint8_t
uint8_t
int16_t
64
64
64
64
64
Wrap
211
0.05
uint8_t
int16_t
int16_t
128
128
128
128
128
Wrap
600
0.04
int16_t
int16_t
int16_t
128
128
128
128
128
Wrap
596
0.04

VXLIB_addSquare

dTypeIn0
dTypeIn1
dTypeOut
width
height
strideIn0
strideIn1
strideOut
shift
EVM Cycles
Cycles/pixel
uint8_t
int16_t
int16_t
128
128
128
128
128
12
1130
0.07
uint8_t
int16_t
int16_t
128
128
128
128
128
13
1154
0.07
uint8_t
int16_t
int16_t
128
128
128
128
128
14
1158
0.07
uint8_t
int16_t
int16_t
128
128
128
128
128
10
1107
0.07
uint8_t
int16_t
int16_t
256
256
256
256
256
12
4227
0.06

VXLIB_addWeight

dTypeIn0
dTypeIn1
dTypeOut
dTypeAlpha
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
uint8_t
float
256
256
256
256
256
6273
0.10
uint8_t
uint8_t
uint8_t
float
128
128
128
128
128
1621
0.10
uint8_t
uint8_t
uint8_t
float
64
64
64
64
64
483
0.12
uint8_t
uint8_t
uint8_t
float
32
32
32
32
32
188
0.18

VXLIB_and

dTypeIn0
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
32
32
32
32
32
157
0.15
uint8_t
64
64
64
64
64
184
0.04
uint8_t
128
128
128
128
128
373
0.02
uint8_t
256
256
256
256
256
1144
0.02

VXLIB_box

dTypeIn
dTypeOut
width
height
filterDim
strideIn
strideOut
padLeft
padRight
padTop
padBottom
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
32
32
3
32
32
0
0
0
0
300
0.29
uint8_t
uint8_t
64
64
3
64
64
0
0
0
0
457
0.11
uint8_t
uint8_t
128
128
3
128
128
0
0
0
0
1406
0.09
uint8_t
uint8_t
256
256
3
256
256
0
0
0
0
4449
0.07
uint8_t
uint8_t
512
512
3
512
512
0
0
0
0
17787
0.07

VXLIB_convertDepth

DatatypeIn
DatatypeOut
Height
Width
Stride
Overflow Policy
EVM Cycles
Cycles/Pixel
uint8_t
int16_t
32
32
32
N/A
138
0.13
uint8_t
int16_t
64
64
64
N/A
258
0.06
uint8_t
int16_t
128
128
128
N/A
644
0.04
uint8_t
int16_t
256
256
256
N/A
2171
0.03
int16_t
uint8_t
32
32
32
Wrap
157
0.15
int16_t
uint8_t
64
64
64
Wrap
234
0.06
int16_t
uint8_t
128
128
128
Wrap
383
0.02
int16_t
uint8_t
256
256
256
Wrap
1152
0.02
int16_t
uint8_t
32
32
32
Saturate
168
0.16
int16_t
uint8_t
64
64
64
Saturate
355
0.09
int16_t
uint8_t
128
128
128
Saturate
888
0.05
int16_t
uint8_t
256
256
256
Saturate
3192
0.05
int16_t
uint8_t
32
32
64
Saturate
177
0.17
int16_t
uint8_t
64
64
128
Saturate
343
0.08
int16_t
uint8_t
128
128
192
Saturate
1650
0.10
int16_t
uint8_t
256
256
320
Saturate
6257
0.10

VXLIB_multiply

dTypeIn0
dTypeIn1
dTypeOut
width
height
strideIn0
strideIn1
strideOut
overFlowPolicy
multiplyMode
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Saturate
1/2^n
626
0.04
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Saturate
1/2^n
2256
0.03
uint8_t
uint8_t
int16_t
128
128
128
128
128
Saturate
1/2^n
1039
0.06
uint8_t
uint8_t
int16_t
256
256
256
256
32
Saturate
1/2^n
3229
0.05
uint8_t
int16_t
int16_t
128
128
128
128
64
Saturate
1/2^n
1801
0.11
uint8_t
int16_t
int16_t
256
256
256
256
64
Saturate
1/2^n
6339
0.1
int16_t
int16_t
int16_t
128
128
128
128
128
Saturate
1/2^n
1708
0.1
int16_t
int16_t
int16_t
256
256
256
256
128
Saturate
1/2^n
6330
0.1
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Saturate
Integer
871
0.05
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Saturate
Integer
3175
0.05
uint8_t
uint8_t
int16_t
128
128
128
128
128
Saturate
Integer
1110
0.07
uint8_t
uint8_t
int16_t
256
256
256
256
32
Saturate
Integer
4182
0.06
uint8_t
int16_t
int16_t
128
128
128
128
64
Saturate
Integer
1664
0.1
uint8_t
int16_t
int16_t
256
256
256
256
64
Saturate
Integer
6272
0.1
int16_t
int16_t
int16_t
128
128
128
128
128
Saturate
Integer
1664
0.1
int16_t
int16_t
int16_t
256
256
256
256
128
Saturate
Integer
6224
0.09
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Saturate
Generic
2911
0.18
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Saturate
Generic
11395
0.17
uint8_t
uint8_t
int16_t
128
128
128
128
128
Saturate
Generic
2193
0.13
uint8_t
uint8_t
int16_t
256
256
256
256
32
Saturate
Generic
8336
0.13
uint8_t
int16_t
int16_t
128
128
128
128
64
Saturate
Generic
2701
0.16
uint8_t
int16_t
int16_t
256
256
256
256
64
Saturate
Generic
10340
0.16
int16_t
int16_t
int16_t
128
128
128
128
128
Saturate
Generic
2654
0.16
int16_t
int16_t
int16_t
256
256
256
256
128
Saturate
Generic
10334
0.16
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Wrap
1/2^n
354
0.02
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Wrap
1/2^n
1114
0.02
uint8_t
uint8_t
int16_t
128
128
128
128
128
Wrap
1/2^n
612
0.04
uint8_t
uint8_t
int16_t
256
256
256
256
32
Wrap
1/2^n
2140
0.03
uint8_t
int16_t
int16_t
128
128
128
128
64
Wrap
1/2^n
1372
0.08
uint8_t
int16_t
int16_t
256
256
256
256
64
Wrap
1/2^n
5203
0.08
int16_t
int16_t
int16_t
128
128
128
128
128
Wrap
1/2^n
1372
0.08
int16_t
int16_t
int16_t
256
256
256
256
128
Wrap
1/2^n
5203
0.08
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Wrap
Integer
872
0.05
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Wrap
Integer
3177
0.05
uint8_t
uint8_t
int16_t
128
128
128
128
128
Wrap
Integer
1161
0.07
uint8_t
uint8_t
int16_t
256
256
256
256
32
Wrap
Integer
4189
0.06
uint8_t
int16_t
int16_t
128
128
128
128
64
Wrap
Integer
1669
0.1
uint8_t
int16_t
int16_t
256
256
256
256
64
Wrap
Integer
6234
0.1
int16_t
int16_t
int16_t
128
128
128
128
128
Wrap
Integer
1627
0.1
int16_t
int16_t
int16_t
256
256
256
256
128
Wrap
Integer
6279
0.1
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Wrap
Generic
2236
0.14
uint8_t
uint8_t
uint8_t
256
256
256
256
64
Wrap
Generic
8567
0.13
uint8_t
uint8_t
int16_t
128
128
128
128
128
Wrap
Generic
2143
0.13
uint8_t
uint8_t
int16_t
256
256
256
256
32
Wrap
Generic
8286
0.13
uint8_t
int16_t
int16_t
128
128
128
128
64
Wrap
Generic
2674
0.16
uint8_t
int16_t
int16_t
256
256
256
256
64
Wrap
Generic
10347
0.16
int16_t
int16_t
int16_t
128
128
128
128
128
Wrap
Generic
2660
0.16
int16_t
int16_t
int16_t
256
256
256
256
128
Wrap
Generic
10337
0.16

VXLIB_xor

dTypeIn
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
32
32
32
32
32
156
0.15
uint8_t
64
64
64
64
64
143
0.03
uint8_t
128
128
128
128
128
335
0.02
uint8_t
256
256
256
256
256
1149
0.02
int8_t
32
32
32
32
32
156
0.15
int8_t
64
64
64
64
64
143
0.03
int8_t
128
128
128
128
128
335
0.02
int8_t
256
256
256
256
256
1103
0.02
uint16_t
32
32
32
32
32
157
0.15
uint16_t
64
64
64
64
64
233
0.06
uint16_t
128
128
128
128
128
594
0.04
uint16_t
256
256
256
256
256
2176
0.03
int16_t
32
32
32
32
32
113
0.11
int16_t
64
64
64
64
64
207
0.05
int16_t
128
128
128
128
128
591
0.04
int16_t
256
256
256
256
256
2127
0.03

VXLIB_thresholdRange

dTypeIn0
dTypeOut
width
height
strideIn0
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
32
32
32
32
112
0.11
uint8_t
uint8_t
64
64
64
64
144
0.04
uint8_t
uint8_t
128
128
128
128
337
0.02
uint8_t
uint8_t
256
256
256
256
1104
0.02
int8_t
int8_t
32
32
32
32
191
0.19
int8_t
int8_t
64
64
64
64
189
0.05
int8_t
int8_t
128
128
128
128
337
0.02
int8_t
int8_t
256
256
256
256
1151
0.02
uint16_t
uint16_t
32
32
32
32
125
0.12
uint16_t
uint16_t
64
64
64
64
216
0.05
uint16_t
uint16_t
128
128
128
128
605
0.04
uint16_t
uint16_t
256
256
256
256
2138
0.03
int16_t
int16_t
32
32
32
32
158
0.15
int16_t
int16_t
64
64
64
64
264
0.06
int16_t
int16_t
128
128
128
128
648
0.04
int16_t
int16_t
256
256
256
256
2184
0.03

VXLIB_subtract

dTypeIn0
dTypeIn1
dTypeOut
width
height
strideIn0
strideIn1
strideOut
overFlowPolicy
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
uint8_t
64
64
64
64
64
Saturate
130
0.03
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Saturate
335
0.02
uint8_t
uint8_t
uint8_t
256
256
256
256
256
Saturate
1103
0.02
uint8_t
uint8_t
int16_t
64
64
64
64
64
Saturate
193
0.05
uint8_t
uint8_t
int16_t
128
128
128
128
128
Saturate
591
0.04
uint8_t
uint8_t
int16_t
256
256
256
256
256
Saturate
2127
0.03
uint8_t
int16_t
int16_t
64
64
64
64
64
Saturate
235
0.06
uint8_t
int16_t
int16_t
128
128
128
128
128
Saturate
636
0.04
uint8_t
int16_t
int16_t
256
256
256
256
256
Saturate
2169
0.03
int16_t
int16_t
int16_t
64
64
64
64
64
Saturate
193
0.05
int16_t
int16_t
int16_t
128
128
128
128
128
Saturate
591
0.04
int16_t
int16_t
int16_t
256
256
256
256
256
Saturate
2127
0.03
uint8_t
uint8_t
uint8_t
64
64
64
64
64
Wrap
130
0.03
uint8_t
uint8_t
uint8_t
128
128
128
128
128
Wrap
322
0.02
uint8_t
uint8_t
uint8_t
256
256
256
256
256
Wrap
1107
0.02
uint8_t
uint8_t
int16_t
64
64
64
64
64
Wrap
194
0.05
uint8_t
uint8_t
int16_t
128
128
128
128
128
Wrap
595
0.04
uint8_t
uint8_t
int16_t
256
256
256
256
256
Wrap
2131
0.03
uint8_t
int16_t
int16_t
64
64
64
64
64
Wrap
236
0.06
uint8_t
int16_t
int16_t
128
128
128
128
128
Wrap
640
0.04
uint8_t
int16_t
int16_t
256
256
256
256
256
Wrap
2173
0.03
int16_t
int16_t
int16_t
64
64
64
64
64
Wrap
194
0.05
int16_t
int16_t
int16_t
128
128
128
128
128
Wrap
595
0.04
int16_t
int16_t
int16_t
256
256
256
256
256
Wrap
2131
0.03

VXLIB_or

dTypeIn
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
32
32
32
32
32
156
0.15
uint8_t
64
64
64
64
64
189
0.05
uint8_t
128
128
128
128
128
381
0.02
uint8_t
256
256
256
256
256
1149
0.02
int8_t
32
32
32
32
32
111
0.11
int8_t
64
64
64
64
64
143
0.03
int8_t
128
128
128
128
128
335
0.02
int8_t
256
256
256
256
256
1103
0.02
uint16_t
32
32
32
32
32
111
0.11
uint16_t
64
64
64
64
64
231
0.06
uint16_t
128
128
128
128
128
594
0.04
uint16_t
256
256
256
256
256
2130
0.03
int16_t
32
32
32
32
32
113
0.11
int16_t
64
64
64
64
64
207
0.05
int16_t
128
128
128
128
128
591
0.04
int16_t
256
256
256
256
256
2127
0.03

VXLIB_not

dTypeIn
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
32
32
32
32
32
109
0.11
uint8_t
64
64
64
64
64
141
0.03
uint8_t
128
128
128
128
128
333
0.02
uint8_t
256
256
256
256
256
1101
0.02
int8_t
32
32
32
32
32
111
0.11
int8_t
64
64
64
64
64
141
0.03
int8_t
128
128
128
128
128
333
0.02
int8_t
256
256
256
256
256
1101
0.02
uint16_t
32
32
32
32
32
121
0.12
uint16_t
64
64
64
64
64
215
0.05
uint16_t
128
128
128
128
128
601
0.04
uint16_t
256
256
256
256
256
2134
0.03
int16_t
32
32
32
32
32
109
0.11
int16_t
64
64
64
64
64
205
0.05
int16_t
128
128
128
128
128
589
0.04
int16_t
256
256
256
256
256
2128
0.03

VXLIB_normL1

dTypeIn
dypeOut
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
int8_t
uint8_t
32
32
32
32
32
99
0.1
int8_t
uint8_t
64
64
64
64
64
145
0.04
int8_t
uint8_t
128
128
128
128
128
337
0.02
int8_t
uint8_t
256
256
256
256
256
1105
0.02
int16_t
uint16_t
32
32
32
32
32
113
0.11
int16_t
uint16_t
64
64
64
64
64
209
0.05
int16_t
uint16_t
128
128
128
128
128
593
0.04
int16_t
uint16_t
256
256
256
256
256
2131
0.03

VXLIB_normL2

dTypeIn
dypeOut
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
int8_t
uint8_t
32
32
32
32
32
488
0.48
int8_t
uint8_t
64
64
64
64
64
1448
0.35
int8_t
uint8_t
128
128
128
128
128
5288
0.32
int8_t
uint8_t
256
256
256
256
256
20654
0.32
int16_t
uint16_t
32
32
32
32
32
494
0.48
int16_t
uint16_t
64
64
64
64
64
1550
0.38
int16_t
uint16_t
128
128
128
128
128
5774
0.35
int16_t
uint16_t
256
256
256
256
256
22670
0.35

VXLIB_minMaxLoc

dType
width
height
Mode
EVM Cycles
Cycles/NumPt
uint8_t
128
128
Min/Max Value
334
0.02
uint8_t
256
256
Min/Max Value
661
0.01
int8_t
128
128
Min/Max Value
335
0.02
int8_t
256
256
Min/Max Value
660
0.01
uint16_t
128
128
Min/Max Value
430
0.03
uint16_t
256
256
Min/Max Value
1157
0.02
int16_t
128
128
Min/Max Value
430
0.03
int16_t
256
256
Min/Max Value
1158
0.02
uint8_t
128
128
Min/Max Value-Count
924
0.06
uint8_t
256
256
Min/Max Value-Count
2823
0.04
int8_t
128
128
Min/Max Value-Count
923
0.06
int8_t
256
256
Min/Max Value-Count
2821
0.04
uint16_t
128
128
Min/Max Value-Count
1582
0.1
uint16_t
256
256
Min/Max Value-Count
5364
0.08
int16_t
128
128
Min/Max Value-Count
1582
0.1
int16_t
256
256
Min/Max Value-Count
5370
0.08
uint8_t
128
128
Min/Max Value-Count-Loc
18397
1.12
uint8_t
256
256
Min/Max Value-Count-Loc
58177
0.89
int8_t
128
128
Min/Max Value-Count-Loc
18400
1.12
int8_t
256
256
Min/Max Value-Count-Loc
58211
0.89
uint16_t
128
128
Min/Max Value-Count-Loc
19019
1.16
uint16_t
256
256
Min/Max Value-Count-Loc
60718
0.93
int16_t
128
128
Min/Max Value-Count-Loc
19099
1.17
int16_t
256
256
Min/Max Value-Count-Loc
60754
0.93

VXLIB_median

dTypeIn
widthIn
heightIn
M
N
widthOut
heightOut
kernelType
EVM Cycles
Cycles/NumPt
uint8_t
128
128
3
3
126
126
0
2093
0.13
uint8_t
256
256
3
3
254
254
0
8205
0.13
int8_t
128
128
3
3
126
126
0
2093
0.13
int8_t
256
256
3
3
254
254
0
8205
0.13
uint16_t
128
128
3
3
126
126
0
4116
0.25
uint16_t
256
256
3
3
254
254
0
16341
0.25
int16_t
128
128
3
3
126
126
0
4109
0.25
int16_t
256
256
3
3
254
254
0
16334
0.25
uint8_t
128
128
4
4
125
125
1
100548
0.4
uint8_t
256
256
4
4
253
253
1
271350
0.26
int8_t
128
128
5
5
124
124
1
172939
0.45
int8_t
256
256
5
5
252
252
1
500810
0.32
uint8_t
128
128
6
6
123
123
1
269645
0.5
uint8_t
256
256
6
6
251
251
1
829512
0.37
int8_t
128
128
7
7
122
122
1
422710
0.58
int8_t
256
256
7
7
250
250
1
1370245
0.45
uint16_t
128
128
4
4
125
125
1
142520
0.57
uint16_t
256
256
4
4
253
253
1
437628
0.43
int16_t
128
128
5
5
124
124
1
255016
0.66
int16_t
256
256
5
5
252
252
1
835436
0.53
uint16_t
128
128
6
6
123
123
1
416180
0.76
uint16_t
256
256
6
6
251
251
1
1446015
0.64
int16_t
128
128
7
7
122
122
1
679028
0.93
int16_t
256
256
7
7
250
250
1
2446645
0.8

VXLIB_convolve

dTypeIn
dTypeFilter
dTypeOut
width
height
strideIn
strideOut
filterWidth
filterHeight
scale
padLeft
padRight
padTop
padBottom
EVM Cycles
Cycles/Pixel
uint8_t
int16_t
uint8_t
32
32
32
32
3
3
4
0
0
0
0
229
0.22
uint8_t
int16_t
uint8_t
64
64
64
64
3
3
4
0
0
0
0
552
0.13
uint8_t
int16_t
uint8_t
128
128
128
128
3
3
4
0
0
0
0
1725
0.11
uint8_t
int16_t
int16_t
32
32
32
64
3
3
4
0
0
0
0
227
0.22
uint8_t
int16_t
int16_t
64
64
64
128
3
3
4
0
0
0
0
576
0.14
uint8_t
int16_t
int16_t
128
128
128
128
3
3
4
0
0
0
0
1725
0.11
uint8_t
int16_t
uint8_t
32
32
32
32
5
5
4
0
0
0
0
453
0.44
uint8_t
int16_t
uint8_t
64
64
64
64
5
5
4
0
0
0
0
1376
0.34
uint8_t
int16_t
uint8_t
128
128
128
128
5
5
4
0
0
0
0
5193
0.32
uint8_t
int16_t
int16_t
32
32
32
32
5
5
4
0
0
0
0
452
0.44
uint8_t
int16_t
int16_t
64
64
64
64
5
5
4
0
0
0
0
1481
0.36
uint8_t
int16_t
int16_t
128
128
128
128
5
5
4
0
0
0
0
5226
0.32
uint8_t
int16_t
uint8_t
32
32
32
32
7
7
5
0
0
0
0
516
0.5
uint8_t
int16_t
uint8_t
64
64
64
64
7
7
5
0
0
0
0
1814
0.44
uint8_t
int16_t
uint8_t
128
128
128
128
7
7
5
0
0
0
0
7105
0.43
uint8_t
int16_t
int16_t
32
32
32
32
7
7
5
0
0
0
0
516
0.5
uint8_t
int16_t
int16_t
64
64
64
64
7
7
5
0
0
0
0
1837
0.45
uint8_t
int16_t
int16_t
128
128
128
128
7
7
5
0
0
0
0
7110
0.43
uint8_t
int16_t
uint8_t
32
32
32
32
9
9
5
0
0
0
0
1100
1.07
uint8_t
int16_t
uint8_t
64
64
64
64
9
9
5
0
0
0
0
4342
1.06
uint8_t
int16_t
uint8_t
128
128
128
128
9
9
5
0
0
0
0
17722
1.08
uint8_t
int16_t
int16_t
32
32
32
32
9
9
5
0
0
0
0
1100
1.07
uint8_t
int16_t
int16_t
64
64
64
64
9
9
5
0
0
0
0
4342
1.06
uint8_t
int16_t
int16_t
128
128
128
128
9
9
5
0
0
0
0
17723
1.08
uint8_t
int16_t
uint8_t
32
32
32
32
8
13
6
0
0
0
0
2518
2.46
uint8_t
int16_t
uint8_t
64
64
64
64
27
33
9
0
0
0
0
58702
14.33
uint8_t
int16_t
uint8_t
128
128
128
128
89
67
12
0
0
0
0
1484925
90.63
uint8_t
int16_t
int16_t
32
32
32
32
8
13
6
0
0
0
0
2507
2.45
uint8_t
int16_t
int16_t
64
64
64
64
27
33
9
0
0
0
0
58561
14.3
uint8_t
int16_t
int16_t
128
128
128
128
89
67
12
0
0
0
0
1484458
90.6

VXLIB_dilate

dTypeIn
dTypeOut
width
height
strideIn
strideOut
filterWidth
filterHeight
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
32
32
32
32
29
12
4088
3.99
uint8_t
uint8_t
64
64
64
64
23
54
7618
1.86
uint8_t
uint8_t
128
128
128
128
13
92
46154
2.82
uint16_t
uint16_t
32
32
32
32
29
12
4140
4.04
uint16_t
uint16_t
64
64
64
64
23
54
15196
3.71
uint16_t
uint16_t
128
128
128
128
13
92
92230
5.63

VXLIB_meanStdDev

dTypeIn
dTypeOut
width
height
strideIn
Loki cycles
EVM Cycles
EVM vs. Loki
Cycles/Pixel
uint8_t
float
32
32
32
363
396
1.09
0.39
uint8_t
float
64
64
64
555
583
1.05
0.14
uint8_t
float
128
128
128
1323
1357
1.03
0.08
uint16_t
float
32
32
32
469
491
1.05
0.48
uint16_t
float
64
64
64
853
895
1.05
0.22
uint16_t
float
128
128
128
2389
2411
1.01
0.15

VXLIB_gaussian

dTypeIn
dTypeOut
width
height
filterDim
strideIn
strideOut
shift
padLeft
padRight
padTop
padBottom
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
64
64
3
64
64
0
0
0
0
0
518
0.13
uint8_t
uint8_t
128
128
3
128
128
0
0
0
0
0
1501
0.09
uint8_t
uint8_t
256
256
3
256
256
0
0
0
0
0
5162
0.08
uint8_t
uint8_t
64
64
5
64
64
8
0
0
0
0
1357
0.33
uint8_t
uint8_t
128
128
5
128
128
8
0
0
0
0
5240
0.32
uint8_t
uint8_t
256
256
5
256
256
8
0
0
0
0
20563
0.31

VXLIB_halfScaleGaussian

dTypeIn
dTypeOut
widthIn
heightIn
widthOut
heightOut
filterDim
strideIn
strideOut
padLeft
padRight
padTop
padBottom
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
64
64
30
30
5
64
30
0
0
0
0
811
0.20
uint8_t
uint8_t
128
128
62
62
5
128
62
0
0
0
0
2733
0.17
uint8_t
uint8_t
256
256
126
126
5
256
126
0
0
0
0
10582
0.16

VXLIB_magnitude

dTypeIn0
dTypeIn1
dTypeOut
width
height
strideIn0
strideIn1
strideOut
EVM Cycles
Cycles/Pixel
int16_t
int16_t
int16_t
32
32
32
32
32
359
0.35
int16_t
int16_t
int16_t
64
64
64
64
64
1016
0.25
int16_t
int16_t
int16_t
128
128
128
128
128
3704
0.23
int16_t
int16_t
int16_t
256
256
256
256
256
14491
0.22

VXLIB_histogram

dTypeIn
dTypeOut
width
height
strideIn
offset
range
numBins
EVM Cycles
Cycles/Pixel
uint8_t
uint32_t
64
64
64
0
256
100
67306
16.43
uint8_t
uint32_t
128
128
128
0
256
100
266645
16.27
uint8_t
uint32_t
256
256
256
0
256
100
1064768
16.25
uint8_t
uint32_t
512
512
512
0
256
100
4257654
16.24

VXLIB_tableLookup

dTypeIn
width
height
strideIn0
strideIn1
strideOut
count
offset
EVM Cycles
Cycles/Pixel
uint8_t
32
32
32
32
32
32
0
528
0.52
uint8_t
64
64
64
64
64
64
0
864
0.21
uint8_t
128
128
128
128
128
128
0
1532
0.09
uint8_t
256
256
256
256
256
256
0
5564
0.08
uint8_t
256
256
256
256
256
256
10
5588
0.09
int8_t
32
32
32
32
32
32
0
562
0.55
int8_t
64
64
64
64
64
64
0
919
0.22
int8_t
128
128
128
128
128
127
0
1578
0.1
int8_t
256
256
256
256
256
127
0
5842
0.09
int8_t
256
256
256
256
256
127
10
5802
0.09
uint16_t
32
32
32
32
32
32
0
573
0.56
uint16_t
64
64
64
64
64
64
0
976
0.24
uint16_t
128
128
128
128
128
128
12
1837
0.11
uint16_t
128
128
128
128
128
128
0
1837
0.11
uint16_t
256
256
256
256
256
512
30
6830
0.1
int16_t
32
32
32
32
32
32
0
608
0.59
int16_t
64
64
64
64
64
64
0
1014
0.25
int16_t
128
128
128
128
128
128
12
1975
0.12
int16_t
128
128
128
128
128
128
0
1975
0.12
int16_t
256
256
256
256
256
512
30
7343
0.11

VXLIB_thresholdBinary

dTypeIn0
dTypeOut
width
height
strideIn0
strideOut
EVM Cycles
Cycles/Pixel
uint8_t
uint8_t
32
32
32
32
113
0.11
uint8_t
uint8_t
64
64
64
64
143
0.03
uint8_t
uint8_t
128
128
128
128
335
0.02
uint8_t
uint8_t
256
256
256
256
1103
0.02
int8_t
int8_t
32
32
32
32
111
0.11
int8_t
int8_t
64
64
64
64
143
0.03
int8_t
int8_t
128
128
128
128
335
0.02
int8_t
int8_t
256
256
256
256
1133
0.02
uint16_t
uint16_t
32
32
32
32
111
0.11
uint16_t
uint16_t
64
64
64
64
207
0.05
uint16_t
uint16_t
128
128
128
128
591
0.04
uint16_t
uint16_t
256
256
256
256
2127
0.03
int16_t
int16_t
32
32
32
32
151
0.15
int16_t
int16_t
64
64
64
64
248
0.06
int16_t
int16_t
128
128
128
128
591
0.04
int16_t
int16_t
256
256
256
256
2127
0.03