Server Products
Data Center Products including boards, integrated systems, RAID Storage, and Intel® Xeon® Processors
5081 Discussions

Enable Vulkan for iGPU on Ubuntu 24.04 server

karansh491
Beginner
4,937 Views
Goal: We wanted to use iGPU for rendering images in chromium for my application.
 
About system:
We have a dedicated server with Ubuntu 24 and Intel Xeon processor & 64GB RAM.
 
 
 
After some research and experiments, we got webGL and some other things working, shown as output of `chrome://gpu` from **headless** **chromium browser.**
 
But see **vulkan** is still **disabled**, so as **webGPU**.
 
So we checked my system for vulkan and found that version 1.3 was installed.
 
```bash
$ vulkaninfo --summary
WARNING: [Loader Message] Code 0 : terminator_CreateInstance: Received return code -3 from call to vkCreateInstance in ICD /usr/lib/x86_64-linux-gnu/libvulkan_virtio.so. Skipping this driver.
'DISPLAY' environment variable not set... skipping surface info
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
==========
VULKANINFO
==========
 
Vulkan Instance Version: 1.3.275
 
Instance Extensions: count = 23
```
 
Then we researched about compatibility of Processor with Vulkan.
 
 
And then switched to v1.2
 
To setup vulkan v1.2, I followed this guide:
 
Even after switching to vulkan 1.2, we didnt get vulkan enabled for chrome.
 
```bash
$ google-chrome-stable --headless --no-sandbox --enable-features=Vulkan,webgpu --use-angle=vulkan --use-gl=vulkan --print-to-pdf=out.pdf 'chrome://gpu'
[0728/142120.205635:ERROR:gl_factory.cc(120)] Requested GL implementation (gl=none,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=default),(gl=egl-gles2,angle=none)].
[0728/142120.207191:ERROR:viz_main_impl.cc(166)] Exiting GPU process due to errors during initialization
[0728/142120.214533bluez_dbus_manager.cc(248)] Floss manager not present, cannot set Floss enable/disable.
[0728/142120.218999:ERROR:gl_factory.cc(120)] Requested GL implementation (gl=none,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=default),(gl=egl-gles2,angle=none)].
[0728/142120.220608:ERROR:viz_main_impl.cc(166)] Exiting GPU process due to errors during initialization
[0728/142120.227719:ERROR:gl_factory.cc(120)] Requested GL implementation (gl=none,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=default),(gl=egl-gles2,angle=none)].
[0728/142120.229458:ERROR:viz_main_impl.cc(166)] Exiting GPU process due to errors during initialization
[0728/142120.328050sandbox_linux.cc(430)] InitializeSandbox() called with multiple threads in process gpu-process.
[0728/142120.332606:ERROR:command_buffer_proxy_impl.cc(132)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
Warning: terminator_CreateInstance: Received return code -3 from call to vkCreateInstance in ICD /usr/lib/x86_64-linux-gnu/libvulkan_virtio.so. Skipping this driver.
681663 bytes written to file out.pdf
 
```
 
Some usful outputs:
 
```bash
$ vulkaninfo --summary
WARNING: [Loader Message] Code 0 : terminator_CreateInstance: Failed to CreateInstance in ICD 0.  Skipping ICD.
'DISPLAY' environment variable not set... skipping surface info
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
==========
VULKANINFO
==========
 
Vulkan Instance Version: 1.2.198
 
Instance Extensions: count = 20
-------------------------------
VK_EXT_acquire_drm_display             : extension revision 1
VK_EXT_acquire_xlib_display            : extension revision 1
VK_EXT_debug_report                    : extension revision 10
VK_EXT_debug_utils                     : extension revision 2
VK_EXT_direct_mode_display             : extension revision 1
VK_EXT_display_surface_counter         : extension revision 1
VK_EXT_swapchain_colorspace            : extension revision 4
VK_KHR_device_group_creation           : extension revision 1
VK_KHR_display                         : extension revision 23
VK_KHR_external_fence_capabilities     : extension revision 1
VK_KHR_external_memory_capabilities    : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2         : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2       : extension revision 1
VK_KHR_surface                         : extension revision 25
VK_KHR_surface_protected_capabilities  : extension revision 1
VK_KHR_wayland_surface                 : extension revision 6
VK_KHR_xcb_surface                     : extension revision 6
VK_KHR_xlib_surface                    : extension revision 6
 
Instance Layers: count = 8
--------------------------
VK_LAYER_KHRONOS_synchronization2 Khronos Synchronization2 layer              1.2.198  version 1
VK_LAYER_KHRONOS_validation       Khronos Validation Layer                    1.2.198  version 1
VK_LAYER_LUNARG_api_dump          LunarG API dump layer                       1.2.198  version 2
VK_LAYER_LUNARG_device_simulation LunarG device simulation layer              1.2.198  version 1
VK_LAYER_LUNARG_gfxreconstruct    GFXReconstruct Capture Layer Version 0.9.10 1.2.198  version 36874
VK_LAYER_LUNARG_monitor           Execution Monitoring Layer                  1.2.198  version 1
VK_LAYER_LUNARG_screenshot        LunarG image capture layer                  1.2.198  version 1
VK_LAYER_MESA_device_select       Linux device selection layer                1.3.211  version 1
 
Devices:
========
GPU0:
apiVersion         = 4206866 (1.3.274)
driverVersion      = 100663305 (0x6000009)
vendorID           = 0x8086
deviceID           = 0x191d
deviceType         = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
deviceName         = Intel(R) HD Graphics P530 (SKL GT2)
driverID           = DRIVER_ID_INTEL_OPEN_SOURCE_MESA
driverName         = Intel open-source Mesa driver
driverInfo         = Mesa 24.0.9-0ubuntu0.1
conformanceVersion = 1.3.6.0
GPU1:
apiVersion         = 4206866 (1.3.274)
driverVersion      = 1 (0x0001)
vendorID           = 0x10005
deviceID           = 0x0000
deviceType         = PHYSICAL_DEVICE_TYPE_CPU
deviceName         = llvmpipe (LLVM 17.0.6, 256 bits)
driverID           = DRIVER_ID_MESA_LLVMPIPE
driverName         = llvmpipe
driverInfo         = Mesa 24.0.9-0ubuntu0.1 (LLVM 17.0.6)
conformanceVersion = 1.3.1.1
```
 
