Subject: | CAM::PDF clone change from eval of Data::Dumper to Storable dclone |
Date: | Fri, 31 Jan 2014 11:27:26 -0800 |
To: | bug-CAM-PDF [...] rt.cpan.org |
From: | Kevan Benson <kentrak [...] gmail.com> |
The current CAM::PDF method of using eval of Data::Dumper to clone
nodes is extremely slow on PDF pages with many nodes. In some
circumstances, it takes over 12 seconds on a fairly strong server with
32 GB of RAM.
Devel::NYTProf shows that switching to either of Storable::dclone or
Clone::clone results in parsing the PDF in roughly half the time, with
Storable::dclone slightly edging out Clone::clone and also being in
the core.
Attached is a small patch that implements Storable::dclone cloning for
your perusal. I'm not certain there weren't other reasons for using
Data::Dumper, so hopefully you'll be able to better assess whether
this is an appropriate solution.
Thanks for CAM::PDF, I've found it invaluable!
-Kevan
Message body is not shown because sender requested not to inline it.