--reset

--mb=2

# Training
## Forward
--dir=FWD_B,FWD_D
### Direct
--alg=direct
--dt=f32,bf16,f8_e5m2,f8_e4m3,f16
--stag=any,axb
--dtag=any,axb
--attr-post-ops=, \
                sum:0.5, \
                linear:2:1, \
                add:f32, \
                prelu:per_oc, \
                mul:s8:per_oc+sum:0.25+relu:0.5+add:f32:per_tensor
--batch=shapes_basic
### Wino
--alg=wino
--dt=f32
--stag=any
--dtag=any
--batch=shapes_basic
## Backward
--dir=BWD_D,BWD_W,BWD_WB
--attr-post-ops=
### Direct
--alg=direct
--dt=f32,bf16,f16,f8_e5m2,f8_e4m3
--stag=any,axb
--dtag=any,axb
--batch=shapes_basic
### Wino
--alg=wino
--dt=f32
--stag=any
--dtag=any
--batch=shapes_basic

# Inference
--dir=FWD_I
--attr-scales=,src:common:0.25,wei:per_oc,dst:common:2,src:common:0.25+wei:per_oc

## Direct
--alg=direct

### All inference configs
--dt=s8:s8:f32,s8:s8:bf16,s8:s8:f16,s8:s8:s32,s8:s8:s8,s8:s8:u8, \
      u8:s8:f32,u8:s8:bf16,u8:s8:f16,u8:s8:s32,u8:s8:s8,u8:s8:u8
--batch=shapes_basic

### Unsigned input
--dt=u8:s8:s32
--stag=any,axb
--dtag=any,axb
--attr-post-ops=, \
                sum:0.5, \
                linear:2:1, \
                add:f32, \
                sum:0.5:3+add:f32:per_oc+add:f32:per_tensor
--attr-zero-points=
--batch=shapes_basic
--attr-post-ops=
--attr-zero-points=,src:common:2+dst:common:1,src:per_dim_1+dst:per_dim_1
--batch=shapes_basic
### Signed input
--dt=s8:s8:s8
--stag=any
--dtag=any
--attr-post-ops=, \
                sum:0.5:0:u8, \
                linear:2:1, \
                add:f32, \
                sum:0.5:2+add:f32:per_oc+add:f32:per_tensor
--attr-zero-points=
--batch=shapes_basic
--attr-post-ops=
--attr-zero-points=,src:common:2+dst:common:1,src:per_dim_1+dst:per_dim_1
--batch=shapes_basic
# BF32
--reset
--dir=FWD_D,BWD_D
--dt=f32
--stag=any
--dtag=any
--attr-fpmath=bf16
--batch=shapes_basic
