Bug 18017

Summary: PDF rendering is very slow with CPU load constantly at 100% with particular PDF
Product: poppler Reporter: Carlos Garcia Campos <carlosgc>
Component: cairo backendAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: luke.hutch, phil
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Carlos Garcia Campos 2008-10-11 09:50:24 UTC
Bug forwarded from Evince: http://bugzilla.gnome.org/show_bug.cgi?id=551638

"Please describe the problem:
When opening bng.pdf within evince, it takes about 30 seconds on my E6600 for
one page of the 20 page document to be rendered. The document can be downloaded
here for reference:

http://www.t-balancer.com/english/support.htm

Direct link:
http://www.t-balancer.com/download/bng.pdf


Steps to reproduce:
1. Download http://www.t-balancer.com/download/bng.pdf
2. Open bng.pdf in evince
3. Wait for ages"

I confirm it's specific to cairo backend.
Comment 1 Carlos Garcia Campos 2008-10-11 09:56:16 UTC
I've been playing with sysprof and it seems the function GfxDeviceNColorSpace::getRGB is called too many times.

The problem is with some images that have NumPixelComps == 1. In the splash backend they build a lookup table for these cases (See SplashOutputDev::drawImage()). I guess we could implement something like that in the cairo backend. 
Comment 2 Carlos Garcia Campos 2008-10-19 02:36:25 UTC
*** Bug 18119 has been marked as a duplicate of this bug. ***
Comment 3 Carlos Garcia Campos 2009-07-20 08:19:18 UTC
I've finally implemented the same approach than splash in the cairo backend. Now it takes around 2 seconds to render the first page of bng.pdf.
Comment 4 Carlos Garcia Campos 2009-07-20 08:29:35 UTC
*** Bug 22087 has been marked as a duplicate of this bug. ***

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.