# ivb-test manifest # # ${VAR} is expanded from the environment; `nix develop` exports all of them. # Override any of them on the command line to test a different tree. [config] mesa_build = "${MESA_BUILD}" clvk_build = "${CLVK_BUILD}" vk_driver_files = "${MESA_BUILD}/src/intel/vulkan_hasvk/intel_hasvk13_devenv_icd.x86_64.json" icd_vendors = "${OCL_ICD_VENDORS}" rusticl_enable = "crocus" cts_dir = "${CTS_DIR}" cts_cmd = "./deqp-vk --deqp-case={filter} --deqp-log-filename={log} --deqp-surface-type=fbo" cts_timeout = 3600 vulkan_device = "vk:0" asset_width = 640 asset_height = 480 asset_frames = 488 # Low-level capture profiles. INTEL_DEBUG flag names differ between mesa # versions — check yours if a profile comes back empty. [capture.bat] desc = "batchbuffer dump" env = { INTEL_DEBUG = "bat" } [capture.submit] desc = "batch submit + sync + stall" env = { INTEL_DEBUG = "submit,sync,stall" } [capture.shaders] desc = "shader disassembly (VS/FS/CS)" env = { INTEL_DEBUG = "vs,fs,cs" } [capture.aub] desc = "AUB dump" wrapper = "intel_dump_gpu -o {out}/dump.aub" [capture.validate] desc = "Vulkan validation layer" env = { VK_INSTANCE_LAYERS = "VK_LAYER_KHRONOS_validation", MESA_VK_ABORT_ON_DEVICE_LOSS = "1" } [capture.nocache] desc = "disable the shader cache" env = { MESA_SHADER_CACHE_DISABLE = "1" } # ------------------------------------------------------------ vulkan (CTS) [[test]] name = "conditional_rendering" group = "vulkan-ext" touched = "anv_conditional_rendering.c — genX_conditional_rendering()" kind = "cts" filter = "dEQP-VK.conditional_rendering.*" [[test]] name = "host_image_copy_linear" group = "vulkan-ext" touched = "anv_host_image_copy.c — isl linear_to_tiled / bounce buffer" kind = "cts" filter = "dEQP-VK.image.host_image_copy.simple.*.linear.*" [[test]] name = "host_image_copy_optimal" group = "vulkan-ext" touched = "anv_host_image_copy.c — isl tiled_to_tiled / bounce buffer" kind = "cts" filter = "dEQP-VK.image.host_image_copy.simple.*.optimal.*" [[test]] name = "border_color_swizzle" group = "vulkan-ext" touched = "anv_sampler.c — border color swizzle" kind = "cts" filter = "dEQP-VK.pipeline.monolithic.sampler.border_swizzle.r8g8b8a8_unorm.*.custom.no_gather.*" [[test]] name = "map_memory2" group = "vulkan-ext" touched = "anv_memory.c — genX_map_memory2()" kind = "cts" filter = "dEQP-VK.memory.mapping.*" [[test]] name = "load_store_op_none" group = "vulkan-ext" touched = "anv_render_pass.c — genX_load_store_op_none()" kind = "cts" filter = "dEQP-VK.renderpasses.*.load_store_op_none.*" [[test]] name = "feature_structs" group = "vulkan-ext" touched = "anv_api_info.c — genX_get_physical_device_properties2()" kind = "cts" filter = "dEQP-VK.api.info.get_physical_device_properties2.features.*" [[test]] name = "line_stipple" group = "vulkan-ext" touched = "3DSTATE_WM LineStippleEnable (Gen7)" kind = "cts" filter = "dEQP-VK.pipeline.monolithic.extended_dynamic_state.*.line_stipple_*" [[test]] name = "line_rasterization" group = "vulkan-ext" touched = "3DSTATE_SF / line rendering rules (Gen7)" kind = "cts" filter = "dEQP-VK.rasterization.primitives.*lines*" # ------------------------------------------------------------------- video [[test]] name = "h264_decode" group = "video" touched = "anv_video_decode.c + vme_kernels.h — VME dispatch, binding table, IDRT" kind = "video" op = "decode" [[test]] name = "h264_encode" group = "video" touched = "anv_video_encode.c + vme_kernels.h — VME dispatch, binding table, IDRT" kind = "video" op = "encode" min_psnr = 38.0 [[test]] name = "h264_roundtrip" group = "video" touched = "anv_video_encode.c + anv_video_decode.c — encode then decode back" kind = "video" op = "roundtrip" min_psnr = 36.0 # ------------------------------------------------------------------ opencl [[test]] name = "opencl_parity" group = "opencl" touched = "rusticl (crocus) vs clvk (hasvk) vs pocl (cpu reference)" kind = "opencl" backends = ["rusticl", "clvk", "pocl"] [[test]] name = "cl_workgroup_limits" group = "opencl" touched = "crocus compute limits — max workgroup size" kind = "cmd" cwd = "opencl_tests/16x16" build = "gcc -O2 wg_size_probe.c -o {out}/probe -lOpenCL" cmd = "{out}/probe" [[test]] name = "cl_image_formats" group = "opencl" touched = "crocus supported image formats" kind = "cmd" cwd = "opencl_tests/16x16" build = "gcc -O2 cl_image_format_probe.c -o {out}/probe -lOpenCL" cmd = "{out}/probe" [[test]] name = "cl_atomics" group = "opencl" touched = "crocus atomic ops across multiple workgroups" kind = "cmd" cwd = "opencl_tests/atomic" build = "gcc -O2 multi_atomic_test.c -o {out}/probe -lOpenCL" cmd = "{out}/probe" [[test]] name = "enc_standalone_i" group = "video" touched = "anv_video_mfc.c — I frame PAK objects, intra DC prediction" kind = "cmd" cwd = "encode" build = "gcc -O1 -g hasvk_encode_test.c -o {out}/enctest -lvulkan" cmd = "{out}/enctest" match = "frame 0 \\(I\\): bytesWritten=[1-9]" [[test]] name = "enc_standalone_ip" group = "video" touched = "anv_video_mfc.c — P_Skip path, DPB slot 0/1, reference picture address" kind = "cmd" cwd = "encode" build = "gcc -O1 -g hasvk_encode_test.c -o {out}/enctest -lvulkan" cmd = "env HASVK_ENC_PFRAME=1 {out}/enctest" match = "frame 1 \\(P\\): bytesWritten=[1-9]"