From mboxrd@z Thu Jan 1 00:00:00 1970 From: cberry@tajo.ucsd.edu Subject: Re: new exporter - noweb substitution issues Date: Tue, 20 Nov 2012 22:33:20 -0800 Message-ID: <87a9ubbh3j.fsf@tajo.ucsd.edu> References: <87ehjogdgb.fsf@tajo.ucsd.edu> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([208.118.235.92]:42920) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tb3sO-0007w3-Sy for emacs-orgmode@gnu.org; Wed, 21 Nov 2012 01:33:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Tb3sN-0003tn-MF for emacs-orgmode@gnu.org; Wed, 21 Nov 2012 01:33:36 -0500 Received: from plane.gmane.org ([80.91.229.3]:43900) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Tb3sN-0003tZ-GM for emacs-orgmode@gnu.org; Wed, 21 Nov 2012 01:33:35 -0500 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1Tb3sU-0005oR-JS for emacs-orgmode@gnu.org; Wed, 21 Nov 2012 07:33:42 +0100 Received: from tajo.ucsd.edu ([137.110.122.165]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Nov 2012 07:33:42 +0100 Received: from cberry by tajo.ucsd.edu with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 21 Nov 2012 07:33:42 +0100 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org cberry@tajo.ucsd.edu writes: > When I tried to export a large subtree, it took over *5 minutes* to > export with release_7.9.2-597-gd4b739. > > Using the contrib/lisp/*.el files from org-mode-7.8.11 > it took *5 seconds*. > > The subtree has a couple dozen '<<...>>'s in src blocks with ':noweb > yes' and the file itself is 9600 lines long. If I change all to 'noweb > no', then release_7.9.2-597-gd4b739 runs in about 5 seconds. > > Both cases use: > > # Local variables: > # *org-babel-use-quick-and-dirty-noweb-expansion*:t Further info: ELP timing on a toy case: | exporter | function | Calls | Total | per call | | old | org-babel-params-from-properties | 149 | 1.1002899999 | 0.0073844966 | | 7.8.11 | org-babel-params-from-properties | 142 | 0.966981 | 0.0068097253 | | 7.9.2 | org-babel-params-from-properties | 280 | 1.7842110000 | 0.0063721821 | | 7.9.2-nil | org-babel-params-from-properties | 280 | 1.7505480000 | 0.0062519571 | The last line used (setq *org-babel-use-quick-and-dirty-noweb-expansion* nil). The only difference between '7.9.2' and '7.8.11' is I do this: #+BEGIN_SRC emacs-lisp (load "/Users/cberry/elisp/org-mode-7.8.11/contrib/lisp/org-element.el") (load "/Users/cberry/elisp/org-mode-7.8.11/contrib/lisp/org-export.el") (load "/Users/cberry/elisp/org-mode-7.8.11/contrib/lisp/org-e-latex.el") #+END_SRC to switch over to 7.8.11. In other words, all the babel stuff should be the same, which includes org-export-preprocess-blocks. Right? Could it be that the buffer local version of *org-babel-use-quick-and-dirty-noweb-expansion* got lost?? Chuck