Darktable on WSL

I’ve just compiled darktable on windows using WSL and I’m amazed how good it works! The performance is slightly better than using the windows build.

And I’m also happy about the fact that I can get open source programs running on windows more easily than on Linux systems (for example displaycal). Also I can get the newest versions and updates of my favorite open source programs faster. Digikam and calibre latest versions are earlier available on windows using chocolatey than for example on Ubuntu.

I’ve already tried several times to use a Linux distro as my only operating system but at the end of the day I wasted all my time trying to fix problems related to drivers, energy management, display profiles not being loaded, Bluetooth headphones not working properly and so on.

I just feel bad for liking windows :smiley:

What do you think about WSL? Do you have a similar experience?

You shouldn’t. If it works for you that’s great. There are trade offs to every platform.

However…

I think you’re going to have a bad time here with WSL and darktable. So far as I know, GUI apps on WSL use RDP and Wayland to display the app. For Wayland, there is no working color management yet (it seems its being worked on now, for the Linux version of Wayland), and throwing on a layer of RDP, I have no idea what that is doing or how its rendering things. If you do a deep dive, please do let us know.

Can you provide export time for the same image and same settings between WSL and MSYS2?

Does OpenCL works on WSL?

No RDP in Win 11… but the issues around color management and no GPU support yet for OpenCL would still be there I would guess… I did it some time ago when you had to use RDP and later when you didn’t…but I found it easier to just dual boot into PopOS. In the end I just went back to WIndows as I have to do so much work in that platform… Using them I didn’t seem to think there was a massive difference but I have a decently spec’d machine …maybe the gap is greater as the hardware falls off??

Not unless that happened in the last month or so…

You mentioned that on another thread and I checked it doing an empiric test: using “system display profile” within WSL I get indeed wrong colors, but when I use my windows display profile I get correct colors:

darktable 4.0.1 on windows:
251.208603 [dev_process_export] pixel pipeline processing took 18.312 secs (5.453 CPU)

darktable 4.1.0+721~g8c01944cc-dirty on WSL:
498.157075 [dev_process_export] pixel pipeline processing took 18.580 secs (8.615 CPU)

I exported the same edit several times and the processing times are always very similar. Before that test I was just looking around into the -d perf logs and the WSL version seemed for me slighty faster.

Yes it works. I just followed the instructions here: Harness the power of Intel iGPU on your machine

I think only CUDA works for Nvidia…this is specific to Intel stuff no??

Yes, I have an intel iris xe graphic card. I am more than satisfied with its performance.

All good but I think it has been shown before that its not such a huge improvement over CPU alone compared to say a discrete graphics card which with OpenCL working can often be 10x as fast so your system and set up might not reflect what someone would see comparing Windows performance with say a 3060 video card and then running it on WSL without opencl… if I get the time I will try my Win 11 , WSL and PopOS with Nvidia support on some common images and see what the times are…

I’ve just did again the export test with the current master version:

  • With OpenCL deactivated:
    125.605098 [dev_process_export] pixel pipeline processing took 35.950 secs (239.173 CPU)

  • With OpenCL enabled:
    93.179735 [dev_process_export] pixel pipeline processing took 21.704 secs (10.509 CPU)

Looking at the seconds it seems to be better with OpenCL. What does mean the number in parenthesis?

(I’m running now on battery saving mode, I think that is the reason why I get longer times exporting the same edit as in the previous post).

(PD: Indeed, when I plug in the computer I get again the exported edit in 18 seconds).

Yes you can actually add darktable as an application to use the GPU to the full extent… the settings are in the graphics section in windows and I have added ON1 Affinity and a couple of others…not sure if it makes a difference but it could also setting Windows to run on high performance mode …that might not work for your laptop but you could set it up to switch to that when plugged in to get the most bang for your buck…

You might find some interesting discussion here and it got explained to me near the end of this thread…

1 Like