From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rainer M Krug Subject: Very slow execution, tangling and export with noweb and quick-and-dirty Date: Tue, 01 Sep 2015 11:47:38 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54591) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWiAT-0007Wp-A5 for emacs-orgmode@gnu.org; Tue, 01 Sep 2015 05:47:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZWiAN-0005yh-UC for emacs-orgmode@gnu.org; Tue, 01 Sep 2015 05:47:53 -0400 Received: from mail-wi0-f178.google.com ([209.85.212.178]:36988) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZWiAN-0005yS-Kf for emacs-orgmode@gnu.org; Tue, 01 Sep 2015 05:47:47 -0400 Received: by wicfx3 with SMTP id fx3so6078594wic.0 for ; Tue, 01 Sep 2015 02:47:45 -0700 (PDT) Received: from Rainers-MacBook-Pro.local (arn78-1-88-186-171-7.fbx.proxad.net. [88.186.171.7]) by smtp.gmail.com with ESMTPSA id bi6sm26320873wjc.25.2015.09.01.02.47.44 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Sep 2015 02:47:44 -0700 (PDT) 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 --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi I have a rather extensive literate programming document with several hundred code blocks. In two subtrees, I use :noweb. Each of these has one noweb block which is located onder the first level header, and used several times in the sub-sections of this tree. But even with the quick-and-dirty option ,---- | #+BIND: org-babel-use-quick-and-dirty-noweb-expansion "t" `---- execution, tangling and export takes very long (one block about 12 seconds, of which about 2 seconde=3Ds max execution time of the code block). Is this a general problem of noweb expansion? How can I make this faster? I really want to use the noweb, because the block is rather dynamic and used several times in the subrtree. Below the report from the profiler. Any suggestions welcome, Rainer ,---- | - command-execute 2024 90% | - call-interactively 2024 90% | - org-ctrl-c-ctrl-c 1966 88% | - run-hook-with-args-until-success 1966 88% | - org-babel-execute-safely-maybe 1966 88% | - org-babel-execute-maybe 1966 88% | - org-babel-execute-src-block-maybe 1966 88% | - org-babel-execute-src-block 1966 88% | - org-babel-expand-noweb-references 1890 84% | - org-babel-get-src-block-info 1884 84% | - org-babel-parse-src-block-match 1680 75% | - org-babel-params-from-properties 1667 74% | - mapcar 1602 71% | - # 1601 71% | - org-entry-get 1598 71% | - org-entry-get-with-inheritance 1576 70% | - byte-code 1575 70% | - org-up-heading-safe 1006 45% | - org-back-to-heading 109 4% | - outline-back-to-heading 56 2% | outline-on-heading-p 7 0% | org-outline-level 61 2% | - org-property--local-values 515 23% | - org-get-property-block 351 15% | - org-back-to-heading 69 3% | - outline-back-to-heading 46 2% | outline-on-heading-p 9 0% | org-before-first-heading-p 45 2% | member-ignore-case 5 0% | + org-entry-properties 2 0% | + org-entry-get 50 2% | + org-babel-parse-header-arguments 11 0% | org-babel-combine-header-arg-lists 1 0% | byte-code 1 0% | + org-babel-parse-header-arguments 5 0% | + apply 4 0% | + org-unescape-code-in-string 2 0% | generate-new-buffer 1 0% | match-string-no-properties 1 0% | + org-babel-generate-file-param 201 9% | + org-babel-where-is-src-block-head 1 0% | + org-babel-ref-goto-headline-id 2 0% | + org-babel-execute:R 58 2% | + org-babel-get-src-block-info 10 0% | + run-hooks 7 0% | + org-babel-insert-result 1 0% | + smex 58 2% | + ... 200 8% | + timer-event-handler 4 0% | + redisplay_internal (C function) 2 0% | + flyspell-post-command-hook 2 0% `---- =2D-=20 Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology,= UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax : +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug PGP: 0x0F52F982 --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2 iQEcBAEBCAAGBQJV5XQ+AAoJENvXNx4PUvmC/8cH/iYdEDU4PfGUc6Pu3KdGxsLI ODqcnzoebmpkg8u6KexASA7ZL6HqVooNXExyioD4sQ38vMJF2c6GOUH6LR5ay26K UG+Z6g3oo5dbg7CxazCyGy8iU+EjFAfmQliPFEV7FoT4xeVurU9CAOgp3Dgr0ARr Qq17adIymIF1AsVz1W4nzuS2ZUQvogvMz4FLAtRDxt4kgqzvzaak9gwuC4hswTyB bB/dSAwCyerTWQdmeJxCNNqYLDUc9pbVAefN52KW7dFt/Cdx09hkBqx+feBOXEEP QIsCi3Kqj0ie8EyCHgMJDKlN3SSFM0cwVA1e4ZITEKkliYhVPzcav6Jt7VpKZXY= =gxK4 -----END PGP SIGNATURE----- --=-=-=--