[pdftex] OT: Linux AR 7.0 released: another comment

James Quirk jjq at galcit.caltech.edu
Wed May 25 17:21:28 CEST 2005


>> The degradation in performance is alarming: AR 7.0 is seventy five times
>> slower than AR 5.1 in turning off 2,000 widgets. This would suggest that

>widgets have associated appearance streams (i.e. in a tex field, the text string
>is also internally 'rendered' as a stream of pdf tokens, don't ask me why -) so
>it may be that there is some serious memory allocation/deallocation and messed
>up garbage collection going on (if also javascript is involved, for instance
>because one does checks, even more mem problems may be the cause - i'm still not
>sure if the most recent javascript plug in collects garbage at all); it may well
>be that acrobat 5 was fast because it was bugged and didn't do thinsg it ws
>supposed to do, for instance running calculation and validation javascripts -)

Someone from Adobe has just downloaded the widget test-files I posted,
and so I'm following up on your comments on the off chance that said
individual reads this newsgroup.

After investigating the matter further I have been able to reduce the performance
hit down to a factor of three by wrapping the widget actions using:

    this.delay = true;
      ... toggle.widgets
    this.delay = false;

In hindsight I should have been doing this all along. But three years ago 
when I was developing my widget-machinery, using AR 5, I found this delay 
feature had minimal effect and so I ignored it and as a consequence I am 
now paying the price.

I guess you hit the nail on the head in pointing out that the earlier 
version was fast, but bugged. Although the bug is really in my code for 
not using the 'this.delay' feature. In my defence, I would point out that 
Adobe's early JavaScript documentation was not very comprehensive. And 
while this has now been fixed there is still no mention of the importance 
of using 'this.delay' when dealing with large number of annotations.
But as you point out, few applications are capable of generating 1000's
of widgets and so I can't really complain when I get caught out by
internal changes to Adobe's product.



More information about the pdftex mailing list