Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

Vulkan Headless Linux

Discussion in 'Graphics Experimental Previews' started by piezas, Apr 21, 2017.

  1. piezas

    piezas

    Joined:
    Sep 5, 2013
    Posts:
    3
    Is headless rendering supported in any form under Linux and Vulkan. I'm using driver version Nvidia 378 and 389, both of which support headless rendering without requiring X. However I guessed this was programmed specifically against X. The system has been setup with a displayless X server that works for other Vulkan apps that require X. However, Unity crashes with the included error log:

    It seems as if even though Vulkan is detected correctly, some library calls are picking up a width/height that is 0 and assuming there is no X. I'm hoping that there is a solution to configuring X that is outside of requiring a Unity fix.


    Desktop is 0 x 0 @ 0 Hz
    [Vulkan init] extensions: count=7
    [Vulkan init] extensions: name=VK_KHR_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
    [Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_display, enabled=1
    [Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory_capabilities, enabled=0
    [Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
    Vulkan detection: 2
    Initialize engine version: 5.6.0f3 (497a0f351392)
    GfxDevice: creating device client; threaded=1
    [Vulkan init] extensions: count=7
    [Vulkan init] extensions: name=VK_KHR_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_xcb_surface, enabled=0
    [Vulkan init] extensions: name=VK_KHR_xlib_surface, enabled=1
    [Vulkan init] extensions: name=VK_KHR_display, enabled=1
    [Vulkan init] extensions: name=VK_EXT_debug_report, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory_capabilities, enabled=0
    [Vulkan init] extensions: name=VK_KHR_get_physical_device_properties2, enabled=0
    [Vulkan init] extensions: count=11
    [Vulkan init] extensions: name=VK_KHR_swapchain, enabled=1
    [Vulkan init] extensions: name=VK_KHR_maintenance1, enabled=0
    [Vulkan init] extensions: name=VK_KHR_shader_draw_parameters, enabled=0
    [Vulkan init] extensions: name=VK_KHR_sampler_mirror_clamp_to_edge, enabled=0
    [Vulkan init] extensions: name=VK_EXT_shader_subgroup_ballot, enabled=0
    [Vulkan init] extensions: name=VK_EXT_shader_subgroup_vote, enabled=0
    [Vulkan init] extensions: name=VK_NV_dedicated_allocation, enabled=0
    [Vulkan init] extensions: name=VK_NV_external_memory, enabled=0
    [Vulkan init] extensions: name=VK_NV_glsl_shader, enabled=0
    [Vulkan init] extensions: name=VK_NVX_device_generated_commands, enabled=0
    Vulkan API version 1.0.37
    Vulkan vendor=[NVIDIA] id=[10de]
    Vulkan renderer=[Tesla K80] id=[102d]
    Vulkan device type 2
    Vulkan driverversion=[0x5e824000] uint=[1585594368]
    Vulkan: default RenderTexture HDR format: 11 (109)
    Vulkan PSO: cache data not found [path=/home/localuser/.cache/unity3d/DefaultCompany/EncodeTest/vulkan_pso_cache.bin]
    AudioManager: Using PulseAudio: Default Output Device
    Begin MonoManager ReloadAssembly
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll (this message is harmless)
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/Assembly-CSharp.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.UI.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Networking.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Networking.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Analytics.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/UnityEngine.Analytics.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.Unity.dll (this message is harmless
    )
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/SpicyPixel.Threading.Unity.dll into Unity Child Domain
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.Threading.dll (this message is harmless)
    Loading /home/localuser/testapp/linux_vulkan_Data/Managed/System.Threading.dll into Unity Child Domain
    - Completed reload, in 0.149 seconds
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.Core.dll (this message is harmless)
    Platform assembly: /home/localuser/testapp/linux_vulkan_Data/Managed/System.dll (this message is harmless)
    Error getting system window info: Video subsystem has not been initialized
    Vulkan is currently only supported on X11