Windows 10 running Darktable not using PC at full capacity

Hi’ @hlev and others

Inspired by this thread I have had a closer look at my laptop.

I have a HP laptop running windows 10 and Darktable 2.6.2 equipped with 2 GPUs: Intel HD Graphics Family and NVIDIA GeForce GTX 850M. NVIDIA is the fastest.

Using the default setup - opencl_device_priority= star/!0,star/star/star - Darktable primarily use Intel except for export in which case NVIDIA is used exclusively. I type “star” instead of “*” to make sure the text is correct.

When I start Darktable with “darktable –d opencl” no screen output is visible, the output seems to be overwritten at once. I assume that Intel is no. 0 and NVIDIA is no. 1. I can’t figure out how to make the output visible. Can anyone help?

Inspired by the example in the 2.4 manual I have tried the following setting: !0,star
/!1,star/1,star/1,star which results in more use of NVIDIA, but Intel is still the preferred GPU.

I have tested many different settings but have not been able to make Darktable use NVIDIA primarily. In some cases Darktable just give up and use Intel exclusively. This is also the case when I use the setup: 1,!0/!0,!1/1,!0/1,!0 - NVIDIA is not used!

I seems to me that Darktable is not working as described in the manual in respect to device priority.

When you say “output” - do you mean DT is not displaying on the screen? Or are you not seeing debug output? That’s strange, unless you’re directly running darktable instead of first running “cmd” and then running darktable from within a command prompt.

Not sure… I almost never fire up my Windows partition and don’t run DT on it. I guess on Windows Intel must have some sort of closed-source compute runtime other than Beignet and NEO, as Beignet remains blacklisted on all platforms (I’m not going to try and have this changed, anyone who is running hardware not supported by NEO is likely running hardware that will be simply problematic for OpenCL) and NEO remains blacklisted under Windows (someone else will have to take more data to show that NEO on Windows is OK - given that NEO is only formally released for Ubuntu-based distributions, Windows + NEO is a huge unknown. It may turn out that it too was unfairly blacklisted due to darktable’s kernel caching issues, but I was only comfortable removing the blacklist for platforms I personally tested.)

Hi’ @Entropy512

Thank you for your response. I execute Darktable using a BAT-file with start “darktable……”.

Using the command prompt to start darktable:
C:“Program Files”\darktable\bin\darktable.exe -d opencl
results in no output on the display or maybe it is overwritten at once? But Darktable starts.

Better open cmd.exe and start darktable from there.

Same result. No output visible…

DT is not displaying any debug information. Pls. see the video.

Hallojsa!

Why do you command “… darktable.exe darktable -d opencl”
instead of just “… darktable.exe -d opencl” ?

Mvh
Claes fra Lund i Sverige

2 Likes

Good catch on that one… I missed that subtlety. Although at least in Linux, that extra “bogus” commandline argument (of the program name getting repeated) seems to get ignored when I try it.

I’m wondering if this is some sort of strange windows-ism…

I’d also add that if is a laptop, then you likely have switchable graphics, meaning you can alternate between the Intel and nvidia cards (and the system may automatically switch between them). I’d make sure the nvidia card is forced on while doing this.

Yes that is a known behaviour:

following the link you will get the info where the log output is written to:

I read a lot of information in the manual to turn on some debug settings, but I cannot see any debug information. Where can I find those debug logs?

The Windows version of dt by default logs its debug information to the following places:

Windows 10: C:\Users\[username]\AppData\Local\Microsoft\Windows\INetCache\darktable\darktable-log.txt

Hi’ @Claes
I have tried both versions. It makes no difference.

Hi’ @Claes

Have a look no difference. I tried to repeat “darktable” to make it work and forgot to go back to the original version. Have a look:

@obe

1 Does this build have debug enabled?

2 Maybe you need to redirect output to file? E.g., for PhotoFlow,

photoflow > log.txt 2>&1 

You can try installing and running Microsoft DebugView. That is how I get debug info from digiKam on Windows. Just run DebugView in parallel and see if darktable prints anything in there.

Hi’ @afre

Thank you for your response.

It’s an official “release” how do I know if debug is enabled or not?

You suggest that I should start darktable like this:

“darktable……………….exe” -d opencl > log.txt 2>&1 and then output should be found in a file called log somewhere on the pc?
Ok, I will try that tomorrow when I have more time.

Thanks I will try to do that.

@afre @Claes Windows is different see my post above

Hi’ @afre and @Claes

I am able to run darktable with the specified options. Spaces are important otherwise you get an error message. But NetCache is not to be found?

Result can’t be found. No NetCache:

image

It is INetCache and you are right, it is hidden. Just copy and paste the full path in the explorer.

Also, after you start darktable with the opencl command you should also do some operations over the image that use opencl. Otherwise the log will contain a last message saying opencl is not used :smiley: