zend_u_strtod is slow - possible fix
| From: | Matt W | Date: | Mon, 31 Jul 2006 08:58:30 +0000 |
| Subject: | zend_u_strtod is slow - possible fix | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-25072@lists.php.net to get a copy of this message | ||
Hi all,
As I was working on upgrading the dec[bin|hex|oct] functions to convert
large doubles, I noticed how much slower things were when converting Unicode
strings to double. I found that converting the whole thing to string and
using regular zend_strtod() was much faster. Then I decided to try
modifying the u_strtod() function to do the same, but just on the relevant
numeric portion.
I don't know if I did everything right, but it seems to work fine with my
limited testing. (I was working from zend_u_strtol() and
zval_unicode_to_string_ex(). :-)) The function is now about *8 times*
faster, and nearly 20 times faster on a non-numeric string! (I'm on
Windows.)
diff: http://realplain.com/php/zend_u_strtod.diff
Is this something that can be used?
Thanks,
Matt