Oege de Moor wrote:
> In the meantime, Julian and Pavel are working round the clock
> to get indexing finished.
It seems we're done. :-)
Indexing is checked into CVS. As it currently stands, you'll need a
commons-collections jar on your classpath if you want to use it (in the
near-ish future we plan to implement our own map and put it in the abc
runtime, so this dependency hopefully won't be there for the next abc
release). It is not used by default; you have to specify -debug
useIndexing to use it.
Another interesting switch is -debug printIndices -- it will dump the TM
state machine to stdout and list the indexing variables chosen for each
state.
If our index-choosing algorithm results in always-empty index lists for
your favourite example, you can give 'hints': After the TM symbol
declarations, you can state "frequent <symbol>;" to make the variables
bound by <symbol> receive preferential treatment.
Some preliminary results:
- Nulltracker is our top beneficiary; the tracematch implementation was
sped up 12-15x. We are now just under 4x slower than pure AspectJ.
- JHotDraw requires a 'frequent call_next;' annotation, but, if that is
given, it runs some 20% faster.
- All tracematch tests in the test suite pass; AJHotDraw animation works.
I will make it my next top priority to gather numbers for the paper. To
this end, I shall be making near-maximal use of cardinal. PLEASE DO NOT
RUN LARGE JOBS ON CARDINAL, or, if you really really have to, please
contact me on IRC before you start them.
Any comments or questions are, of course, welcome.
- P
Received on Tue Mar 07 17:19:45 2006
This archive was generated by hypermail 2.1.8 : Tue Mar 06 2007 - 16:13:27 GMT