```bash
$ lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
00:02.0 VGA compatible controller: Intel Corporation HD Graphics P530 (rev 06)
00:14.0 USB controller: Intel Corporation 100 Series/C230 Series Chipset Family USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation 100 Series/C230 Series Chipset Family Thermal Subsystem (rev 31)
00:16.0 Communication controller: Intel Corporation 100 Series/C230 Series Chipset Family MEI Controller #1 (rev 31)
00:16.3 Serial controller: Intel Corporation 100 Series/C230 Series Chipset Family KT Redirection (rev 31)
00:17.0 SATA controller: Intel Corporation Q170/Q150/B150/H170/H110/Z170/CM236 Chipset SATA Controller [AHCI Mode] (rev 31)
00:1f.0 ISA bridge: Intel Corporation C236 Chipset LPC/eSPI Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation 100 Series/C230 Series Chipset Family Power Management Controller (rev 31)
00:1f.4 SMBus: Intel Corporation 100 Series/C230 Series Chipset Family SMBus (rev 31)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-LM (rev 31)
```
 
```bash
~$ glxinfo -B
Error: unable to open display 
```
 
```bash
$ ls -la /dev/dri
total 0
drwxr-xr-x  3 root root        100 Jul 22 15:30 .
drwxr-xr-x 21 root root       4360 Jul 26 07:00 ..
drwxr-xr-x  2 root root         80 Jul 22 15:30 by-path
crw-rw----  1 root video  226,   0 Jul 22 15:30 card0
crw-rw----  1 root render 226, 128 Jul 22 15:30 renderD128
```
 
```bash
$ inxi -G
Graphics:
  Device-1: Intel HD Graphics P530 driver: i915 v: kernel
  Display: server: X.org v: 1.21.1.11 driver: N/A tty: 196x60
  API: EGL v: 1.5 drivers: iris,swrast platforms: gbm,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: mesa v: 24.0.9-0ubuntu0.1 note: console (EGL sourced)
    renderer: Mesa Intel HD Graphics P530 (SKL GT2), llvmpipe (LLVM 17.0.6 256 bits)
  API: Vulkan v: 1.2.198 drivers: N/A surfaces: N/A
```
0 Kudos
5 Replies
JedG_Intel
Moderator
4,471 Views

Hi karansh491,


Thank you for posting at Intel Community Forums


To ensure you receive the most specialized assistance, we have a dedicated forum that addresses these specific concerns. Therefore, I will be moving this discussion to our Server Forum. This will allow our knowledgeable community and experts to provide you with timely and accurate solutions.


Best regards,

Jed G.

Intel Customer Support Technician



0 Kudos
IntelSupport
Community Manager
4,441 Views

Hello Karan,


Greetings from Intel!


Thank you for choosing Intel, to proceed further we request you to kindly share the system details and also please confirm if the processor is inbuilt on the motherboard or was it purchased separately.


Regards,

Amina


0 Kudos
IntelSupport
Community Manager
4,316 Views

Hello Karan, 

 

Thank you for contacting Intel. 

 

This is the follow-up regarding the reported issue. We're eager to ensure a swift resolution and would appreciate any updates or additional information you can provide.  

If we don't hear back from you soon, we'll assume the issue has been resolved and will proceed to close the case. 

 

Please feel free to respond to this email at your earliest convenience. 

 

Regards, 

Amina 

Intel Server Support  

Intel.com/vroc  

 


0 Kudos
IntelSupport
Community Manager
4,192 Views

Hello Team, 

 

Thank you for contacting Intel. 

 

This is the third follow-up regarding the reported issue. We're committed to ensuring a swift resolution and would greatly appreciate any updates or additional information you can provide. 

 

As we have not heard back from you, we'll assume the issue has been resolved and will proceed to close the case. 

 

Please feel free to respond to this email at your earliest convenience. 

 

Regards, 

Amina 

Intel Server Support  

Intel.com/vroc  

 


0 Kudos
IntelSupport
Community Manager
4,191 Views

Hello Team, 

 

Thank you for contacting Intel. 

 

We would like to inform you that, the Intel® Xeon® Processor E3-1275 v6 (8M Cache, 3.80 GHz) you are using has reached its End of Interactive Support (EOIS). As a result, we will not be able to offer further support. We will proceed with closing the case. 

 

Regards, 

Amina 

Intel Server Support  

Intel.com/vroc  

 


0 Kudos
Reply