Good OpenCL performance with Intel Arc 750 GPU

I have just had a chance to test the new Arc 750 8GiB GPU in Ubuntu workstation. These GPUs require BIOS, where “Resizable BAR” or “Smart Memory Access” options can be enabled. They do work with a i915.ko from stock kernels and boot option i915.force_probe=56a1, but functioning OpenCL currently requires specific kernel for which i915.ko can be compiled using sources from Intel’s repository. Following these instructions resulted in a working OpenCL, including for darktable 4.0.1 (collection of random and not very scientific test results is here).

Hopefully in future it will just work with stock and upstream kernels after a simple apt install intel-opencl-icd (Ubuntu), like it does for earlier Iris Xe GPUs.

6 Likes

0.85 seconds… impressive results. I just tried the same benchmark on my system (3700x + rtx3080) and got 1.094 seconds. Probably a CPU bottleneck in my system?

Thanks for sharing! I have high hopes for these GPUs bring affordable and performant in the next 1-2 years.

1 Like

Just tested with Ubuntu mainline kernel 6.2.0-060200rc5-generic. OpenCL with Arc 750 works with stock i915 module. No need for: specific OEM kernel, compile/DKMS, use of Intel repositories. On Ubuntu all that needs to be done is apt install intel-opencl-icd.

$ clinfo -l
Platform #0: Intel(R) OpenCL HD Graphics
 `-- Device #0: Intel(R) Graphics [0x56a1]
$ darktable-cltest
[dt_get_sysresource_level] switched to 2 as `large'
  total mem:       32003MB
  mipmap cache:    4000MB
  available mem:   21877MB
  singlebuff:      500MB
  OpenCL tune mem: WANTED
  OpenCL pinned:   OFF
[opencl_init] opencl related configuration options:
[opencl_init] opencl: ON
[opencl_init] opencl_scheduling_profile: 'very fast GPU'
[opencl_init] opencl_library: 'default path'
[opencl_init] opencl_device_priority: '*/!0,*/*/*/!0,*'
[opencl_init] opencl_mandatory_timeout: 400
[opencl_init] opencl library 'libOpenCL.so.1' found on your system and loaded
[opencl_init] found 1 platform
[opencl_init] found 1 device

[dt_opencl_device_init]
   DEVICE:                   0: 'Intel(R) Graphics [0x56a1]'
   CANONICAL NAME:           intelrgraphics0x56a1
   PLATFORM NAME & VENDOR:   Intel(R) OpenCL HD Graphics, Intel(R) Corporation
   DRIVER VERSION:           1.0.0
   DEVICE VERSION:           OpenCL 3.0 NEO 
   DEVICE_TYPE:              GPU
   GLOBAL MEM SIZE:          7722 MB
   MAX MEM ALLOC:            3861 MB
   MAX IMAGE SIZE:           16384 x 16384
   MAX WORK GROUP SIZE:      1024
   MAX WORK ITEM DIMENSIONS: 3
   MAX WORK ITEM SIZES:      [ 1024 1024 1024 ]
   ASYNC PIXELPIPE:          NO
   PINNED MEMORY TRANSFER:   NO
   MEMORY TUNING:            WANTED
   FORCED HEADROOM:          400
   AVOID ATOMICS:            NO
   MICRO NAP:                250
   ROUNDUP WIDTH:            16
   ROUNDUP HEIGHT:           16
   CHECK EVENT HANDLES:      128
   PERFORMANCE:              1.460
   TILING ADVANTAGE:         0.000
   DEFAULT DEVICE:           NO
   KERNEL DIRECTORY:         /usr/share/darktable/kernels
   CL COMPILER OPTION:       -cl-fast-relaxed-math
   KERNEL LOADING TIME:       0.0171 sec
[opencl_init] OpenCL successfully initialized.
[opencl_init] here are the internal numbers and names of OpenCL devices available to darktable:
[opencl_init]           0       'Intel(R) Graphics [0x56a1]'
[opencl_init] FINALLY: opencl is AVAILABLE on this system.

2 Likes

@sugarbravo That is very exciting!

I don’t think those numbers are very exact. My NVidia 1060 is way faster than my Ryzen CPU, but the PERFORMANCE (gain) figure is only 1.21, according to that benchmark.

In fact they are just crap :slight_smile: The benchmark producing the result is outdated “by ages” …

1 Like

This is not about PERFORMANCE performance.

Don’t get me wrong, I’m happy that it works.
How’s your real -life experience with the card? I’ve checked the test page, but some seem to have been done with old versions of darktable. I’m not at my desk now. Were computationally heavy modules like diffuse or sharpen included? (That’s relatively recent, but I’m not sure which version introduced it.)

1 Like

Wouldn’t be a bad idea to create a new updated benchmark with most new modules in a pretty heavy configuration so as to be able to tell performance better. is there any pixls.us community resource for shared spreadsheets or something of the sort?