GPU or CPU in 2024-Where to put the $$ on a new desktop build

So after wrestling with all kinds of issues with OpenCl on Radeon, and to a lesser extent Nvidia, I’m pretty tired of all the drama. My only use for OpenCL is with darktable, and as I start the process of building (or buying) a computer to run Linux/darktable with 6 months from now, I’m wondering how to handle the choice of GPU. Other than issues with OpenCL, and to a much lesser extent some sound issues, Linux is working really well for me. No chance I’d go back to Windoze/Adobe.

My thinking is that maybe I put extra $$ in a better/faster/more cores/ CPU, maybe more ram and go with a lighter weight GPU. I don’t do any gaming, and what little video editing I do I use Kden Live, and proxie my clips. I would happily forgo OpenCL.

What say you knowledgeable folks?

Marc,

I am not that knowledgeable, more a partial user :slight_smile:
You are not a gamer, you say — but don’t forget that a certain modern
raw developer makes more use of the GFX than the “older” ones.
I am thinking of vkdt, which uses GPU processing only.

For my use, a self-built tower containing a Ryzen 9 3900X, Nvidia 1660-Ti,
32 Gig RAM, 500 GIG NVMe SSD (6k9 read/5k0 write) works more than well,
using Debian 12 and proprietary Nvidia drivers!

Have fun!
Claes in Lund, Sweden

1 Like

What modern RAW developer is using vkdt? Can you elaborate a bit? I’ll confess my ignorance upfront!

Thanks for including info about your system. I’m on a 2018 off the shelf from Costco HP with an intel I-7 CPU, with 32 GB ram. I have put a few more NVME’s in it and a hard disk for archived stuff.

By the way Claes, my friend was in Lund this summer visiting family, loved the city.

What modern RAW developer is using vkdt?

Ho-hum. That would be vkdt!!!

https://vkdt.org/readme.html

was in Lund this summer visiting family, loved the city.

So do we, have lived here since 1967.

Have fun!
Claes in Lund, Sweden

1 Like

4gb of Vram is to me the bare minimum for a new system build. I would use Nvidia 30xx series or better.

Hi Claes-

Thanks for sending that article. That software looks a bit more than I would wrestle with now. I see that it’s from 2022. Has it evolved much since then?

I think I’m sticking with darktable for now. I’ve spent a lot of time on it for the past 4 years, and very much like the results I can get. I still find the export dialogs frustrating, and would love to see more screen real estate devoted to this module, but that has fallen on deaf ears.

I did spend a bit of time with Ansel, liked some of the changes, but the lack of customized module groups make it unusable for me.

Anyways, I’m going off topic (too much time on my hands this morning). Stay well.

1 Like

Slightly related:

From my current understanding I’d take a long good look at both your current hardware benchmarks and your future intended one. Both on the CPU and the GPU side.

Some very modern CPU might make the GPU redundant.
A great GPU might still blow away the CPU by orders of magnitude.

Just having both of them in the same performance spectrum doesn’t make a lot of sense.

I think you can bottleneck a very good GPU with a poor CPU… I think it rarely makes sense to have any high end components saddled with slower one… be it memory cpu hardisk/ssd whatever. The best performance will always be when the components are well matched and there is no weak link so I think looking at the entire system when planning upgrades or new purchases is very important…

Of course. The balance is important. But by dropping the CPU a few notches – which usually results in half the price or even less – you don’t lose much overall. It doesn’t always have to be the best-of-the-best. If you put down some serious money you should evaluate all the parameters. That’s why there are shops that professionally build workstations. But then you still need to know how to use that power – I’ve seen people bring high-performance workstations to their knees just because they didn’t care where the data came from (network vs local ssd) or how much RAM their 200 Chrome tabs actually used and so on.

My example in the other thread of a i7-6700 with a GT1030 is an awesome example of an effectively unbalanced system. But it was a test where I only cared about the price of the card and that it made some OpenCL available.

Thanks for sharing that thread with me. Interesting information in there.

My current CPU is this:
model: Intel Core i7-8700 bits: 64 type: MT MCP arch: Coffee Lake gen: core 8 level: v3
note: check built: 2018 process: Intel 14nm family: 6 model-id: 0x9E (158) stepping: 0xA (10)
microcode: 0xF4
My current GPU is a Radeon 550X, which is currently no providing OpenCL capability to darktable.
I’ve been unable to enable it.

I have an Nvidia 1060 which I had previously installed and providing OpenCl capability to darktable,
and it was fast enough for my work. Unfortunately, OpenCl stopped working in darktable with that card-it would sometimes be enabled, other times not. Don’t know why, tough to troubleshoot for me.

So it looks like an Nvidia 3060 or whatever the equivalent is in 2024 would be a bump over my best current configuration.

I’d expect that a CPU about the same price as that GPU card would also be an improvement to what I have now.

In no case do I need the best of the best. This is now a hobby for me, I retired 8 years ago, and I only shoot m43 now so my RAWS are only 20mb.

Thanks for your input.

I have a 1060 and it’s still supported by the current drivers. However, one can get OpenCL problems due to not enough RAM - and that can be main memory as well, not only VRAM. You should figure out what’s wrong, otherwise the 3060 could end up unusable, too.

I think that card has 6GB memory. It was working until a couple weeks ago, when darktable no longer enabled openCL on it. It was weird. It could go either way on any given editing session.

My system memory is 32Gb, so I think that’s ample.

My ability to trouble shoot this issue has sort of come to an end. That’s why I’m looking to configure a new system in 6 months without these issues. And my confidence in openCL is at an all time low. Really, any gains in productivity seem to get obliterated in issues with it.

