Created attachment 123892 [details] LD_DEBUG=all vulkancube The vulkan demos give me strange errors / asserts fireburn@axion ~ $ vulkaninfo =========== VULKAN INFO =========== Vulkan API Version: 1.0.13 INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_swapchain.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_threading.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_image.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_object_tracker.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_parameter_validation.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_device_limits.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_core_validation.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /usr/share/vulkan/explicit_layer.d/VkLayer_unique_objects.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /home/fireburn/.local/share/vulkan/implicit_layer.d/steamoverlay_i386.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /home/fireburn/.local/share/vulkan/implicit_layer.d/steamoverlay_x86_64.json, version "1.0.0" INFO: [loader] Code 0 : Found manifest file /etc/vulkan/icd.d/intel_icd.json, version "1.0.0" Instance Extensions and layers: =============================== Instance Extensions count = 4 VK_KHR_surface : extension revision 25 VK_KHR_xcb_surface : extension revision 5 VK_KHR_wayland_surface : extension revision 4 VK_EXT_debug_report : extension revision 2 Instance Layers count = 11 VK_LAYER_LUNARG_swapchain (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_swapchain Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_GOOGLE_threading Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_LUNARG_image (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_image Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_LUNARG_object_tracker (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_object_tracker Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_LUNARG_parameter_validation (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_parameter_validation Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_LUNARG_device_limits (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_device_limits Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_LUNARG_core_validation (LunarG Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_core_validation Extensions count = 1 VK_EXT_debug_report : extension revision 2 VK_LAYER_GOOGLE_unique_objects (Google Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_GOOGLE_unique_objects Extensions count = 0 VK_LAYER_VALVE_steam_overlay_32 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1 VK_LAYER_VALVE_steam_overlay_32 Extensions count = 0 VK_LAYER_VALVE_steam_overlay_64 (Steam Overlay Layer) Vulkan version 1.0.3, layer version 1 VK_LAYER_VALVE_steam_overlay_64 Extensions count = 0 VK_LAYER_LUNARG_standard_validation (LunarG Standard Validation Layer) Vulkan version 1.0.13, layer version 1 VK_LAYER_LUNARG_standard_validation Extensions count = 1 VK_EXT_debug_report : extension revision 2 /var/tmp/portage/media-libs/vulkan-base-9999/work/vulkan-base-9999/demos/vulkaninfo.c:1149: failed with VK_ERROR_INITIALIZATION_FAILED fireburn@axion ~ $ vulkancube vulkancube: /var/tmp/portage/media-libs/vulkan-base-9999/work/vulkan-base-9999/demos/cube.c:2570: demo_init_vk: Assertion `!err && gpu_count > 0' failed. Aborted (core dumped) fireburn@axion ~ $ vulkantri vulkantri: /var/tmp/portage/media-libs/vulkan-base-9999/work/vulkan-base-9999/demos/tri.c:1999: demo_init_vk: Assertion `!err && gpu_count > 0' failed. Aborted (core dumped) The files I have installed for vulkan are: axion vulkan-base # equery f vulkan-base * Searching for vulkan-base ... * Contents of media-libs/vulkan-base-9999: /etc /etc/env.d /etc/env.d/89vulkan /etc/vulkan /etc/vulkan/explicit_layer.d /etc/vulkan/icd.d /etc/vulkan/implicit_layer.d /usr /usr/bin /usr/bin/vulkancube /usr/bin/vulkaninfo /usr/bin/vulkantri /usr/include /usr/include/vulkan /usr/include/vulkan/vk_icd.h /usr/include/vulkan/vk_layer.h /usr/include/vulkan/vk_platform.h /usr/include/vulkan/vk_sdk_platform.h /usr/include/vulkan/vulkan.h /usr/lib64 /usr/lib64/libvulkan.so -> libvulkan.so.1 /usr/lib64/libvulkan.so.1 -> libvulkan.so.1.0.13 /usr/lib64/libvulkan.so.1.0.13 /usr/lib64/vulkan /usr/lib64/vulkan/layers /usr/lib64/vulkan/layers/libVkLayer_core_validation.so /usr/lib64/vulkan/layers/libVkLayer_device_limits.so /usr/lib64/vulkan/layers/libVkLayer_image.so /usr/lib64/vulkan/layers/libVkLayer_object_tracker.so /usr/lib64/vulkan/layers/libVkLayer_parameter_validation.so /usr/lib64/vulkan/layers/libVkLayer_swapchain.so /usr/lib64/vulkan/layers/libVkLayer_threading.so /usr/lib64/vulkan/layers/libVkLayer_unique_objects.so /usr/lib64/vulkan/layers/libVkLayer_utils.so /usr/share /usr/share/doc /usr/share/doc/vulkan-base-9999 /usr/share/doc/vulkan-base-9999/LICENSE.txt.bz2 /usr/share/vulkan /usr/share/vulkan/explicit_layer.d /usr/share/vulkan/explicit_layer.d/VkLayer_core_validation.json /usr/share/vulkan/explicit_layer.d/VkLayer_device_limits.json /usr/share/vulkan/explicit_layer.d/VkLayer_image.json /usr/share/vulkan/explicit_layer.d/VkLayer_object_tracker.json /usr/share/vulkan/explicit_layer.d/VkLayer_parameter_validation.json /usr/share/vulkan/explicit_layer.d/VkLayer_swapchain.json /usr/share/vulkan/explicit_layer.d/VkLayer_threading.json /usr/share/vulkan/explicit_layer.d/VkLayer_unique_objects.json /usr/share/vulkan/icd.d /usr/share/vulkan/implicit_layer.d And these are the files I have installed for mesa: axion vulkan-base # equery f mesa * Searching for mesa ... * Contents of media-libs/mesa-9999: /etc /etc/drirc /etc/env.d /etc/env.d/99mesaxdgomx /etc/vulkan /etc/vulkan/icd.d /etc/vulkan/icd.d/intel_icd.json /usr /usr/include /usr/include/EGL /usr/include/EGL/egl.h /usr/include/EGL/eglext.h /usr/include/EGL/eglextchromium.h /usr/include/EGL/eglmesaext.h /usr/include/EGL/eglplatform.h /usr/include/GL /usr/include/GL/gl.h /usr/include/GL/gl_mangle.h /usr/include/GL/glcorearb.h /usr/include/GL/glext.h /usr/include/GL/glx.h /usr/include/GL/glx_mangle.h /usr/include/GL/glxext.h /usr/include/GL/internal /usr/include/GL/internal/dri_interface.h /usr/include/GL/mesa_glinterop.h /usr/include/GL/osmesa.h /usr/include/GL/wglext.h /usr/include/GLES2 /usr/include/GLES2/gl2.h /usr/include/GLES2/gl2ext.h /usr/include/GLES2/gl2platform.h /usr/include/GLES3 /usr/include/GLES3/gl3.h /usr/include/GLES3/gl31.h /usr/include/GLES3/gl3ext.h /usr/include/GLES3/gl3platform.h /usr/include/KHR /usr/include/KHR/khrplatform.h /usr/include/d3dadapter /usr/include/d3dadapter/d3dadapter9.h /usr/include/d3dadapter/drm.h /usr/include/d3dadapter/present.h /usr/include/gbm.h /usr/include/vulkan /usr/include/vulkan/vk_platform.h /usr/include/vulkan/vulkan.h /usr/include/vulkan/vulkan_intel.h /usr/lib32 /usr/lib32/OpenCL /usr/lib32/OpenCL/vendors /usr/lib32/OpenCL/vendors/mesa /usr/lib32/OpenCL/vendors/mesa/include /usr/lib32/OpenCL/vendors/mesa/include/CL /usr/lib32/OpenCL/vendors/mesa/include/CL/cl.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl.hpp /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_d3d10.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_d3d11.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_dx9_media_sharing.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_egl.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_ext.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_gl.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_gl_ext.h /usr/lib32/OpenCL/vendors/mesa/include/CL/cl_platform.h /usr/lib32/OpenCL/vendors/mesa/include/CL/opencl.h /usr/lib32/OpenCL/vendors/mesa/lib /usr/lib32/OpenCL/vendors/mesa/libOpenCL.so -> libOpenCL.so.1.0.0 /usr/lib32/OpenCL/vendors/mesa/libOpenCL.so.1 -> libOpenCL.so.1.0.0 /usr/lib32/OpenCL/vendors/mesa/libOpenCL.so.1.0.0 /usr/lib32/d3d /usr/lib32/d3d/d3dadapter9.so -> d3dadapter9.so.1.0.0 /usr/lib32/d3d/d3dadapter9.so.1 -> d3dadapter9.so.1.0.0 /usr/lib32/d3d/d3dadapter9.so.1.0.0 /usr/lib32/dri /usr/lib32/dri/.keep_media-libs_mesa-0 /usr/lib32/dri/kms_swrast_dri.so -> ../mesa/kms_swrast_dri.so /usr/lib32/dri/radeonsi_dri.so -> ../mesa/radeonsi_dri.so /usr/lib32/dri/swrastg_dri.so -> ../mesa/swrastg_dri.so /usr/lib32/gallium-pipe /usr/lib32/gallium-pipe/pipe_radeonsi.so /usr/lib32/gallium-pipe/pipe_swrast.so /usr/lib32/libEGL.so -> libEGL.so.1.0.0 /usr/lib32/libEGL.so.1 -> libEGL.so.1.0.0 /usr/lib32/libEGL.so.1.0.0 /usr/lib32/libGL.so -> libGL.so.1.2.0 /usr/lib32/libGL.so.1 -> libGL.so.1.2.0 /usr/lib32/libGL.so.1.2.0 /usr/lib32/libGLESv2.so -> libGLESv2.so.2.0.0 /usr/lib32/libGLESv2.so.2 -> libGLESv2.so.2.0.0 /usr/lib32/libGLESv2.so.2.0.0 /usr/lib32/libgbm.so -> libgbm.so.1.0.0 /usr/lib32/libgbm.so.1 -> libgbm.so.1.0.0 /usr/lib32/libgbm.so.1.0.0 /usr/lib32/libglapi.so -> libglapi.so.0.0.0 /usr/lib32/libglapi.so.0 -> libglapi.so.0.0.0 /usr/lib32/libglapi.so.0.0.0 /usr/lib32/libomxil-bellagio0 /usr/lib32/libomxil-bellagio0/libomx_mesa.so /usr/lib32/libvulkan_intel.so /usr/lib32/libwayland-egl.so -> libwayland-egl.so.1.0.0 /usr/lib32/libwayland-egl.so.1 -> libwayland-egl.so.1.0.0 /usr/lib32/libwayland-egl.so.1.0.0 /usr/lib32/mesa /usr/lib32/mesa/i965_dri.so /usr/lib32/mesa/kms_swrast_dri.so /usr/lib32/mesa/radeonsi_dri.so /usr/lib32/mesa/swrast_dri.so /usr/lib32/mesa/swrastg_dri.so /usr/lib32/pkgconfig /usr/lib32/pkgconfig/d3d.pc /usr/lib32/pkgconfig/dri.pc /usr/lib32/pkgconfig/egl.pc /usr/lib32/pkgconfig/gbm.pc /usr/lib32/pkgconfig/gl.pc /usr/lib32/pkgconfig/glesv2.pc /usr/lib32/pkgconfig/wayland-egl.pc /usr/lib32/va /usr/lib32/va/drivers /usr/lib32/va/drivers/gallium_drv_video.so /usr/lib32/vdpau /usr/lib32/vdpau/libvdpau_radeonsi.so -> libvdpau_radeonsi.so.1.0.0 /usr/lib32/vdpau/libvdpau_radeonsi.so.1 -> libvdpau_radeonsi.so.1.0.0 /usr/lib32/vdpau/libvdpau_radeonsi.so.1.0 -> libvdpau_radeonsi.so.1.0.0 /usr/lib32/vdpau/libvdpau_radeonsi.so.1.0.0 /usr/lib64 /usr/lib64/OpenCL /usr/lib64/OpenCL/vendors /usr/lib64/OpenCL/vendors/mesa /usr/lib64/OpenCL/vendors/mesa/include /usr/lib64/OpenCL/vendors/mesa/include/CL /usr/lib64/OpenCL/vendors/mesa/include/CL/cl.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl.hpp /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_d3d10.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_d3d11.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_dx9_media_sharing.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_egl.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_ext.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_gl.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_gl_ext.h /usr/lib64/OpenCL/vendors/mesa/include/CL/cl_platform.h /usr/lib64/OpenCL/vendors/mesa/include/CL/opencl.h /usr/lib64/OpenCL/vendors/mesa/lib /usr/lib64/OpenCL/vendors/mesa/libOpenCL.so -> libOpenCL.so.1.0.0 /usr/lib64/OpenCL/vendors/mesa/libOpenCL.so.1 -> libOpenCL.so.1.0.0 /usr/lib64/OpenCL/vendors/mesa/libOpenCL.so.1.0.0 /usr/lib64/d3d /usr/lib64/d3d/d3dadapter9.so -> d3dadapter9.so.1.0.0 /usr/lib64/d3d/d3dadapter9.so.1 -> d3dadapter9.so.1.0.0 /usr/lib64/d3d/d3dadapter9.so.1.0.0 /usr/lib64/dri /usr/lib64/dri/.keep_media-libs_mesa-0 /usr/lib64/dri/kms_swrast_dri.so -> ../mesa/kms_swrast_dri.so /usr/lib64/dri/radeonsi_dri.so -> ../mesa/radeonsi_dri.so /usr/lib64/dri/swrastg_dri.so -> ../mesa/swrastg_dri.so /usr/lib64/gallium-pipe /usr/lib64/gallium-pipe/pipe_radeonsi.so /usr/lib64/gallium-pipe/pipe_swrast.so /usr/lib64/libEGL.so -> libEGL.so.1.0.0 /usr/lib64/libEGL.so.1 -> libEGL.so.1.0.0 /usr/lib64/libEGL.so.1.0.0 /usr/lib64/libGL.so -> libGL.so.1.2.0 /usr/lib64/libGL.so.1 -> libGL.so.1.2.0 /usr/lib64/libGL.so.1.2.0 /usr/lib64/libGLESv2.so -> libGLESv2.so.2.0.0 /usr/lib64/libGLESv2.so.2 -> libGLESv2.so.2.0.0 /usr/lib64/libGLESv2.so.2.0.0 /usr/lib64/libgbm.so -> libgbm.so.1.0.0 /usr/lib64/libgbm.so.1 -> libgbm.so.1.0.0 /usr/lib64/libgbm.so.1.0.0 /usr/lib64/libglapi.so -> libglapi.so.0.0.0 /usr/lib64/libglapi.so.0 -> libglapi.so.0.0.0 /usr/lib64/libglapi.so.0.0.0 /usr/lib64/libomxil-bellagio0 /usr/lib64/libomxil-bellagio0/libomx_mesa.so /usr/lib64/libvulkan_intel.so /usr/lib64/libwayland-egl.so -> libwayland-egl.so.1.0.0 /usr/lib64/libwayland-egl.so.1 -> libwayland-egl.so.1.0.0 /usr/lib64/libwayland-egl.so.1.0.0 /usr/lib64/mesa /usr/lib64/mesa/i965_dri.so /usr/lib64/mesa/kms_swrast_dri.so /usr/lib64/mesa/radeonsi_dri.so /usr/lib64/mesa/swrast_dri.so /usr/lib64/mesa/swrastg_dri.so /usr/lib64/pkgconfig /usr/lib64/pkgconfig/d3d.pc /usr/lib64/pkgconfig/dri.pc /usr/lib64/pkgconfig/egl.pc /usr/lib64/pkgconfig/gbm.pc /usr/lib64/pkgconfig/gl.pc /usr/lib64/pkgconfig/glesv2.pc /usr/lib64/pkgconfig/wayland-egl.pc /usr/lib64/va /usr/lib64/va/drivers /usr/lib64/va/drivers/gallium_drv_video.so /usr/lib64/vdpau /usr/lib64/vdpau/libvdpau_radeonsi.so -> libvdpau_radeonsi.so.1.0.0 /usr/lib64/vdpau/libvdpau_radeonsi.so.1 -> libvdpau_radeonsi.so.1.0.0 /usr/lib64/vdpau/libvdpau_radeonsi.so.1.0 -> libvdpau_radeonsi.so.1.0.0 /usr/lib64/vdpau/libvdpau_radeonsi.so.1.0.0 /usr/share /usr/share/doc /usr/share/doc/mesa-9999 /usr/share/doc/mesa-9999/patents.txt.bz2 /usr/share/mesa /usr/share/mesa/eselect-mesa.conf /usr/share/mesa/xdg /usr/share/mesa/xdg/.keep_media-libs_mesa-0 I'm not sure if I have everything needed to make vulkan work or if I've configured something incorrectly - any guidance would be appreciated
Created attachment 123893 [details] LD_DEBUG=all vulkaninfo
Created attachment 123944 [details] vulkaninfo output (no amdgpu) I think this might be related to having a prime system. When I disabled AMDGPU in the kernel (so only one graphics card was available in /dev/dri) I got more information out of vulkaninfo - see attached The other demos still fail: fireburn@axion ~ $ vulkancube /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_device.c:429: FINISHME: Get correct values for VkPhysicalDeviceLimits Failed to load textures fireburn@axion ~ $ vulkantri /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_device.c:429: FINISHME: Get correct values for VkPhysicalDeviceLimits vulkantri: /var/tmp/portage/media-libs/vulkan-base-9999/work/vulkan-base-9999/demos/tri.c:1240: demo_prepare_shader_module: Assertion `!err' failed. Aborted (core dumped) fireburn@axion ~ $
(In reply to Mike Lothian from comment #2) > Created attachment 123944 [details] > vulkaninfo output (no amdgpu) > > I think this might be related to having a prime system. When I disabled > AMDGPU in the kernel (so only one graphics card was available in /dev/dri) I > got more information out of vulkaninfo - see attached Can you try it with the wip/anv-multi-device branch on my freedesktop.org: https://cgit.freedesktop.org/~jekstrand/mesa/ It has a couple of patches that *should* let it work even if there are multiple GPUs in the system.
Created attachment 124086 [details] vulkaninfo output with your patches Seems to work for vulkaninfo
Here's the output of vulkancupe and vulkantri which don't seem to be working fireburn@axion ~/Overlay $ vulkancube /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_device.c:437: FINISHME: Get correct values for VkPhysicalDeviceLimits Failed to load textures fireburn@axion ~/Overlay $ vulkantri /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/intel/vulkan/anv_device.c:437: FINISHME: Get correct values for VkPhysicalDeviceLimits vulkantri: /var/tmp/portage/media-libs/vulkan-base-9999/work/vulkan-base-9999/demos/tri.c:1240: demo_prepare_shader_module: Assertion `!err' failed. Aborted (core dumped)
That almost sounds like it can't find image files / spirv files due to looking in the wrong directory. I know a couple of demos are kind of picky about paths...
I might be building it wrong, should I try running it from the build directory
It worked from the build directory, I would have expected the demos to be self contained however. The Talos Principle doesn't work for me with Vulkan, I'm downloading DOTA2 to test it out next
There's a separate bug for Talos, and Dota2 is working on Gen8+.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.