When using the viewer pane in Directory Opus to browse images, switching between previous and next images is noticeably slow.
Would it be possible to improve performance by preloading images into cache, or at least loading thumbnails first to provide a faster preview while the full image loads?
We already do that. ![]()
Try defining some hotkeys to run the commands Show VIEWPANECMD=prev and Show VIEWPANECMD=next. (I chose Alt+Page up and Alt+Page down)
I'm guessing you are using the arrow keys to move through the image files to be displayed in the viewer pane?
I think there a small built-in delay before the images are loaded in the view pane, probably to avoid high cpu usage when holding down an arrow key and cycling rapidly through a list of files.
I also see the delay when navigating normally with arrow keys. However, the loading is instant when mouse-clicking or using the hotkey commands (with higher cpu usage, naturally).
Why is it still so slow? The latest beta version 13.22.2. Please check the video.
I just noticed that there is a downside to using the hotkey commands I mentioned.
While navigating through the list of files with they hotkeys, after the next selection is off the top or bottom of the visible part of the lister, it won't scroll the list immediately to keep the selected file in view.
It has a very noticeable delay after you stop using the hotkey before it will jump to the last viewed file.
Not sure how to resolve that.
Ooh, now I see what you mean, not about the viewer pane keyboard delay.
They did just introduce changes to the viewer with how images are rendered to support GPU acceleration.
Try the turning both on and off the options under Preferences->Viewer->Standalone Viewer (and Viewer Pane) for Accelerated rendering and High quality scaling, to see how it affects performance for you.
Since the changes are so new, I imagine any reporting is useful.
I have been doing some light testing of my own to report feedback, but hadn't had time to finish. Regarding image loading speed, turning off Accelerated rendering is a lot faster for loading images.
I've compared with/without this option for moderately sized images (150kB to 6MB), but not images with huge file sizes.
This is the state where GPU acceleration has been enabled.
How is the switching speed for you when it's disabled?
Which GPU and drivers are you using?
We only preload the next (and previous) image, not every image in the sequence, which it looks like the other viewer is probably doing. Not sure that makes sense in terms of memory usage vs typical real-world use of a viewer, if it's what they are doing.
Preloading behavior difference may be part of it, but so far I also do notice a significant affect on switching speed in DOpus image viewer, depending on the Accelerated rendering option.
I find that disabling the option is 2.5-3x faster at switching pictures than with it enabled. (Changing the High quality scaling sub-option on/off doesn't affect it.)
I just did some testing to count and compare # of images switched in Image Viewer while holding the arrow key. I did the comparison over 10, 15, and 20 seconds.
There's a big difference, and it's very noticeable when using it in practice, even when only switching a very small number of pictures with the mouse wheel.
-
Note: The green bar for 'Off' tappers down a bit on the 20s mark because my list of images was sorted by size, and the later ones were 5x larger file size than the beginning images, naturally slowing it down relative to the earlier images during the test. All tests were started from the same point in the file list.
-
Note 2: As a quick test, I just navigated down the file list while holding the arrow key for 10 seconds (no image viewing at all), and the file Lister was able to scroll through the same number of files (293) as the Image Viewer did with the accelerated render option off. So for the smaller images in the Image Viewer, the speed is capped by my keyboard repeat rate on my system. So, something is definitely hindering the image switching time with
Accelerated renderingon.
After disabling it, it actually speeds up by about double.But it's still not very fast.
I think it’s reasonable to provide a switch to manually limit the maximum memory usage.
If the new GPU rendering mode is slower, which GPU and drivers are you using? That can have an effect, especially if the GPU doesn’t support the pixel format the decoded image uses and has to be converted to another format.
(We’re seen that with some older iGPUs, for example.)
same for me.
latest driver updates...
My GPU is an RTX 2070 Super 8GB, drivers from about a month ago
NVIDIA QUADRO P2000
Driver Version: 582.16
We’ve found some ways to speed up the new D2D code. Please try the next beta when it’s released.
Thanks for your efforts in optimizing the new D2D code. I really appreciate it — I’ll test the next beta when it’s available.
