Rainer M Krug writes: > 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" > `---- > Hm - I just realised that despite having this #+BIND: in the file, the variable was not set. I set it manually now, and it is fast again. Shouldn't this BIND set the variable to true? Rainer > execution, tangling and export takes very long (one block about 12 > seconds, of which about 2 seconde=s 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% > `---- -- 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