[asterisk-commits] murf: branch murf/fast-ast r40887 -
/team/murf/fast-ast/GOALS
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Wed Aug 23 06:49:50 MST 2006
Author: murf
Date: Wed Aug 23 08:49:50 2006
New Revision: 40887
URL: http://svn.digium.com/view/asterisk?rev=40887&view=rev
Log:
My goals for this (possibly inappropriate, unapproved, and unwanted) effort.
Added:
team/murf/fast-ast/GOALS (with props)
Added: team/murf/fast-ast/GOALS
URL: http://svn.digium.com/view/asterisk/team/murf/fast-ast/GOALS?rev=40887&view=auto
==============================================================================
--- team/murf/fast-ast/GOALS (added)
+++ team/murf/fast-ast/GOALS Wed Aug 23 08:49:50 2006
@@ -1,0 +1,18 @@
+Steps to speeding up the Asterisk dialplan engine:
+
+1. A 'formal' parser for ${ } expressions, with a parse-tree representation.
+
+2. See how much of a speedup from hash-table for func/app names.
+
+3. Make sure the $[] parser builds a tree instead of directly evaluating
+ expressions. Build an eval func. use it in the right places to make this
+ change invisible.
+
+3. use the context/extension/priorities to store ptrs to parse trees instead
+ of text where possible. Might not hurt to provide ptrs to apps as well as the
+ app names, to speed lookups there. If we do this, will linear searches of app
+ names be OK? If apps are de-registered, we can erase ALL ptrs in the contexts
+ structs, or, we can traverse the dialplan and remove ptrs associated with the
+ removed app.
+
+4. Profit.
Propchange: team/murf/fast-ast/GOALS
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: team/murf/fast-ast/GOALS
------------------------------------------------------------------------------
svn:keywords = Author Id Date Revision
Propchange: team/murf/fast-ast/GOALS
------------------------------------------------------------------------------
svn:mime-type = text/plain
More information about the asterisk-commits
mailing list