[SOLVED] Can I properly enable OpenCL on Windows 11 and Intel Iris Xe graphics in Darktable 4.0?

Note that @wpferguson has been making weekly windows builds of master. It seems not enough windows users have been using them, as bugs are being found post release. Darktable does not have enough windows testers. If you want a better release version, start testing the master builds when we get close to release.

4 Likes

I have commented your pr https://github.com/darktable-org/darktable/pull/12155

explaining why i think it’s not correct.

1 Like

In my case, I just had to delete the two lines in darktablerc file
cldevice_v4_intelrhdgraphics520=0 250 0 16 16 128 0 1 0.000000 cldevice_v4_intelrhdgraphics520_id0=400
then using darktable_cltest.exe, two new lines were written on that file
cldevice_v4_intelrhdgraphics520=0 250 0 16 16 128 0 0 0.118311 cldevice_v4_intelrhdgraphics520_building=-cl-fast-relaxed-math
any way thanks a lot for your quick answers

Just wondering - Is darktable’s availability on Windows an official aim of the project, or just because someone is available to port it (for whatever effort that requires)? I realize at some level obviously “someone’s availability” is a requirement for everything. I’m just curious if a Windows binary is a core goal or an added bonus. A minor point that triggered my question is the occasional assumption in the docs that it’s running on Linux. That may just be a by-product of DT’s roots.

Thanks.

The code is there on the repo and instructions are provided to compile it for WIn, MacOS and flavours of Linux…I think the focus on the code as it is developed is a working Linux version and then people assist with porting it to WIndows and Mac… and subsequently troubleshooting specific OS issues…

1 Like

@priort is correct, the code is there in the repo and changes to increase stability on any platform are generally accepted. Windows is a goal as long as someone is there to contribute to it. Most of the developers use Linux and so it runs best there.

The project is definely short on Windows developers and testers; you can see this as now that 4.0 is released, there are some (IMO) easy to spot bugs being reporter that only affect windows.

@wpferguson makes a weekly windows build I wish more people would use, then we would have less bugs at release time. But its only as good as people make it.

Before 4’s GA release I was using the weekly builds regularly. I’ve not updated since but will. My biggest problem right now is that I’m just not shooting much, hence little editing. I guess my workflow hasn’t hit too many of the bugs so far.

Thanks Thanks Thanks.

Hi all,

I’m testing the latest Windows development build by @wpferguson and I noticed that this issue is still present for Intel Iris Xe graphic.

I can workaround the issue by following the extract instruction below, however, what is required to include the official fix in the final release?

Okay I read further and found that the issue can simply be work around by changing a single setting from 1 to 0

From here: darktable 4.6 user manual - memory & performance tuning

h. disable device
0 = enable device; 1 = disable device
If darktable detects a malfunctioning device it will automatically mark it as such by setting this parameter to 1. If you have a device that reports a lot of errors you can manually disable it by setting this field to 1.

However, the question remains that why is the Windows NEO driver is still blacklisted despite there has been a bug fix that should have fixed the original issue.

What test on Windows can be done to prove that the blacklist can be removed?

1 Like

Start an Issue in GitHub for Feature Request to remove the Neo as blacklisted for windows. Provide screenshots or some info that shows it working on your system with current drivers. Test using multiple heavy openCL modules (D&S). Without an issue and test data, it will remain blacklisted. I run windows, buy i don’t have an Intel, so i cant test it.

Absolutely! I think it would be far worse to remove it from blacklist and get lost of user complaints about dt crashing or doing other bad things than “just set one 1 to 0”. The mentioned “bug fix” was a fix but not the reason for blacklisting.

Another option would be: you could start a windows user survey about “How does NEO work?”

The more I read about the issue the more I got confused. Before asking the devs via Feature Request or creating the poll, I want to get my facts straight first:

  • So the NEO driver is just the open source OpenCL driver provided by intel? It is NOT the Windows specific version of it?
  • I assume this driver is installed by the system in Windows and presumably in other OS too? I mean this driver is not compiled by darktable and included in the release?
  • This NEO name covers not just a single specific Intel device but also some variants? e.g. Intel UHD, Intel Xe, Iris, whatnot?
  • What is actually being blacklisted, was it the whole NEO driver, or combination of driver in specific device? Certain driver versions?
  • Is it only blacklisted in Windows?

I’m asking because majority of Windows users will get the latest drivers from the Windows update. Assuming the latest driver is stable (which we can check via poll) we can just tell people to update their drivers. But can you remove the blacklist just for Windows build?

Edit:
As for the stability of the driver in my laptop. DT works fine with Intel NEO open CL enabled, running the Sigmoid, Colour Balance RGB, Diffuse & Sharpen, etc.

  1. correct, it is Intel open source driver. The say they use the same codebase for the windows version of the drivers.
  2. dt uses the drivers installed in the OS.
  3. correct, neo is the driver code name used by multiple Intel devices.
  4. the NEO driver is blacklisted
  5. it is only blacklisted for windows (WIN32 in the code)

The change to remove it from the blacklist is very simple and can be done just for windows. The desire is to remove it from blacklist, but there needs to be enough evidence that it doesn’t cause issues to window users. Right now, you are the first one reporting that it works for you. A feature request in GutHub is the best way to track this. Post your detail system information (version of windows, drivers versions, etc). Others can then use your post to also post their results (in favor or against it).

Once enough folks comment, then it can be removed from master to give a wider set of test user to report issues before an official release (every 6 months).

1 Like

Blacklisting and non-blacklisting special combinations is a no-go for me as there is no way to check all cases.
We could offer some way to override blacklisting via preferences though for easier testing.

That depends on Microsoft. From what I’ve seen, the drivers provided by microsoft aren’t always the latest stable versions, but can lag significantly behind the versions published by the hardware manufacturer, Intel, in this case
(Understandable, as their main target audience probably doesn’t need the latest stable drivers, and every change means something can break).

Hello, on win10 or win11 I experience that dt works faster without enabling opencl support.
Has anyone made the same observation?
for example :
win11 v10.0.22621
dt4.10+1065
11th Ge i7-1165G7 intel iris Xe Graphics driver 30.0.101.1003

There can be several reasons:

In my experience it is not stable yet. On Windows 11, 11th gen processor and the latest NEO drivers I had a few crashes in a couple of hours. I disabled OpenCL.

1 Like

After some more testing I observed that it crashes whenever I try to enable highlights reconstruction in filmic and that using the color zones module produces artifacts in the blown highlights at export.