#
# f32 <-> s32 <-> s8 <-> u8
#
--dt=f32,s32,s8,u8

--attr=irmode=nearest;oscale=per_oc:0.
--fmt=nchw,nhwc,nChw4c,nChw8c,nChw16c 2x64x3x3
--fmt=oihw,hwio 2x64x3x3
--fmt=goihw,gOIhw16i16o 3x32x32x2x2

--both-dir-fmt=true
--ifmt=nChw8c --ofmt=nChw16c 2x40x3x3  # blocked with tail
--ifmt=nChw4c --ofmt=nChw16c 2x40x3x3  # blocked with tail

--attr=irmode=down;oscale=common:0.
--fmt=ncw,nwc 2x8x8 # special 8x8 kernel
--fmt=nchw,nhwc,nChw4c,nChw8c,nChw16c 2x64x3x3
--fmt=oihw,hwio 2x64x3x3

#
# f32 <-> bf16
#
--reset
--idt=f32
--odt=bf16
--allow-unimpl=true
--fmt=nchw,nChw16c 2x64x3x3
--fmt=nchw,nChw16c 2x65x3x3 # blocked with tail
--fmt=goihw,gOIhw16i16o 2x64x64x7x7
--fmt=goihw,gOIhw16i16o 2x33x33x7x7 # blocked with tail
--fmt=goihw,gIOhw8o16i2o 2x64x64x7x7
--fmt=goihw,gIOhw8o16i2o 2x33x33x7x7 # blocked with tail

#
# f32 <-> s16
#
--reset
--both-dir-dt=true
--idt=f32 --odt=s16

--fmt=nchw,nhwc,nChw8c,nChw16c 2x64x3x3
--fmt=oihw,hwio 2x64x3x3

#
# s8, f32 -> s8 w/ compensations
#
--reset
--alg=bootstrap
--idt=s8,f32
--odt=s8

--ifmt=hwio --ofmt=hwio_s8s8 32x32x3x3
--ifmt=hwigo --ofmt=hwigo_s8s8 2x32x32x3x3
--ifmt=hwio --ofmt=OIhw4i16o4i_s8s8 32x32x3x3
--ifmt=hwigo --ofmt=gOIhw4i16o4i_s8s8 2x32x32x3x3
--ifmt=hwigo --ofmt=gOIhw4o4i_s8s8 2x36x36x3x3
--ifmt=hwigo --ofmt=gOIhw2i8o4i_s8s8 2x40x40x3x3
--ifmt=hwigo --ofmt=Goihw16g_s8s8 512x1x1x3x3
