// AVX512 Support
///////////////////////////////////////////////////////////////////////////////
-#define ENABLE_AVX512_SIMD16 0
-#define USE_8x2_TILE_BACKEND 0
-#define USE_SIMD16_FRONTEND 0
+#define ENABLE_AVX512_SIMD16 1
+#define USE_8x2_TILE_BACKEND 1
+#define USE_SIMD16_FRONTEND 1
+#define USE_SIMD16_SHADERS 1 // requires USE_SIMD16_FRONTEND
+#define USE_SIMD16_VS 1 // requires USE_SIMD16_SHADERS
///////////////////////////////////////////////////////////////////////////////
// Architecture validation
#define KNOB_SIMD_WIDTH 8
#define KNOB_SIMD_BYTES 32
#elif (KNOB_ARCH == KNOB_ARCH_AVX512)
-#if 0
-// not ready to enable this globally, enabled on the side (below)
#define KNOB_ARCH_ISA AVX512F
#define KNOB_ARCH_STR "AVX512"
-#define KNOB_SIMD_WIDTH 16
-#define KNOB_SIMD_BYTES 64
-#else
-#define KNOB_ARCH_ISA AVX2
-#define KNOB_ARCH_STR "AVX2"
#define KNOB_SIMD_WIDTH 8
#define KNOB_SIMD_BYTES 32
-#endif
#else
#error "Unknown architecture"
#endif
// Maximum supported number of active vertex buffer streams
#define KNOB_NUM_STREAMS 32
-// Maximum supported number of attributes per vertex
-#define KNOB_NUM_ATTRIBUTES 39
-
// Maximum supported active viewports and scissors
#define KNOB_NUM_VIEWPORTS_SCISSORS 16