[reportlab-users] Report generation time is not optimized - ideas?
J. R. Carroll
jrc.csus at gmail.com
Wed Jan 2 16:07:12 EST 2013
Hi Tim,
Yeah, I'm aware that our OE platform is the main culprit of our slow PDF
generation (in fact, most people are surprised that on first pass the
reports are built in that 6-15 sec window - yay ReportLab Dev's) - but
since we can't change that (without some major overhauling) we need to look
at code optimization.
I've built everything in memory, trying to use the reportlab-accelerator,
and several other tricks to improve speed. Early on, I was able to reduce
file sizes from about 300k down to ~120k just by making efficient use of
existing reportlab strategies for dealing with lines (aka Line versus
PolyLine, etc - this also sped-up the report generation considerably). I'm
looking for advice in the way of "well since you are doing so many lines,
have you thought about ___________", or "you are using OE? Well, you
should really download and install ________". But, in the end, if it boils
down to our hardware architecture, then... darn it! =P
We are using an ARMv7, beyond that most of the hardware is unknown to me
(for lots of different reasons).
Got any advice in the form of what I'm looking for? =P
-J
----
J. R. Carroll
Cell: (650) 776-6613
www.jrcresearch.net
www.ontvp.com
Email: jrcarroll at jrcresearch.net
jrcarroll at hurtzlab.com
jrc.csus at gmail.com
<https://www.facebook.com/J.R.Car>
<https://twitter.com/jNammer><http://www.linkedin.com/in/jrcarroll>
On Wed, Jan 2, 2013 at 3:40 PM, Tim Roberts <timr at probo.com> wrote:
> J. R. Carroll wrote:
> > Throwing this out there, hoping to catch an idea or two:
> >
> > The Setting: our company has an open embedded device that we have
> > installed reportlab to. On our local machines, it takes the report
> > less than a second to generate the PDF and save to disk - very quick -
> > very nice (thank you!). On the target device it's taking anywhere
> > from 6.5sec to 15.sec - not the best case scenario I can think of.
>
> Most embedded devices have woefully underpowered CPUs. Remember the
> basic purpose of ReportLab is to create Portscript strings from your
> method calls, and accumulate them into one big document. That means
> vast amounts of string processing, which means lots of memory copies.
> What processor are you using?
>
> --
> Tim Roberts, timr at probo.com
> Providenza & Boekelheide, Inc.
>
> _______________________________________________
> reportlab-users mailing list
> reportlab-users at lists2.reportlab.com
> http://two.pairlist.net/mailman/listinfo/reportlab-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://two.pairlist.net/pipermail/reportlab-users/attachments/20130102/b6b7bf74/attachment.html>
More information about the reportlab-users
mailing list