I read all the posts here, and I still have issues getting it to work. So I need to find another path forward.

Thanks.

1 Like

Maybe you could try posting the logs you get with -d opencl? If you already have, please let me know – I cannot seem to find them.
For me, darktable has been working for years with OpenCL, with only a few glitches from NVidia drivers, which could always be solved by temporarily reverting to an older driver. I have a lowly 1060 / 6 GB, the same as yours; I used to use an old PC with just 4 GB of main memory, and that is when I had the problems if I kept too many programs open while also running darktable. With your 32 GB, that should not be a problem. I hope that with the help of the logs the community (which includes the developers) will be able to help you.
A modest GPU can outperform a high-end CPU (see my analysis in the thread that grubernd linked above), so OpenCL is definitely worth it.

Thanks for the offer of help. I’ll see if I can swap the Nvidia back in tomorrow and send you the log.

Like I said, it ran fine for years on both Zorin and for the past few months on MX23.

Just started getting flaky during the past couple weeks.

Before I swap out cards, here’s the CLI output with the Radeon 550 card, which had worked but not on this distro. It was a bear to get going, and I’ve forgotten how I did it.

$ flatpak run org.darktable.Darktable -d opencl
     0.0210 [lcms2] error 9: Wrong output color space on transform
     0.0211 [lcms2] error 9: Wrong output color space on transform
     0.1109 [dt_get_sysresource_level] switched to 2 as `large'
     0.1109   total mem:       31970MB
     0.1109   mipmap cache:    3996MB
     0.1109   available mem:   21854MB
     0.1109   singlebuff:      499MB
     0.1109   OpenCL tune mem: WANTED
     0.1109   OpenCL pinned:   WANTED
[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
     0.1121 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL'
     0.1121 [dt_dlopencl_init] could not find default opencl runtime library 'libOpenCL.so'
[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: 'AMD Radeon RX 550 / 550 Series (polaris12, LLVM 15.0.7, DRM 3.54, 6.5.9-2-liquorix-amd64)'
   PLATFORM NAME & VENDOR:   Clover, Mesa
   CANONICAL NAME:           cloveramdradeonrx550550series
   DRIVER VERSION:           23.1.9
   DEVICE VERSION:           OpenCL 1.1 Mesa 23.1.9 (git-acb5ee278a)
   DEVICE_TYPE:              GPU
   *** insufficient device version ***
[opencl_init] no suitable devices found.
[opencl_init] FINALLY: opencl is NOT AVAILABLE and NOT ENABLED.
error: The following untracked working tree files would be overwritten by merge:
        contrib/select_non_existing.lua
        locale/de_DE/LC_MESSAGES/select_non_existing.po
Please move or remove them before you merge.
Aborting

Thanks again, I’ll post the Nvidia results once I do the swap.
ps-Yes, this is a flatpak install, and yes, it worked with Nvidia up until a couple weeks ago.

vkdt is the new project of the original darktable author. It’s in active development, enough is there now to do still photographs quite nicely. Current dev work appears to center on video, the node editor, and Mac porting.

It’s a project to keep on your radar, as it does GPU image processing correctly: load the imported raw into GPU memory, do all processing there, and only pull it out for export. It processes my 24mp Z 6 raws in about 18 milliseconds on a 16G Nvidia GeForce GTX 1660 Ti.

2 Likes

I’m a windows guy so not much experience but this could still be an issue with all your struggles… Several times people have had issues with DT and it gets tracked to a flatpak install it seem… In any case its so easy to follow the instructions to setup building DT I would say much less time that it sounds like you have spent wrestling with video card drivers and opencl support…

At least that would be a base to work from and there has been a bit of recent work on the opencl code so maybe the combination of that with your flatpak somehow broke it for you…

All of that is pure conjecture on my part but if there was even a chance that it might be an issue it might be worth considering…

1 Like

You can find some interesting benchmarks of different configurations here:

https://math.dartmouth.edu/~sarunas/darktable_bench.html

Thanks Todd-

Building it myself is a possibility, although the last time I did that it took quite a while to sort through the unmet dependencies, and it became it’s own special nightmare.

I’d prefer to stick to a prebuilt package if possible.

I’m going to swap out my Radeon, with the Nvidia, install the proprietary drivers again, and try one more time, taking up Kofas offer to see if there is something in the CLI outpu that will help.

If not, I’ll continue on for the next few weeks and regroup in the spring.

Thanks.

1 Like

Thanks Klaus-

Those benchmarks were very helpful. I’m surprised to see that the perfomance of the Intel Arc 750 is reasonably robust at a $200 price point. I can see that there is a marked improvement in rendering speed across the board with the GPU, no matter which GPU maker. The CPU is modestly priced around $200 as well.

I’ve seen a post here on pixls.us that the Intel Arc is running well, and the drivers are still evolving. I may take a closer look at this once I get ready to build.

Unfortunately, my motherboard is too old to take the Intel card now, so I’ll have to wait.

Thanks again for posting that link, it was very helpful.

Back at it for three hours today. I was able to get opencl working again on the Nvidia GeForce1060 in darktable flatpak-but not for long.

On a cold boot, the opencl works fine, but no audio.
On a reboot, audio is fine, but no opencl.

I tried two other legacy kernels, neither would boot to a GUI.

I posted it on the Nvidia forum, found another guy with similar issues.

I’m currently running on the Nouveau driver, no opencl, but no audio issues either.

There I shall stay for now, until I build a new system next year.