Historically, computers have achieved increased performance by some combination of increasing CPU clock-frequency and CPU complexity. In recent years, this tread has abated, with modern computers achieving increased performance by having multiple independent cores, with each core showing only modest improvements to performance over time. Therefore, for software to show an increase in performance, it is increasingly important that the software be able to spread its load over several CPU cores. I believe that, currently, poppler is limited to single-threaded rendering. While this helps keep the code simple, the performance (against the platform's potential) suffers. This bug requests that poppler be extended to include support multi-threaded rendering. This would allow poppler to utilise all the cores concurrently, so drastically decrease the time take to render each page of a document on a modern computer. Cheers, Paul.
Isn't this the same as Your just reported bug 50992?
Hi Thomas, Again, thanks for the quick reply. My apologies if it's the same, but I don't believe so. In bug 50992, I'm asking that the API is thread-safe; that is, that multiple threads may call the poppler API without any potential corruption of any global state and, ideally, without contention between the different calling threads. This was the specific deficiency mentioned by the Okular developer when closing the ticket linked to in that bug. In this bug, I'm asking that a single API call uses as many cores as possible; that is, with a single rendering request, poppler makes best use of the available CPU cores. I believe that currently poppler is single threaded, so will use only a single core. Does that help explain the difference? Cheers, Paul
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/poppler/poppler/issues/338.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.