On 13 Feb 2006, at 15:27, Theodore H. Smith wrote:
1) All strings longer than 40 bytes.
2) Not too many strings. (I'm not sure on the exact number, maybe
around 300,000?)
3) We aren't appending integers as text, or hex as text, or bytes
coming from an integer source, or multiple bytes (like padding a
line with many spaces), as these can be much faster done by
FastString's utility functions.
And then you might only get a 1.26X speed up. Change any one of
those conditions, for example just append 1 byte long lines (!)
containing an LF, to seperate each source data appended, and you'll
see the speed dramatically fall so that FastString is still faster.
http://elfdata.com/plugin/showcase/stringappend2006/
Sorry, the 1.26X number came from appending 100 byte long strings.
When the strings were 40 bytes long, RB was only 1.04X faster, almost
exactly the same.
Most data I'll be appending has many small strings, with a few long
strings. So that totally eradicates join's advantage there. Even if
you only consider a line to be a short string, that already undoes it.
--
http://elfdata.com/plugin/
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>
Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>