Copy link to clipboard
Copied
This is a brand new laptop, i9-13980HX, RTX 3000 Ada GPU (RTX 4070 equivalent). All drivers and Windows updates are up to date. (NVIDIA RTX X000 uses a different driver line than Geforce 40XX drivers, so 528.95 / April 25, 2023 is the latest.)
During GPU export, GPU usage never really peaks above 30%, and CPU usage jumps around from 20-80. While the system does have dual integrated / discrete GPUs, I did verify in task manager that Lightroom is using the discrete GPU. During CPU export, all CPU cores are at 100% the entire time.
I also tested this on an older desktop system (i7-9700 / Radeon 5700XT, all fully up to date). GPU export usage again never passed 30%, while CPU export pegged all cores at 100%. (In this case, GPU vs CPU export times were roughly the same.)
Anyway I guess I'm not looking for a solution, per se, since I know there's nothing wrong with my systems. But as I dive into the performance difference, I'm just curious whether this is intended behavior from LR. Like, is GPU export supposed to be a more "power efficient" export method, and CPU export the "crank all the cores to 11" thing? The additional cores on the i9-13980 clearly make a substantial difference in export speed. Does Adobe intend to improve GPU export utilization over time, or is this all just how GPU utilization fundamentally works for this kind of stuff?
Copy link to clipboard
Copied
The relative utilizations of the CPU and GPU are what others have observed (including me). When the GPU is enabled for export, there's a lot of work that can't be profitably done on the GPU (reading/writing the files, rendering, etc.), which is why you never see it get above about 30%. But when the GPU is disabled, all the work must be done on the CPU, which is why you see utilization approach 100%.
There have been other reports here that enabling the GPU for export results doesn't speed up and sometimes slows down export.
Copy link to clipboard
Copied
I've observed the following:
In general I have observed that Lightroom remains more responsive, while exporting via GPU, while when running an export via CPU you need to leave LR be until the export is done, as the interface becomes super laggy. This, of course, is a result of the CPU being pegged at 100% when you export via CPU.
So yes, I think in some way, the "Export with GPU" is supposed to be a power efficient export, especially aimed at Laptop hardware that have GPUs that can do the task faster than weak CPUs. But on desktops, it appears that the overhead to "prepare the data" for the GPU to export seems to be higher, than the actual value of running it on GPU. It would be interesting to do a proper test in this regard, with measurements and a controlled dataset, just to give this statement some numbers.
Copy link to clipboard
Copied
Correction:
GPU export is actually noticably faster for me with a controlled dataset of around 100 photos (33 megapixel DNG)
With GPU the export took 47 seconds
On CPU the export took 1m35seconds (~95 seconds)
Not sure why I was observing degraded performance when exporting via the Publish module... But it seems like that the publish module is to blame for the poor performance I was seeing (using jeffrey friedl's collection publisher)
Copy link to clipboard
Copied
And another update: I figured out that the slower export was a result of the metadata wrangler (also by jeffrey friedl). Sorry for the inaccurate original statement(s). I guess this is why we should not rely on our perception alone. 😉 The Collection Publisher by Jeffrey Friedl is performing very fast once I disabled the metadata wrangler.
So long story short:
For me the R9 3900x (12 cores ~ 4.00 ghz) exports slower than the RTX 3060 12GB GPU. (see numbers above)
Copy link to clipboard
Copied
"But it seems like that the publish module is to blame for the poor performance I was seeing (using jeffrey friedl's collection publisher)"
"the slower export was a result of the metadata wrangler (also by jeffrey friedl)."
I can't find it now, but a couple years ago there was a thread about how (at least then), exporting/publishing with a plugin serialized the execution of the plugin. The rendering of images occurred in parallel (using mulitiple cores), but the part that executed in the plugin was executed one image at a time.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now