[M3commit] CVS Update: cm3

Rodney M. Bates rodney at elego.de
Sun May 19 23:37:30 CEST 2013


CVSROOT:	/usr/cvs
Changes by:	rodney at birch.	13/05/19 23:37:30

Modified files:
	cm3/m3-libs/m3core/tests/newtext/src/: README Test.m3 
	                                       TextUtils.m3 
	                                       UnsafeUtils.i3 
	                                       UnsafeUtils.m3 

Log message:
	New algorithms for TEXT operations.
	
	There is no change in data structure or its invariants, only new
	algorithms that produce different representations for the same text
	operations.  In many cases, there are significant time and space
	performance increases, expecially when texts are built by
	left-to-right or right-to-left linear concatenation.  Some usage
	patterns suffer moderately.
	
	If you think it's buggy or don't like the performance changes, you can
	disable it at runtime by setting TextClass.Old:=TRUE.  This will use
	all the old cm3 text algorigthms, identical except for small
	constant-time slowdowns due to testing this boolean and gathering raw
	statistics.  There are some tuning parameters in there that you can
	play with too.
	
	You can switch dynamically between old and new alogrithms at any time
	no thread is inside.  You can use the results of either interchangeably.
	
	You can use the test program both to check correctness (by running the
	old and new algorithms side-by-side) and to get lots of performance
	statistics.  Give it "-h" command-line option for info on its options.




More information about the M3commit mailing list